URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 90795
[ Назад ]

Исходное сообщение
"удаленный порт в локальный сокет"

Отправлено abask , 23-Янв-11 17:47 
Можно ли пробросить удаленный порт в локальный сокет. Желательно готовыми средствами, чтобы не лезть в С

Содержание

Сообщения в этом обсуждении
"удаленный порт в локальный сокет"
Отправлено BarS , 23-Янв-11 18:06 
> Можно ли пробросить удаленный порт в локальный сокет. Желательно готовыми средствами, чтобы
> не лезть в С

ssh firewall и демоны, демоны уже не помню какие


"удаленный порт в локальный сокет"
Отправлено pavel_simple , 23-Янв-11 18:09 
> Можно ли пробросить удаленный порт в локальный сокет. Желательно готовыми средствами, чтобы
> не лезть в С

socat


"удаленный порт в локальный сокет"
Отправлено abask , 28-Янв-11 16:00 
> socat

Удаленный clamd прокидваю в сокет

# socat UNIX-LISTEN:/tmp/test.sock,fork TCP4:192.168.56.3:3310

dansguardian на него ругается "WARNING: Could not perform virus scan!"

может не те парамеры?


"удаленный порт в локальный сокет"
Отправлено abask , 28-Янв-11 17:06 
> может не те парамеры?

добавил разрешений - тоже не работает
socat -d -lf/var/log/socat.log UNIX-LISTEN:/tmp/test.sock,reuseaddr,fork,unlink-early,mode=777,su=nobody,user=clamav,group=clamav TCP4:192.168.56.3:3310


"удаленный порт в локальный сокет"
Отправлено Square , 23-Янв-11 18:10 
> Можно ли пробросить удаленный порт в локальный сокет. Желательно готовыми средствами, чтобы
> не лезть в С

Ну вероятно тоннель... ssh например...


"удаленный порт в локальный сокет"
Отправлено Слоупок , 28-Янв-11 22:41 
Предложу iptables -j REDIRECT

"удаленный порт в локальный сокет"
Отправлено abask , 29-Янв-11 11:34 
> Предложу iptables -j REDIRECT

а поподробней


"удаленный порт в локальный сокет"
Отправлено Слоупок , 30-Янв-11 00:45 
iptables -t nat -A PREROUTING -s 188.16.22.145 -d 16.95.66.114 -p tcp --sport 22541 --dport 11111 -j REDIRECT --to-ports 22


-s Адрес источника
-d Адрес адрестата
-p Тип транспотрного протокола в IP ( это TCP или UDP) --sport порт отправителя --dport порт получателя. sport и dport - это уточнения опции -p и не могут быть использованы без неё. Диапазоны портов так же работают только при использовании опции -p.

-j REDIRECT Заменить в пакетах адрес адресата на адрес интерфейса, на который нам поступили пакеты --to-ports ещё и заменить порт назначения на указанный порт или диапазон портов.

Цель действует только в таблице nat и только в её цепях PREROUTING и OUTPUT, ну и в  пользовательских цепочках, которые вызываются из этих цепей.

Если вам, например, надо чтобы все пакеты, доставляемые от -s по протоколу -p,  летели на ваши собственные порты протокола -p 5555 5556 и 5557, то просто пишите:

iptables -t nat -A POSTROUTING -s 1.1.1.1 -p udp -j REDIRECT --to-ports 5555-5557

Диапазон работает простым круговым переборам для каждого нового пакета. т.е. первый летит на 5555, второй на 5556, третий на 5557, четвёртый на 5555.

Или, например, чтобы абсолютно все пакеты вашего локалхоста летели вам же на локалхост, но на порт 903

iptables -t nat -A OUTPUT -j REDIRECT --to-ports 903

Более подробно ищите в man iptables.