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

Исходное сообщение
"FreeBSD проброс нестандартных портов"

Отправлено synapse , 03-Сен-13 01:11 
имеется FreeBSD 9.1 + Ipnat + Ipfw
три машины в локальной сети

цель - попадать на эти три машины по RDP с мира

проблема - попадать на все три машины по RDP, но ввиду того что порт один и тот же 3389, то пытаюсь с мира сделать другой порт для каждой машины

попытался реализовать при помощи Ipnat:
rdr rl0 внешний_айпи/32 port 12345 -> 192.168.18.44 port 3389 tcp
при таком раскладе не пускает

если же сделать стандартно:
rdr rl0 внешний_айпи/32 port 3389 -> 192.168.18.44 port 3389 tcp
то вхожу нормально, но думаю если так прописать все три машины, то будет конфликт

настройки Ipfw пока для теста - все+всем - firewall_type="OPEN"

попробовал три сторонние проги - redir, bounce и rinetd
но с ними у меня тоже не получилось, только порт на порт (3389 на 3389)

подскажите как можно реализовать мою задачу
либо при помощи Ipnat + Ipfw, либо подскажите сторонний софт который умеет это делать

заранее благодарю за помощь.


Содержание

Сообщения в этом обсуждении
"FreeBSD проброс нестандартных портов"
Отправлено Сергей , 03-Сен-13 08:22 
Я, конечно не в тему, но не проще ли поднять VPN на фришке(mpd, openvpn) и к тому же защищеннее будет...



"FreeBSD проброс нестандартных портов"
Отправлено qwertykma , 03-Сен-13 09:54 
Я скорее соглашусь с советом про openVPN, но ежели хотите просто то в rc.conf пропишите:
natd_flags="-redirect_port tcp 192.168.0.200:3389 60000"
и получите редирект порта 3389 по tcp с ай-пи 192.168.0.200 на внешний порт 60000


"FreeBSD проброс нестандартных портов"
Отправлено Ajavrik , 03-Сен-13 10:34 
Попробуйте так:
rdr rl0 внешний_айпи/32 port = 12345 -> 192.168.18.44 port 3389 tcp

>[оверквотинг удален]
> то вхожу нормально, но думаю если так прописать все три машины, то
> будет конфликт
> настройки Ipfw пока для теста - все+всем - firewall_type="OPEN"
> попробовал три сторонние проги - redir, bounce и rinetd
> но с ними у меня тоже не получилось, только порт на порт
> (3389 на 3389)
> подскажите как можно реализовать мою задачу
> либо при помощи Ipnat + Ipfw, либо подскажите сторонний софт который умеет
> это делать
> заранее благодарю за помощь.


"FreeBSD проброс нестандартных портов"
Отправлено synapse , 03-Сен-13 18:29 
> Попробуйте так:
> rdr rl0 внешний_айпи/32 port = 12345 -> 192.168.18.44 port 3389 tcp

syntax error error at "=", line 4


"FreeBSD проброс нестандартных портов"
Отправлено hizel , 03-Сен-13 13:49 
У rdp порт прибит гвоздями. Клиент rdp умеет у вас в другой порт, то?

"FreeBSD проброс нестандартных портов"
Отправлено jaged , 03-Сен-13 14:01 
> У rdp порт прибит гвоздями. Клиент rdp умеет у вас в другой
> порт, то?

не прибит? порт рдп можно менять на винде, как и в клиенте ip:port в mstsc


"FreeBSD проброс нестандартных портов"
Отправлено jaged , 03-Сен-13 14:02 
> имеется FreeBSD 9.1 + Ipnat + Ipfw
> три машины в локальной сети
> цель - попадать на эти три машины по RDP с мира
> проблема - попадать на все три машины по RDP, но ввиду того
> что порт один и тот же 3389, то пытаюсь с мира
> сделать другой порт для каждой машины
> заранее благодарю за помощь.

поменяй на машинах рдп порт, пусть висит на 3389 3390 3391


"FreeBSD проброс нестандартных портов"
Отправлено synapse , 03-Сен-13 18:31 
> поменяй на машинах рдп порт, пусть висит на 3389 3390 3391

по поводу смены РДП портов конечно мысль хорошая, но я как бы надеялся научиться прокидывать любой порт, не буду же я постоянно править порты, особенно на железе где они мертво прикручены, так что лучше как-то научиться обходить данное действие


