[Comm] FTP не работает через проброшенный порт. SSH и HTTP работают.

Olvin =?iso-8859-1?q?olvin_=CE=C1_rambler=2Eru?=
Ср Окт 1 16:00:13 MSD 2008


Vitalik Salomatin пишет:
> ALT 4.0 сервер смотрит наружу и имеет внутреннюю сеть. 
> командами 
> #iptables -t nat -A PREROUTING -d 11.11.11.61 -p 
> tcp --destination-port 21 -j DNAT --to-destination 10.0.0.112
> #iptables -t nat -A POSTROUTING -o eth2 -s 10.0.0.122 -j 
> MASQUERADE
> пробрасываю через него 21 порт на 122 машину внутри сети для 
> связи с FTP
> соединяется, принимает пароль, а потом пишет:
> Чтение каталога FTP 
> и виснет 
> 22 порт и 80 пробрасываются удачно.
> Что я еще не сделал?

$CLIENTIP - клиент, который хочет достучаться до внешнего FTP-сервера
$NATSRVIP1 - адрес шлюза, который смотрит в нашу сеть
$NATSRVIP2 - адрес шлюза, который смотрит во внешнюю сеть
$DSTSRVIP - адрес внешнего FTP-сервера

Доступ к удалённому серверу из нашей сети:

$ lftp $NATSRVIP1

Для этого делаем:

modprobe ip_conntrack_ftp
modprobe ip_nat_ftp

iptables -t nat -A PREROUTING -s $CLIENTIP -d $NATSRVIP1 -p tcp --dport 
21 -j DNAT --to-destination $DSTSRVIP
iptables -t nat -A PREROUTING -s $DSTSRVIP -d $NATSRVIP2 -p tcp --sport 
21 -j DNAT --to-destination $CLIENTIP
iptables -t nat -A POSTROUTING -s $CLIENTIP -d $DSTSRVIP -p tcp --dport 
21 -j SNAT --to-source $NATSRVIP2
iptables -t nat -A POSTROUTING -s $DSTSRVIP -d $CLIENTIP -p tcp --sport 
21 -j SNAT --to-source $NATSRVIP1

iptables -A FORWARD -m state --state ESTABLISHED -j ACCEPT
iptables -A FORWARD -m state --state RELATED -j ACCEPT

iptables -A FORWARD -s $CLIENTIP -d $DSTSRVIP -p tcp --dport 21 -j ACCEPT

Работает.



Подробная информация о списке рассылки community