LinuxForum.Fans
Тема

Проброс порта

Автор: veres 6 сообщений 6045 просмотров
#187622

Помогите еще плиз. Нужно пробросить порт 9800 снаружи на машину (192.168.0.36) на порт 4899

rl0 - инет (ip статический 193.43.х.х)
rl1 - локалка (192.168.0.1/24)

/etc/rc.conf

[console]firewall_enable="YES"
firewall_type="/etc/ipfw"[/console]

Содержание /etc/ipfw

[console]# Разрешаем весь трафик по локальной сети
add 1040 allow ip from any to any via rl1

# Запрещаем частные сети на внешнем интерфейса
add 1050 deny log ip from any to 192.168.0.0/16 in recv rl0
add 1060 deny log ip from 192.168.0.0/16 to any in recv rl0
add 1070 deny log ip from any to 172.16.0.0/12 in recv rl0
add 1080 deny log ip from 172.16.0.0/12 to any in recv rl0
add 1090 deny log ip from any to 10.0.0.0/8 in recv rl0
add 10100 deny log ip from 10.0.0.0/8 to any in recv rl0
add 10110 deny log ip from any to 169.254.0.0/16 in recv rl0
add 10120 deny log ip from 169.254.0.0/16 to any in recv rl0

# VPN-connect - это порт для даемона MPD, на него поступают запросы на авториза
add 10130 allow tcp from any to me 1723 setup
# GRE for MPD5 - в этот протокол инкапсулируются все пакеты
# установившегося соединения VPN
add 10140 allow gre from any to any
# VPN-LAN
add 10150 allow tcp from any to any via ng*
add 10160 allow udp from any to any via ng*

# Открываем порты
# SSH
add 10170 allow tcp from any to me 22 in via rl0
# Incoming Pings
add 10180 allow icmp from any to me icmptypes 8 in recv rl0
# Почта, 25
add 10190 allow tcp from any to me dst-port 25 setup
#add 10200 allow tcp from any to me dst-port 110 setup
# WEB
add 10210 allow tcp from any to me dst-port 80 setup
# Настройка NAT
nat 1 config log if rl0 reset same_ports deny_in
add 10220 nat 1 ip from any to any via rl0

#Deny all
add 65534 deny log all from any to any[/console]

как пробросить порт? Читал что все используют natd но можно же и без него вроде как? Средствами только ipfw

#187737

redirect_port proto targetIP:targetPORT[-targetPORT]
[aliasIP:]aliasPORT[-aliasPORT]
[remoteIP[:remotePORT[-remotePORT]]]

Параметр предписывает проводить перенаправление входящих соединений
поступающих на указанный номер порта(ов), на другой хост и порт(ы).
Аргумент "proto" может устанавливаться либо как tcp, либо как udp.
Аргумент "targetIP" указывает IP адрес на который должна происходить
пересылка трафика, а аргумент "targetPORT" порт (или диапазон портов)
на который будет перенаправлен трафик.
Аргумент "aliasIP" указывает IP адрес на который будут поступать
входящие соединения, а аргумент "aliasPORT" указывает номер порта
(или диапазон портов) на которые будут поступать входящие соединения.
Аргумены "remoteIP" и "remotePORT" при необходимости могут быть
использованы для более точного указания того какие именно входящие
соединения необходимо обрабатывать указанным правилом, устанавливая
соотвествие с удаленным источником/назначением трафика.
Если аргумент "remotePORT" не указан, то подразумевается, что
имеются в виду номера всех портов.

Аргументы targetIP, aliasIP и remoteIP могут указываться как в
виде IP адресов, так и в виде имен хостов. Аргументы targetPORT,
aliasPORT и remotePORT указывающие диапазоны портов, не обязательно
должны полностью совпадать по начальным и конечным значениям
диапазонов, но обязаны иметь одинаковый размер диапазонов.
Когда арументы targetPORT, aliasPORT или remotePORT указывают
на единственный порт (не диапазон), то их значения могут указываться
как имена соответвующих сервисов перечисленных в services(5).

Примеры:

redirect_port tcp inside1:telnet 6666

это означает, что входящие TCP пакеты направляемые на порт
6666 данной машины будут перенаправленны на порт 23 (telnet)
машины с именем inside1

redirect_port tcp inside2:2300-2399 3300-3399

это означает перенаправление входящих соединений поступающих на
диапазон портов 3300-3399 на машину с именем inside2, в диапазон
портов 2300-2399. В данном случае произойдет сопоставление
портов 1:1 - это значит, что порт 3300 будет перенаправляться
в 2300, порт 3301 в 2301 и так далее.

Примеры:

redirect_port tcp 192.168.0.1:80 500

redirect_port tcp 192.168.0.1:80,192.168.0.10:22 500

redirect_port tcp 192.168.1.2:20-25 70-75

redirect_port tcp 192.168.0.1:80 1.2.3.4:500 5.6.7.8:1024

from: http://www.lissyara.su/articles/freebsd/tuning/ipfw_nat/

#187766

если просто написать redirect_port то ipfw ругается на такой синтаксис
пишу nat 2 config 193.43.х.х:9800 192.168.0.36:4899
не работает

#187770

еще написал так
nat 2 config redirect_port tcp 192.168.0.36:4899 193.43.х.х:9800

тоже не работает

#187802

redirect_port proto tcp 192.168.0.36:4899 193.43.х.х:9800
или
redirect_port proto tcp 192.168.0.36:4899 9800
портранж включи...

#187843

ага... нужно в одну строку писать :)

nat 1 config log if rl0 reset same_ports deny_in redirect_port tcp 192.168.0.36:4899 193.43.х.х:9800

Войдите или зарегистрируйтесь, чтобы ответить.