Автор Гілка: як пропустити ftp через iptables  (Прочитано 1824 раз)

Відсутній vanessa

  • Графоман
  • ****
  • дописів: 468
  • Карма: +0/-0
Щось я незнайду як це зробити.
# iptables -A INPUT --protocol tcp --dport 21 -j ACCEPT
цибвідкривою управляючий порт для ftp віддалені клієнти під'єднуються але далі ділоне йде.
читав щодля цього потрібно ще потрбний параметр в ядрі включити. У мене стоїть
<M> FTP protocol support
і що далі з цим робити ?

Відсутній RomadinR

  • Кореспондент
  • ***
  • дописів: 123
  • Карма: +0/-0
Re: як пропустити ftp через iptables
« Відповідей #1 : 2008-01-30 00:28:27 »
Ну, не погано було б вказати, який сервер використовуєте, перевірити, чи він запущений (як демон чи у xinetd)... Ну, ще логи сервера і протокол клієнта іноді допомагають...

Відсутній vanessa

  • Графоман
  • ****
  • дописів: 468
  • Карма: +0/-0
Re: як пропустити ftp через iptables
« Відповідей #2 : 2008-01-30 09:17:58 »
скажу.  сервер vsftp він точно запущений бо я із ним із локальної мережі можу з'єднатись. а от на інтерфейс ppp0 я навісив в кінець ланцюга INPUT правило
iptables -A INPUT -i ppp0 -m state --state NEW,INVALID -j DROP у кінець лацюга, а що перед цим  правилом - дивись перший пост в цій темі.

все, тему вичерпано. запрацювало після командни
# modprobe nf_nat_ftp
« Змінено: 2008-01-30 09:47:12 від vano_vvv »

Відсутній PAL

  • Графоман
  • ****
  • дописів: 317
  • Карма: +0/-0
  • Just linux admin
Re: як пропустити ftp через iptables
« Відповідей #3 : 2008-02-01 20:42:06 »
У першу чергу мани почитати щодо ftp тре.

А в манах сказано, що активний ftp використовує не один 21й порт. а два - 20 та 21.

А ще є й пасивний режим......

PS. Якщо є можливість скористатися http або sftp - краще ними. Бо ftp - це жахливо для адміна, якщо ftp стоїть за файрволом (а ще гірше - за натом)...

Відсутній bright

  • Новачок
  • *
  • дописів: 6
  • Карма: +0/-0
Re: як пропустити ftp через iptables
« Відповідей #4 : 2008-07-10 23:40:10 »
Вся проблема в тому що встановлення з'єднання йде на 21 порт(керуюче з'єднання), а самі дані йдуть по 20 порт і дані про це йдуть в полі дата ТСР  пакету, а iptables не аналізує дане поле. Саме тому Ви може встановити з'єднання але нічого не можете скачувати. В iptables є допоміжні модулі які дозволяють вирішити дану проблему ip_conntrack_ftp (відслідковувати зєднання) та ip_nat_ftp (для того щоб працював коли використовується NAT) ;)