LINUX.ORG.RU

Сообщения zhukovia

 

Проброс порта внешнего интерфейса во внутренней сети

Помогите с настройкой firewall, никак не могу понять где затык. Задача такая. Есть локальная сеть которая смотрит наружу через firewall. Внешний адрес 8.2.15.2, внешний интерфейс firewall eth0, внутренняя сеть 192.168.1.0/24, внутренний интерфейс firewall eth1 В сети есть Апач сервер, извне настроен проброс порти с firewall на Апач, примерно так

-A PREROUTING -i eth0 -p tcp --dport 81 -j DNAT --to-destination 192.168.1.22:80

и все прекрасно работает извне.

Нужно сделать возможность получать доступ к Апач серверу из внутренней сети по адресу 8.2.15.2:81. Написал вот такое правило

-A PREROUTING -i eth1 -p tcp -d 8.2.15.2 --dport 81 -j DNAT --to-destination 192.168.1.22:80

Но ничего не работает.

В чем может быть проблемма? Что я упускаю?

 ,

zhukovia
()

Настройка firewall из LuCI в OpenWRT и куча цепочек

Никак не могу разобраться как работает firewall при настройке из LuCI в OpenWRT. Создаю правило блокирующее входящий трафик на порт, на выходе iptables -S получаю следующее

-N zone_rdp_ip_dest_REJECT
-A zone_wan_forward -d 1.1.2.3/32 -p tcp -m tcp --dport 339 -m comment --comment "!fw3: rdp_ipp_d" -j zone_rdp_ip_dest_REJECT

Вопрос в том что мне непонятно что тут насоздавалось. Почему при создании зоны создается не одна цепочка rdp_ip, а куча zone_rdp_ip_forward, zone_rdp_ip_input, zone_rdp_ip_dest_REJECT и т.п.? Зачем нужна цепочка zone_rdp_ip_dest_REJECT которая пустая и как вообще будет блокироваться трафик? Может конечно _REJECT в конце названия цепочки будет автоматом отбрасывать пакеты, но я чего-то про такое не читал.

 , , ,

zhukovia
()

OpenWrt: пропуск внешнего трафика только по белому списку

Есть роутер Asus r-16 на OpenWrt. Надо пропускать внешний трафик на порт 3389 только с определенных ip. Перерыл кучу статей в инете и нифига не получается, не понимаю, куда и какие правила пихать?

Ранее делал это вручную типа такого

-A rdp_ip -s 7*.1**.1.1/32 -j ACCEPT 
-A rdp_ip -j DROP 

но OpenWrt для простой зоны создает кучу дополнительных зон и непонятно что с ними делать. К тому же белые адреса находятся в файле, а скрипт из него в цикле клепал правила. Здесь надо будет руками к каждому прописывать или можно автоматом?

 , ,

zhukovia
()

Не происходит размонтирование шар pam_mount

Установлен alt-p10-server-systemd + freeipa (на другой машине). ipa-client настроен и работает, пользователи freeipa server-a могут подключаться.Так же настроил монтирование дисков через pam_mount, но есть проблемы.

  1. При выходе пользователя из Xfce не отсоединяются шары, но подключаются нормально.
  2. Если заходить по SSH то шары не подключаются. В чем может быть причина? Или может быть есть альтернатива pam_mount? Мне нужно чтобы у пользователей при входе подключались Самба шары, а при выходе отключались. При этом у разных пользователей (и групп) разный набор шар (у некоторых вообще нет). Я нашел autofs и systemd_mount, но не нашел у них возможность разделять по пользователям и группам. Может плохо смотрел?

Вот немного конфигов. Скажите что ещё надо. pam_mount.conf.xml

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE pam_mount SYSTEM "pam_mount.conf.xml.dtd">
<!--
<------>See pam_mount.conf(5) for a description.
-->
<pam_mount>
<------><------><!-- debug should come before everything else,
<------><------>since this file is still processed in a single pass
<------><------>from top-to-bottom -->

<debug enable="1" />

<------><------><!-- Volume definitions -->

<------><volume fstype="cifs" server="192.168.101.253" path="general" mountpoint="~/net_files/general" options="noexec,iocharset=utf8,rw,ssh=1" />

<------><------><!-- pam_mount parameters: General tunables -->

<!--
<luserconf name=".pam_mount.conf.xml" />
-->

