The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Port forwarding извне в локалку"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Port forwarding извне в локалку"  
Сообщение от _mitiay (ok) on 25-Окт-06, 13:15 
Здравствуйте уважаемые гуру! Вопрос по форварду...На сервере с Slackware 11.0 две сетевые-eth0 192.168.0.0/24 смотрит внутрь,eth1 (IP от прова-DHCP)наружу. В локалке есть машина(WinXP) пользующая удаленный helpdesk через pcAnynwere. Чел (удаленный)неможет достучаться,просит форвард порта с сервера на локал.машину-порт 5631 (типа). Каким рулесом это сделать?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Port forwarding извне в локалку"  
Сообщение от GloryS (??) on 25-Окт-06, 13:25 
Почитай man iptables
у тебя должно быть что-то типа
iptables -A FORWARD -p tcp --dport 5631 --addr address_of_winxp -j ACCEPT

>Здравствуйте уважаемые гуру! Вопрос по форварду...На сервере с Slackware 11.0 две сетевые-eth0
>192.168.0.0/24 смотрит внутрь,eth1 (IP от прова-DHCP)наружу. В локалке есть машина(WinXP) пользующая
>удаленный helpdesk через pcAnynwere. Чел (удаленный)неможет достучаться,просит форвард порта с сервера
>на локал.машину-порт 5631 (типа). Каким рулесом это сделать?


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Port forwarding извне в локалку"  
Сообщение от Perece on 25-Окт-06, 16:07 
>Почитай man iptables
>у тебя должно быть что-то типа
>iptables -A FORWARD -p tcp --dport 5631 --addr address_of_winxp -j ACCEPT

нихрена, вопрос о форвардинге входящего из инета в лок. сеть с "серыми" адресами. это NAT

наскока я понял
iptables -t nat -A POSTROUTING -i eth0 -o eth1 -j MASQUERADE
уже присутствует?

простейшее решение:
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 5631 -j DNAT --dnat-to address_of_winxp
грязно тем, что ты не контролируешь dest-адреса пакетов. однако если блока тебе не выделено и стсно у прова нету маршрутов к тебе via address_acquired_via_dhcp, то других ты и не увидишь. если range из которого выделяется адрес известен, то можно подписать -d xx.yy.zz.1-xx.yy.zz.70 (твой range) или -d xx.yy.zz.tt/mask (если круглый и его можно описать маской)
чистое решение - прикручивать скрипт к dhcp, кот. по факту получения адреса добавит правило в файрвол с точным адресом сервера.

>>Здравствуйте уважаемые гуру! Вопрос по форварду...На сервере с Slackware 11.0 две сетевые-eth0
>>192.168.0.0/24 смотрит внутрь,eth1 (IP от прова-DHCP)наружу. В локалке есть машина(WinXP) пользующая
>>удаленный helpdesk через pcAnynwere. Чел (удаленный)неможет достучаться,просит форвард порта с сервера
>>на локал.машину-порт 5631 (типа). Каким рулесом это сделать?

\^P^/

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Port forwarding извне в локалку"  
Сообщение от _mitiay (ok) on 25-Окт-06, 16:44 
>>Почитай man iptables
>>у тебя должно быть что-то типа
>>iptables -A FORWARD -p tcp --dport 5631 --addr address_of_winxp -j ACCEPT
>
>нихрена, вопрос о форвардинге входящего из инета в лок. сеть с "серыми"
>адресами. это NAT
>
>наскока я понял
>iptables -t nat -A POSTROUTING -i eth0 -o eth1 -j MASQUERADE
>уже присутствует?
>
>простейшее решение:
>iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 5631 -j
>DNAT --dnat-to address_of_winxp
>грязно тем, что ты не контролируешь dest-адреса пакетов. однако если блока тебе
>не выделено и стсно у прова нету маршрутов к тебе via
>address_acquired_via_dhcp, то других ты и не увидишь. если range из которого
>выделяется адрес известен, то можно подписать -d xx.yy.zz.1-xx.yy.zz.70 (твой range) или
>-d xx.yy.zz.tt/mask (если круглый и его можно описать маской)
>чистое решение - прикручивать скрипт к dhcp, кот. по факту получения адреса
>добавит правило в файрвол с точным адресом сервера.
>
вот моя строчка вкл.маскарад:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE
IP арендованный(типа он наш, но не статический ). "удаленный" я так понял зная внешний IP стучится на порт 5631 и падает (форвард)на локал.адрес

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Port forwarding извне в локалку"  
Сообщение от Perece on 25-Окт-06, 20:53 
>>простейшее решение:
>>iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 5631 -j
>>DNAT --dnat-to address_of_winxp
>>грязно тем, что ты не контролируешь dest-адреса пакетов. однако если блока тебе
>>не выделено и стсно у прова нету маршрутов к тебе via
>>address_acquired_via_dhcp, то других ты и не увидишь. если range из которого
>>выделяется адрес известен, то можно подписать -d xx.yy.zz.1-xx.yy.zz.70 (твой range) или
>>-d xx.yy.zz.tt/mask (если круглый и его можно описать маской)
>>чистое решение - прикручивать скрипт к dhcp, кот. по факту получения адреса
>>добавит правило в файрвол с точным адресом сервера.
>>
>вот моя строчка вкл.маскарад:
>iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE
>IP арендованный(типа он наш, но не статический ). "удаленный" я так понял
>зная внешний IP стучится на порт 5631 и падает (форвард)на локал.адрес
в какой момент этот "нестатический" адрес становится известен? его dhcpcd получает?
если да, то там кажись скрипт можно прикрутить чтоб пускался по факту получетия адреса и передавал в кач-ве аргумента адрес. тогда из этого скрипта можно буде написать что-то вроде:
iptables -t nat -A PREROUTING -i eth1 -d "$1" -p tcp --dport 5631 -j DNAT --dnat-to address_of_winxp
(эт если в кач-ве $1 передается адрес)
для "чистоты" решения прикручивается скрипт вызываемый из dhcpcd в момент освобождения адреса, который эту строчку удаляет.

или, как вариант:
создать цепочку
iptables -t nat -N DHCPNAT
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 5631 -j DHCPNAT
это при старте машины. а из скрипта вызываемого dhcpcd:
iptables -t nat -F DHCPNAT
iptables -t nat -A DHCPNAT -s "$1" -j DNAT --dnat-to address_of_winxp

но все эти навороты скорее "на всякий случай". в твоем случае других пакетов (dest IP != твоему динамическому) к тебе просто не долетит. поэтому самый простой вариант (изначальный) должен работать.
ну и посмотри на всяк. в фильтрах/мангле, не рубится ли такой трафик полисями или еще чем
\^P^/

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Port forwarding извне в локалку"  
Сообщение от _mitiay (ok) on 27-Окт-06, 14:44 
Спасибо парни!решил проблему просредством "rinetd" "0.0.0.0 5631 192.168.0.x 5631"
Блин все гениальное-просто. Но Ваши ответы помогли с другой залежавшейся задачкой.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру