Проброс портов для фтп. Need Help

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
RaDiST_1977
мл. сержант
Сообщения: 86
Зарегистрирован: 2006-10-31 12:04:36
Откуда: Зеленоград

Проброс портов для фтп. Need Help

Непрочитанное сообщение RaDiST_1977 » 2008-01-04 23:03:37

Доброго времени суток
Есть одна проблема, суть ее в следующем: необходимо вывести во внешний мир фтп сервак из локалки путем проброса портов через нат на шлюзе
На шлюзе - ось miniBSD 4.10(обрезанная фряха, грузится с CF карты), ipfw+natd
дело в том, что убив кучу времени и сил, мне вышеуказанную проблему разрешить так и не удалось, порты как были закрыты снаружи так закрытыми и остались, следовательно достучпаться до фтп невозможно...
Поиском по форуму пользовался, все что нашел пробовал, но непомогло...
привожу конфиг фаера со шлюза, может кто подскажет, где в нем косяк

Код: Выделить всё

#!/bin/sh
###################################################################
fw="  /sbin/ipfw -q  "
natd=" /sbin/natd "
ifout="  rl0  "
ifuser=" rl1 "
intranet=" 192.168.0.0/24  "
extip=" xx.xx.xx.xx "
loop="  lo0  "
ftp_ports="  21,49152-65535  "
ftpaddr=" 192.168.0.2 "
##################################################################
${fw} -f flush
${fw} -f pipe flush
${fw} -f queue flush
##################################################################
${fw} add 100 check-state
${fw} add 150 allow ip from any to any via ${loop}
${fw} add 200 allow ip from me to any keep-state
${fw} add 240 allow icmp from any to me icmptypes 0,8,11
#################################################################
#SSH
${fw} add 270 allow tcp from any to me 22 via ${ifuser}

#NAT
killall -9 natd
${natd} -m -s -u -n ${ifout} -p 8668
${natd} -m -s -u -n ${ifout} -p 8669 -redirect_port tcp ${ftpaddr}:21 21 -redirect_port tcp ${ftpaddr}:49152-65535 49152-65535 #собственно проброс портов для #фтп(passive mode)
${fw} add 310 divert 8869 ip from ${extip} to ${ftpaddr}  in via ${ifout}
${fw} add 320 divert 8869 ip from ${ftpaddr} to ${extip} out via ${ifout}
${fw} add 330 divert 8868 ip from ${intranet} to any out via ${ifout}
${fw} add 340 divert 8668 ip from any to ${extip} in via ${ifout}
#
#
#Разрешающие правила дла фтп
${fw} add 350 allow tcp from any to ${ftpaddr} 21 via ${ifout}
${fw} add 360 allow tcp from any to ${ftpaddr} 49152-65535 via ${ifout}
#
#Local Intranet
${fw} add 350 allow ip from any to ${intranet} in via ${ifout}
${fw} add 360 allow ip from any to ${intranet} out via ${ifuser}
${fw} add 370 allow ip from ${intranet} to any in via ${ifuser}
${fw} add 380 allow ip from ${extip} to any out via ${ifout}

Траффик из локалки в инет и обратно ходит без проблем, а вот с фтп - полный гемор :cry:
Последний раз редактировалось RaDiST_1977 2008-01-07 15:46:50, всего редактировалось 2 раза.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35092
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Проброс портов для фтп. Need Help

Непрочитанное сообщение Alex Keda » 2008-01-05 0:02:14

а какими правилами пакетики рубялся - смотрел?
Убей их всех! Бог потом рассортирует...

Аватара пользователя
RaDiST_1977
мл. сержант
Сообщения: 86
Зарегистрирован: 2006-10-31 12:04:36
Откуда: Зеленоград

Re: Проброс портов для фтп. Need Help

Непрочитанное сообщение RaDiST_1977 » 2008-01-05 0:20:54

lissyara писал(а):а какими правилами пакетики рубялся - смотрел?
тк у меня фаер закрыт по умолчанию - последним
65535 deny ip from any to any
кстати по правилам для фтп ни одного пакета не проходит

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35092
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Проброс портов для фтп. Need Help

Непрочитанное сообщение Alex Keda » 2008-01-05 0:37:26

все дени замени на дени лог
Убей их всех! Бог потом рассортирует...

Аватара пользователя
RaDiST_1977
мл. сержант
Сообщения: 86
Зарегистрирован: 2006-10-31 12:04:36
Откуда: Зеленоград

Re: Проброс портов для фтп. Need Help

Непрочитанное сообщение RaDiST_1977 » 2008-01-05 0:47:42