<!-- Note that commenting out mntoptions will give you the defaults.
     You will need to explicitly initialize it with the empty string
     to reset the defaults to nothing. -->
<mntoptions allow="nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other,sec" />
<!--
<mntoptions deny="suid,dev" />
<mntoptions allow="*" />
<mntoptions deny="*" />
-->
<mntoptions require="nosuid,nodev" />

<!-- requires ofl from hxtools to be present -->
<logout wait="0" hup="no" term="no" kill="no" />
<------><------><!-- pam_mount parameters: Volume-related -->
<mkmountpoint enable="1" remove="true" />
</pam_mount>

system-auth

password<------>[success=4 perm_denied=ignore default=die]<---->pam_localuser.so
password<------>[success=1 default=bad]>pam_succeed_if.so uid >= 500 quiet
password<------>[default=1]<--->pam_permit.so
password<------>substack<------>system-auth-sss-only
password<------>[default=1]<--->pam_permit.so
password<------>substack<------>system-auth-local-only
password<------>substack<------>system-auth-common

session><------>[success=4 perm_denied=ignore default=die]<---->pam_localuser.so
session><------>[success=1 default=bad]>pam_succeed_if.so uid >= 500 quiet
session><------>[default=1]<--->pam_permit.so
session><------>substack<------>system-auth-sss-only
session><------>[default=1]<--->pam_permit.so
session><------>substack<------>system-auth-local-only
session><------>substack<------>system-auth-common

/etc/pam.d/system-auth-sss-only

auth           required     pam_sss.so
auth           optional     pam_mount.so
account       required    pam_sss.so
password     required    pam_sss.so
session        required    pam_sss.so
session        optional    pam_mount.so

И ещё, в альтах нет пакета ofl, поэтому эти опции, не работают

<logout wait="0" hup="no" term="no" kill="no" />

У меня, так же, есть настроенная Ubuntu, в которой все прекрасно работает, подключается и отключается и в иксах и SSH. Но никак не могу понять где искать отличия в конфигах. К тому же не подключение в SSH, не объясняет не отключение в Иксах. Я заметил небольшое отличие в логах отключения сессии в Ubuntu и Altlinux. В Altlinux после непосредственно выхода пользователя через 10 сек запускается еще процесс Stopping User Manager for UID. Т.е. ещё 10 сек висят процессы от имени пользователя. Может они не дают размонтировать, но где смотреть не знаю. В самом начале отключения в логах следующее

авг 28 17:40:20 test.sibpush.local xrdp-sesman[5076]: [INFO ] Calling auth_stop_session and auth_end from pid 5076
авг 28 17:40:20 test.sibpush.local xrdp-sesman[5076]: (pam_mount.c:706): received order to close things
авг 28 17:40:20 test.sibpush.local xrdp-sesman[5076]: (pam_mount.c:706): received order to close things
авг 28 17:40:20 test.sibpush.local xrdp-sesman[5076]: command: '/usr/sbin/pmvarrun' '-u' 'zhukovia' '-o' '-1'
авг 28 17:40:20 test.sibpush.local xrdp-sesman[5076]: command: '/usr/sbin/pmvarrun' '-u' 'zhukovia' '-o' '-1'
авг 28 17:40:20 test.sibpush.local xrdp-sesman[5429]: (pmvarrun.c:254): parsed count value 6
авг 28 17:40:20 test.sibpush.local xrdp-sesman[5076]: (pam_mount.c:441): pmvarrun says login count is 5
авг 28 17:40:20 test.sibpush.local xrdp-sesman[5076]: (pam_mount.c:441): pmvarrun says login count is 5
авг 28 17:40:20 test.sibpush.local xrdp-sesman[5076]: (pam_mount.c:734): zhukovia seems to have other remaining open sessions
авг 28 17:40:20 test.sibpush.local xrdp-sesman[5076]: (pam_mount.c:734): zhukovia seems to have other remaining open sessions

 , ,

zhukovia
()

Pidgin не видит список собеседников в bonjur

Имеется Ubuntu 20.04 с установленным на нем xrdp сервером, пытаюсь настроить Pidgin по протоколу bonjour между клиентами подключенными через xrdp. Все настраивается и работает, но возникает одна проблема если выйти из клиента Pidgin, а потом снова в него зайти то этот пользователь исчезает из списков собеседников у других пользователей и его список становится пустым. Чтобы он появился в списках, нужно у него в клиенте отключить его учетную запись и потом включить. Тогда он появляется в списках и его список тоже заполняется. И так с каждым клиентом.

  1. Как это поправить?
  2. И еще в статусе клиента постоянно висит «Ожидание сетевого соединения». Так и должно быть?

 , , ,

