LINUX.ORG.RU
ФорумAdmin

illegal PORT command


0

0

при попытке подключиться к внешнему фтп получаю сабж

порты 20 и 21 открыты в инпуте для всех
оутпут разрешен полностью

имхо - все дело в нате, но конкретно не пойму, таблица такая
(eth3 смотрит на дсльный модем, тот к прову и соответственно в инет):

Chain PREROUTING (policy ACCEPT 1805K packets, 240M bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain POSTROUTING (policy ACCEPT 15624 packets, 1205K bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 ACCEPT     all  --  *      eth1    0.0.0.0/0            192.168.3.1
    0     0 ACCEPT     all  --  *      eth0    192.168.3.1          0.0.0.0/0
  316 18960 ACCEPT     all  --  *      eth0    193.138.84.90        0.0.0.0/0
51898 2799K MASQUERADE  all  --  *      eth3    0.0.0.0/0            0.0.0.0/0
    0     0 SNAT       all  --  *      eth0    0.0.0.0/0            213.138.113.2       to:10.20.41.101
    9   532 SNAT       all  --  *      eth0    0.0.0.0/0            193.138.84.254      to:10.20.41.101
89258 9039K SNAT       all  --  *      eth0    0.0.0.0/0            10.0.0.0/8          to:10.20.41.101
    0     0 MASQUERADE  all  --  *      tun1    0.0.0.0/0            0.0.0.0/0
25377 1568K SNAT       all  --  *      eth0    0.0.0.0/0            0.0.0.0/0           to:10.20.41.101

Chain OUTPUT (policy ACCEPT 19363 packets, 4039K bytes)
 pkts bytes target     prot opt in     out     source               destination

сорри с этой машины все работает, не работает на хосте, у которого указана роутером верхняя машинка! на форварде открыто все по портам и по айпишникам!

в чем трабл то?

CombatPenguin
() автор топика
Ответ на: комментарий от CombatPenguin

В ядре linux при компиляции должна быть включена поддержка NAT для ftp (настройка сети, настройка netfilter). Если ядро самостоятельно не компилировалось, а было взято готовым из дистрибутива, то поддрежка этого скорее всего вынесена в модуль.

# modprobe ip_conntrack_ftp

и если модуль загрузился, то все должно заработать.

mky ★★★★★
()

Хотя я не понял зачем так много правил в nat

правила: 
    0     0 SNAT       all  --  *      eth0    0.0.0.0/0            213.138.113.2       to:10.20.41.101
    9   532 SNAT       all  --  *      eth0    0.0.0.0/0            193.138.84.254      to:10.20.41.101
89258 9039K SNAT       all  --  *      eth0    0.0.0.0/0            10.0.0.0/8          to:10.20.41.101

лишине, так как есть 
25377 1568K SNAT       all  --  *      eth0    0.0.0.0/0            0.0.0.0/0           to:10.20.41.101

mky ★★★★★
()
Ответ на: комментарий от mky

># modprobe ip_conntrack_ftp

этот модуль предназначен, afaik, для ftp-сервера, то есть схема такая: закрываем все порты кроме нужных (на сервере), тогда pasv работать не будет, поскольку сервер открывает трансфер на определенном порту и предлагает туда законнектится клиенту, поскольку порт закрыт, клиент законнектится не может, для открытия порта и нужен ip_conntrack_ftp. Если клиент находится за натом, то на его шлюзе должен быть подгружен ip_nat_ftp.

borisych ★★★★★
()

Насколько я понял это отображает загруженные модули: # modprobe -l *ftp* /lib/modules/2.4.22-1.2154.nptl.asp/kernel/net/ipv4/netfilter/ip_nat_tftp.o /lib/modules/2.4.22-1.2154.nptl.asp/kernel/net/ipv4/netfilter/ip_nat_ftp.o /lib/modules/2.4.22-1.2154.nptl.asp/kernel/net/ipv4/netfilter/ip_conntrack_tftp. o /lib/modules/2.4.22-1.2154.nptl.asp/kernel/net/ipv4/netfilter/ip_conntrack_ftp.o

но все равно не арбайтед :(

CombatPenguin
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.