lissyara писал(а):все дени замени на дени лог
а ето возможно, если фаер был так вкомпилен в ядро, закрытым по умолчанию, и запрещающее правило у меня одно?
я пробовал также создавать отдельный диверт для фтпшного айпишника и располагать разрешаюшие правила для него до правил с дивертами - не помогло

AzureZ
мл. сержант
Сообщения: 124
Зарегистрирован: 2007-11-06 17:07:27
Откуда: Москва

Re: Проброс портов для фтп. Need Help

Непрочитанное сообщение AzureZ » 2008-01-05 0:56:07

Или я чтото не понял
ifout это внешняя карта?
Если да, то в правилах которые ниже не должно быть вместо ${ftpaddr} стоять ${ifout} (Точнее внешний ип)

Код: Выделить всё

${fw} add 350 allow tcp from any to ${ftpaddr} 21 via ${ifout}
${fw} add 360 allow tcp from any to ${ftpaddr} 49152-65535 via ${ifout}

Аватара пользователя
RaDiST_1977
мл. сержант
Сообщения: 86
Зарегистрирован: 2006-10-31 12:04:36
Откуда: Зеленоград

Re: Проброс портов для фтп. Need Help

Непрочитанное сообщение RaDiST_1977 » 2008-01-05 1:19:18

AzureZ писал(а):Или я чтото не понял
ifout это внешняя карта?
да
Если да, то в правилах которые ниже не должно быть вместо ${ftpaddr} стоять ${ifout} (Точнее внешний ип)

Код: Выделить всё

${fw} add 350 allow tcp from any to ${ftpaddr} 21 via ${ifout}
${fw} add 360 allow tcp from any to ${ftpaddr} 49152-65535 via ${ifout}
а вот с етого места поподробней, пожалуйста
те заменить в переменной ${ftpaddr} внутренний ип сервака на адрес внешней сетевухи, я правильно понял?

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35092
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Проброс портов для фтп. Need Help

Непрочитанное сообщение Alex Keda » 2008-01-05 9:16:04

запрещающее - последнее?
от передни и добавь такое же но с лог.
==========
думаю, логгирование там всё равно есть - хотя и уразали небось по максимуму
посомтри в sysctl - там точно сказано про это, и про лимит логгирования. МОжет оказаться слишком маленьким
Убей их всех! Бог потом рассортирует...

AzureZ
мл. сержант
Сообщения: 124
Зарегистрирован: 2007-11-06 17:07:27
Откуда: Москва

Re: Проброс портов для фтп. Need Help

Непрочитанное сообщение AzureZ » 2008-01-05 22:10:23

RaDiST_1977 писал(а):
AzureZ писал(а):Или я чтото не понял
ifout это внешняя карта?
да
Если да, то в правилах которые ниже не должно быть вместо ${ftpaddr} стоять ${ifout} (Точнее внешний ип)

Код: Выделить всё

${fw} add 350 allow tcp from any to ${ftpaddr} 21 via ${ifout}
${fw} add 360 allow tcp from any to ${ftpaddr} 49152-65535 via ${ifout}
а вот с етого места поподробней, пожалуйста
те заменить в переменной ${ftpaddr} внутренний ип сервака на адрес внешней сетевухи, я правильно понял?
Именно. А то по этим правилам получается, что разрешается соединение по 21 порту на ип фтп(внутренний) который находится на внешнем интерфейсе.

Аватара пользователя
RaDiST_1977
мл. сержант
Сообщения: 86
Зарегистрирован: 2006-10-31 12:04:36
Откуда: Зеленоград

Re: Проброс портов для фтп. Need Help

Непрочитанное сообщение RaDiST_1977 » 2008-01-07 15:48:43

была небольшая неточность в приведенном мною конфиге, на самом деле секция ната выглядит так:

Код: Выделить всё

#NAT
killall -9 natd
${natd} -m -s -u -n ${ifout} -p 8668
${natd} -m -s -u -n ${ifout} -p 8669 -redirect_port tcp ${ftpaddr}:21 21 -redirect_port tcp ${ftpaddr}:49152-65535 49152-65535 #собственно проброс портов для #фтп(passive mode)
${fw} add 310 divert 8869 ip from ${extip} to ${ftpaddr}  in via ${ifout}
${fw} add 320 divert 8869 ip from ${ftpaddr} to ${extip} out via ${ifout}
${fw} add 330 divert 8868 ip from ${intranet} to any out via ${ifout}
${fw} add 340 divert 8668 ip from any to ${extip} in via ${ifout}
Так правильно?