zhukovia
()

Подмена адреса источника в SIP пакетах

Есть проблема. Есть маленькая локальная сеть на входе стоит роутер на linux, в этой сети стоит Цифровая АТС panasonic. К этой АТС можно подключать SIP телефоны ТОЛЬКО из подсети АТС. Мне требуется подключать телефон из любой сети (с сотового из приложения).

Вопрос. Можно ли и как сделать прозрачную подмену адреса (ОТ и К) АТС?

Если я правильно понимаю, то нужно при поступлении пакета от телефона (из интернета) реальный ip заменить на внутри сетевой (192.168.101.181), а при поступлении пакета от АТС к подменному (192.168.101.181) заменить его на реальный внешний. Смотрел в сторону POSTROUTING, но чего то либо недопонимаю либо делаю неверно.

-A POSTROUTING ! -s 192.168.101.250 -p tcp --dport 5060 -o eth1 -j SNAT --to-source 192.168.101.181

192.168.101.250 - адрес АТС
192.168.101.181 - подменный адрес телефона
eth1 - интерфейс в подсеть с АТС

 , ,

zhukovia
()

запустить приложение в Wine из Docker

Подскажите кто знает есть ли смысл стараться.

Есть:

Ubuntu 20.04 установлено XFCE4 и Xrdp. Работаю через RDP.

Нужно:

Запускать 32 битную Windows программу (на русском) которая работает с COM1 портом (это весы Масса-К). Но запускать через контейнер Docker! Программа прекрасно запускается если Wine поставить на Ubuntu и все работает. Но ставить Wine я не хочу, т.к. при установке он тянет за собой почтb 1,5 гб всякой фигни. Вот и возникла идея поставить Docker и в нем запускать эту программу.

Но не получается сделать все красиво. что получилось:

  1. Установил контейнер отсюда https://github.com/scottyhardy/docker-wine
  2. Моя программа запускается только с самого сервера, а по RDP пишет
0010:err:ole:marshal_object couldn't get IPSFactory buffer for interface {6d5140c1-7436-11ce-8034-00aa006009fa}
0010:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
0010:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, 80004002
0010:err:ole:get_local_server_stream Failed: 80004002
0012:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
0012:err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
  1. Даже при запуске на сервере нет русского языка, а только крокозяблы
  2. Не знаю можно ли пробросить COM порт, локально то просто ссылку делаешь, а в контейнере можно такое провернуть?

Во общем вопрос. Можно ли сделать подобную «связку» RDP+COMпорт-Docker-Wine-Приложение win32?

 , ,

zhukovia
()

Не могу подключить bluetooth сканер к Ubuntu 20.04

Никак не могу подключить сканер штрихкода к Ubuntu 20.04. Подключаю через USB донгл, он в системе определяется и работает, телефон через него подключается и работает, сканер обнаруживается pairing получается сделать, а вот подключить не выходит. подключается и тут же отваливается. В blueman-applet пишет Coinnection failed: failed to get rfcomm chanel.

Сканер работает через виртуальный COM порт, а портов никаких нет ls /dev/rf* дает только /dev/rfkill. Раньше порты настраивались через файл /etc/bluetooth/rfcomm.conf, но теперь как я понял этот функционал выпелен и как теперь все это настраивать я решительно не представляю. В настройках апплета ничего по этому поводу нет.

Подскажите куда копать, а то уже 2 день на месте топчусь и не могу сдвинутся с места. Если что то ещё посмотреть то напишите.

Если запускать «руками» rfcomm connect hci0 00:20:E0:7F:43:0A 1 то все подключается и порт создается.

Сделал костыль для временного решения проблемы: Не могу подключить bluetooth сканер к Ubuntu 20.04 (комментарий)

 , , , ,

zhukovia
()

Возможно ли на regexp perl удалить определенное число байтов из строки?

Есть строка текста в которой в произвольном месте может содержаться «мусорный» текст который нужно вычистить. У «мусора» следующие параметры он оканчивается на \x00\x00 (в hex представлении), а в начале \xE3\x33 но при этом он не всегда находится в самом начале иногда перед ним бывает 1 или 2 символа. При этом длинна «мусорной» строки всегда 70 байт. Встречается «мусор» произвольное число раз.