"FreeBSD проброс нестандартных портов"
Отправлено jaged , 04-Сен-13 10:27 
>> поменяй на машинах рдп порт, пусть висит на 3389 3390 3391
> по поводу смены РДП портов конечно мысль хорошая, но я как бы
> надеялся научиться прокидывать любой порт, не буду же я постоянно править
> порты, особенно на железе где они мертво прикручены, так что лучше
> как-то научиться обходить данное действие

вообще не встречал умных систем которые бы не умели пробрасывать порт хххх на другой хост с портом yyyy , даже Керио это может делать... не говоря уже о фряхе... думаю вам подойдет обычный проброс порта внутрь с указанием после адреса через двоеточие номера нужного порта...


"FreeBSD проброс нестандартных портов"
Отправлено synapse , 04-Сен-13 22:36 
> вообще не встречал умных систем которые бы не умели пробрасывать порт хххх
> на другой хост с портом yyyy , даже Керио это может
> делать... не говоря уже о фряхе... думаю вам подойдет обычный проброс
> порта внутрь с указанием после адреса через двоеточие номера нужного порта...

а можно по точнее, лучше с примером, о чем идет речь, не совсем понял честно говоря



"FreeBSD проброс нестандартных портов"
Отправлено jaged , 05-Сен-13 09:02 
>> вообще не встречал умных систем которые бы не умели пробрасывать порт хххх
>> на другой хост с портом yyyy , даже Керио это может
>> делать... не говоря уже о фряхе... думаю вам подойдет обычный проброс
>> порта внутрь с указанием после адреса через двоеточие номера нужного порта...
> а можно по точнее, лучше с примером, о чем идет речь, не
> совсем понял честно говоря

http://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/netwo...

28.8.4. Перенаправление портов
Минусом использования natd(8) является то, что машины в локальной сети недоступны из Интернет. Клиенты в ЛВС могут выполнять исходящие соединения во внешний мир, но не могут обслуживать входящие. Это является проблемой при запуске служб Интернет на клиентских машинах в локальной сети. Простым решением является перенаправление некоторых портов Интернет машины с natd на клиента локальной сети.

Пусть, к примеру, сервер IRC запущен на клиенте A, а Web-сервер работает на клиенте B. Чтобы это работало, соединения, принимаемые на портах 6667 (IRC) и 80 (Web), должны перенаправляться на соответствующие машины.

Программе natd(8) должна быть передана команда -redirect_port с соответствующими параметрами. Синтаксис следующий:

     -redirect_port proto targetIP:targetPORT[-targetPORT]
                 [aliasIP:]aliasPORT[-aliasPORT]
                 [remoteIP[:remotePORT[-remotePORT]]]
В примере выше аргументы должен быть такими:

    -redirect_port tcp 192.168.0.2:6667 6667
    -redirect_port tcp 192.168.0.3:80 80
При этом будут перенаправлены соответствующие порты tcp на клиентские машины в локальной сети.

Аргумент -redirect_port может использоваться для указания диапазонов портов, а не конкретного порта. Например, tcp 192.168.0.2:2000-3000 2000-3000 будет перенаправлять все соединения, принимаемые на портах от 2000 до 3000, на порты от 2000 до 3000 клиента A.

Эти параметры можно указать при непосредственном запуске natd(8), поместить их в параметр natd_flags="" файла /etc/rc.conf, либо передать через конфигурационный файл.

Для получение информации о других параметрах настройки обратитесь к справочной странице по natd(8)


грубо говоря  -redirect_port tcp 192.168.0.2:3389 3389
-redirect_port tcp 192.168.0.3:3389 3390
-redirect_port tcp 192.168.0.4:3389 3391


"FreeBSD проброс нестандартных портов"
Отправлено YuryD , 05-Сен-13 14:43 
> а можно по точнее, лучше с примером, о чем идет речь, не
> совсем понял честно говоря

в портах лежит jumpgate. Пробрасывает tcp с любого порта внешнего ip на любой порт внутренних ip


"FreeBSD проброс нестандартных портов"
Отправлено synapse , 20-Сен-13 18:57 
>> а можно по точнее, лучше с примером, о чем идет речь, не
>> совсем понял честно говоря
>  в портах лежит jumpgate. Пробрасывает tcp с любого порта внешнего ip
> на любой порт внутренних ip

разобрался, получилось при помощи rinetd
всем спасибо кто пытался помочь
тему можно закрыть