Страница 1 из 1

FTP за ipfw

Добавлено: 2008-02-23 18:49:20
diversunt
Вопрос такой стоит фря шлюзом на ней поднят ipfw , за фрей стоит машинка с фтп сервером необходимо пользователям получать данные с фтп...
я так понимаю надо прокидывать порты с шлюза на локальную машину поэтому сделал так
rc.conf

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

#----------NATD-------------
natd_enable="YES"
natd_interface="vr0"
natd_flags="-f /etc/natd.conf"
natd_program="/sbin/natd"
natd.conf

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

same_ports yes
use_sockets yes

redirect_port tcp 192.168.0.6:21 21
firewall.conf

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

#!/bin/sh
ipfw -f flush
oif="vr0"
iif="em0"
oip="x.y.z.w"
iip="192.168.0.1"


#Хождение через loopbask
ipfw add 10 allow all from any to any via lo0

# этоб блок так и не работает
#ipfw add 11 fwd 192.168.0.1,8080 tcp from 192.168.0.0/24 to any 80
#
#ipfw add 12 fwd 127.0.0.1,8080 tcp from 192.168.0.0/24 to any 80
#
#ipfw add 13 fwd 192.168.0.5,80 tcp from 192.168.0.0/24 to 192.168.0.1 8088
#

#Указание порта на котором висит НАТ
ipfw add 20 divert natd all from any to any via $oif

#------------------------ПРокидка портов--------------------------

#Проброс фтп
ipfw add 30 allow tcp from any to 192.168.0.6 21 in recv $oif
ipfw add 30 allow tcp from any to 192.168.0.6 21 out via $iif
.........
После данных манипуляций до фтп конектишся, заходишь туда, проверка пароля проходит, но папки внутрении не видно!!!
На скока понял, по 21 порту передается тока управляющая информация, а остальное по динамически открываемым портам в ответ...
Еще вроде как если использовать "пассивный режим" то данные в обратку будут передоваться через 20 порт. В связи с чем вопрос я так понимаю обратное соединение надо прокидывать из внутренеей подсетки до реального ай-пишника али как????
Предполагаю, что надо добавить что то типа этого:

firewall.conf

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

#!/bin/sh
ipfw -f flush
oif="vr0"
iif="em0"
oip="x.y.z.w"
iip="192.168.0.1"

#Хождение через loopbask
ipfw add 10 allow all from any to any via lo0

# этоб блок так и не работает
#ipfw add 11 fwd 192.168.0.1,8080 tcp from 192.168.0.0/24 to any 80
#
#ipfw add 12 fwd 127.0.0.1,8080 tcp from 192.168.0.0/24 to any 80
#
#ipfw add 13 fwd 192.168.0.5,80 tcp from 192.168.0.0/24 to 192.168.0.1 8088
#

#Указание порта на котором висит НАТ
ipfw add 20 divert natd all from any to any via $oif

#------------------------ПРокидка портов--------------------------

#Проброс фтп
ipfw add 30 allow tcp from any to 192.168.0.6 21 in recv $oif
ipfw add 30 allow tcp from any to 192.168.0.6 21 out via $iif
ipfw add 30 allow tcp from  192.168.0.6 20 to any in recv $iif
ipfw add 30 allow tcp from  192.168.0.6 20 to any out via $oif

.........
а вот natd.conf не понятно

[/code]

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

same_ports yes
use_sockets yes

redirect_port tcp 192.168.0.6:21 21
redirect_port tcp (to any):20 192.168.0.6:20
ВОТ to any как записать???

Re: FTP за ipfw

Добавлено: 2009-03-09 1:49:00
Alex Keda
не проще открыть диапазон портов который юзается для этого?