Возможно ли на Perl составить такое регулярное выражение или два три выражения которое удаляло бы ненужное?

 ,

zhukovia
()

Эмуляция COM-порта у сканера-штрихкода bluetooth в Linux

Имеется сканер-штрихкода подключенный к USB свистку в CentOS 6.10.
В Windows для подключения этого сканера к 1С используется эмуляция COM-порта. Т.е. подключаем сканер через специальную программу, которая как я понимаю пробрасывает данные с подключенного к «свистку» по bluetooth сканера на созданный этой програмкой COM-порт и обратно, а 1С уже работает с данным COM-портом.

Вопрос такой. Как подобное сделать в Linux?
Сканер по bluetooth подключается.

"Частичное" решение проблемы полученное общими усильями (за что Всем огромное спасибо):

Эмуляция COM-порта у сканера-штрихкода bluetooth в Linux (комментарий)

 , , , ,

zhukovia
()

«Сбой сопряжения» bluetooth сканера штрихкода в CentOs 6.10

Пытаюсь подключить сканер штрих кода к CentOS 6.10, но ничего не выходит.
Что сделано:
1. Установлен bluez 4.66 из yum.
2. «Свисток» определяется в системе

[root@server]# lsusb
Bus 001 Device 007: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
3. Сам сканер сканируется
[root@lserver]# hcitool scan
Scanning ...
        00:20:E0:7F:43:0A       SF51 Scanner 0020e07f430a
4. Пингуется
[root@lserver]# l2ping 00:20:e0:7f:43:0a
Ping: 00:20:e0:7f:43:0a from 00:0A:3A:5B:41:2E (data size 44) ...
44 bytes from 00:20:e0:7f:43:0a id 0 time 37.80ms
44 bytes from 00:20:e0:7f:43:0a id 1 time 35.47ms
...
5. «sdptool browse» выводит во такое. Там вроде должно быть больше информации
[root@lserver]# sdptool browse 00:20:e0:7f:43:0a
Browsing 00:20:E0:7F:43:0A ...
Но при попытке соединится происходит «облом»
[root@lserver]# hcitool cc 00:20:e0:7f:43:0a
Can't create connection: Input/output error
Пробовал соединится из Gnoma но тоже ничего не выходит, пишет

«Сбой сопряжения»

Подскажите куда копать?
Может это версия bluez старая и поэтому не работает? Правда собирать из исходников не очень хочется, т.к. там походу зависимостей куча и с моей версией CentOS 6.10 это будет тот ещё «квест».

 , ,

zhukovia
()

Проблема с правами на SHARE FOLDER

Имеем Samba 4.5.0 установленную на CentOS 6.9 и Windows Server 2016. Windows работает в качестве домена (PDC), а Samba4 в качестве 2 контроллера домена. Пользователей и группы видно wbinfo и id. На шары пользователи заходят. Но при создании нового файла Samba почему то в качестве владельца вместо пользователя сует группу BUILTIN\администраторы. 1. В чем может быть причина такого поведения?

# Global parameters
[global]
	netbios name = SAMBA_SERVER
	realm = TEST.LOC
	workgroup = TEST
	server services = -dns -dnsupdate
	interfaces = eth1 eth2
	winbind use default domain = yes
	load printers = No
	server role = active directory domain controller
	username map = /opt/samba/etc/user.map
	ntlm auth = yes
	idmap_ldb:use rfc2307 = yes
	idmap config *: backend = tdb 
	idmap config *: range = 3000-7999

[homes]
	comment = User home directory
	path = /test/pcdirs/users/
	read only = No
	create mask = 0640
	directory mask = 0750
	browseable = No

[install]
	path = /test/pcdirs/install
	force group = test.loc\_disk_install
	write list = test.loc\test
	admin users = test.loc\test

[general]
	comment = Office documents
	force group = test.loc\_disk_general
	path = /test/pcdirs/office
	read only = No
	create mask = 0666
	directory mask = 0777

2. И еще не могу менять разрешения из проводника Windows Свойства/Безопасность (Отказанно в доступе), а такая функция вроде бы должна быть. Как это поправить?

 , , , ,

zhukovia
()

RSS подписка на новые темы