не могу ходить на внешние фтп без пассивного режима.
может, кто ткнет носом в грабли, которые я еще не учел?
таблица nat:
-A POSTROUTING -o eth0 -j SNAT --to-source <external ip>таблица filter:
по умолчанию все DROP
-A FORWARD -p tcp -m tcp ! --tcp-flags SYN,RST,ACK SYN -m state --state NEW -j DROP
-A FORWARD -i eth1 -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
ip_conntrack_ftp, ip_nat_ftp загружены
фишка следующая: при такой схеме все работает до того момента когда мы посылаем фтп-серверу команду PORT. и вот результат:
230 Anonymous user logged in.
ftp> ls
500 Invalid PORT Command.
а ftp-клиент запускаешь на шлюзе или на клиентском компе?
>а ftp-клиент запускаешь на шлюзе или на клиентском компе?
со шлюза все гладко проходит. с клиентами - затык.
>не могу ходить на внешние фтп без пассивного режима.
>может, кто ткнет носом в грабли, которые я еще не учел?
>таблица nat:
>-A POSTROUTING -o eth0 -j SNAT --to-source <external ip>
>
>таблица filter:
>по умолчанию все DROP
>-A FORWARD -p tcp -m tcp ! --tcp-flags SYN,RST,ACK SYN -m state
>--state NEW -j DROP
>-A FORWARD -i eth1 -j ACCEPT
>-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
>ip_conntrack_ftp, ip_nat_ftp загружены
>фишка следующая: при такой схеме все работает до того момента когда мы
>посылаем фтп-серверу команду PORT. и вот результат:
>230 Anonymous user logged in.
>ftp> ls
>500 Invalid PORT Command.А коннект на 20 порт открыт?
>>не могу ходить на внешние фтп без пассивного режима.
>А коннект на 20 порт открыт?
дык а разрешение ESTABLISHED/RELATED на любой порт не пройдет?
я так понимаю, что после команды PORT от клиента сервер устанавливает RELATED-соединение? и, кроме того, PORT сообщает IP и порт, _на_ который будет коннектиться сервак к клиенту _со_своего_ 20 порта.
да и в любом случае - пробовал открывать, в обе стороны. не помогло :(
>>>не могу ходить на внешние фтп без пассивного режима.
>>А коннект на 20 порт открыт?
>дык а разрешение ESTABLISHED/RELATED на любой порт не пройдет?
>я так понимаю, что после команды PORT от клиента сервер устанавливает RELATED-соединение?
>и, кроме того, PORT сообщает IP и порт, _на_ который будет
>коннектиться сервак к клиенту _со_своего_ 20 порта.
>да и в любом случае - пробовал открывать, в обе стороны. не
>помогло :(RELATED - это разрешение на открытие новых соединений в рамках существующего. Нужно для пассивного обмена данными по ftp, а 20 порт - это ftp-data.
modprobe ip_nat_ftp