Добрый день.Помогите пожалуйста решить следующую пролему:
Установил SuSE 11.1, настроил с помощью SuSEfirewall через yast маршрутизацию.
(Оговорюсь что стоит прокси сервер SQUID)
С машин локальной сети не могу зайти на определенные ftp сервера.
При подключении принимается пароль имя пользователя, но когда начинает читать список каталогов и файлов зависает, после чего разрывает подключение и пробует подключаться повторно.
Пробовал ставить пассивный режим подключения - не помогает, только показывает пустой каталог, при том что там есть папки.
Пробовал заходить с самого NAT сервера, выдает:Статус: Соединяюсь с <IP сервера>:21...
Статус: Соединение установлено, ожидание приглашения...
Ответ: 220 Xlight FTP Server 2.8 çàïóùåí...
Команда: USER user
Ответ: 331 Òðåáóåòñÿ ïàðîëü user
Команда: PASS ********
Ответ: 230 Âõîä â ñèñòåìó âûïîëíåí óñïåøíî
Статус: Соединено
Статус: Получение списка каталогов...
Команда: PWD
Ответ: 257 "/"
Команда: TYPE I
Ответ: 200 Type set to I.
Команда: PORT 90,188,252,158,193,93
Ответ: 200 êîìàíäà PORT âûïîëíåíà óñïåøíî
Команда: LIST
Ответ: 150 Îòêðûòèå ASCII ðåæèìà ïåðåäà÷è äàííûõ /bin/ls (220 áàéò).
Ошибка: Превышено время ожидания соединения
Ошибка: Не могу получить список каталогов!Подскажите что смотреть что читать.
Заранее благодарен.
>[оверквотинг удален]
>Ответ: 200 Type set to I.
>Команда: PORT 90,188,252,158,193,93
>Ответ: 200 êîìàíäà PORT âûïîëíåíà óñïåøíî
>Команда: LIST
>Ответ: 150 Îòêðûòèå ASCII ðåæèìà ïåðåäà÷è äàííûõ /bin/ls (220 áàéò).
>Ошибка: Превышено время ожидания соединения
>Ошибка: Не могу получить список каталогов!
>
>Подскажите что смотреть что читать.
>Заранее благодарен.правильно всё.. активный-ftp не работает с NAT и firewall [без определённых извращений]
проблема решается ПРИНЦИПИАЛЬНО:
1. firewall -- это вообще излишне. нужно только на венде
2. NAT -- это неотъемлемая часть старого ipv4-протокола..
нужно использовать ipv6
(с владельцу ftp-сервера скажите чтобы предоставил ipv6-адреса от своего ftp :-) )
>проблема решается ПРИНЦИПИАЛЬНО:
>
>1. firewall -- это вообще излишне. нужно только на вендеДело в том, что при тестировании я пробовал отключать блокирование портов на внешнем интерфейсе (через конфиг SuSEfirewall2) не помогло, да и в логах писалось что всё проходит ( подкинули идею настроить ROUTE, как вариант).
>
>2. NAT -- это неотъемлемая часть старого ipv4-протокола..
>нужно использовать ipv6NAT нужен так как сервер - это шлюз, через который пользователи в инет, с помощью squid-а.
Скажу чесно я ещё не работал с ipv6.
Каким образом он позволяет пользователям локальной сети от имени одного статического IP v4 выходить в интернет и в частности подключаться к FTP серверу банка (пропускающего именно это IP v4).>(с владельцу ftp-сервера скажите чтобы предоставил ipv6-адреса от своего ftp :-) )
>Дело в том, что FTP сервер, к которому я обращаюсь - это сервер банка, через него идет обмен файлами. Сомневаюсь что они возьмут и перейдут на ipv6 по моей, просьбе.
Думаю проще будет попросить их включить PASSIVE режим.
lsmod | grep nat в студию!
>lsmod | grep nat в студию!Вот, результаты:
iptable_nat 5908 1
nf_nat 19544 2 ipt_MASQUERADE,iptable_nat
nf_conntrack_ipv4 10480 28 iptable_nat,nf_nat
nf_conntrack 67400 7 ipt_MASQUERADE,iptable_nat,nf_nat,xt_NOTRACK,xt_state,nf_conntrack_netbios_ns,nf_conntrack_ipv4
ip_tables 11348 3 iptable_nat,iptable_raw,iptable_filter
x_tables 14500 12 ipt_MASQUERADE,xt_pkttype,xt_TCPMSS,xt_tcpudp,ipt_LOG,xt_limit,iptable_nat,xt_NOTRACK,ipt_REJECT,xt_state,ip_tables,ip6_tables
попробуйте вот это
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
незнаю как в сусе но в редхадопадобных решаеться вроде так и еще добавьте /sbin/modprobe ip_nat_pptp это для оргранизации впн связи через ваш шлюз мож пригодиться в будущем.
Помогло!!!Добавил в конфиг SuSEfirewall2 в параметр FW_LOAD_MODULES
nf_nat_ftp и nf_conntrack_ftp
Получилось:
FW_LOAD_MODULES="nf_conntrack_netbios_ns nf_nat_ftp nf_conntrack_ftp"Теперь работает.
PS: sonkilla, подскажите как вышли на такое решение. Хотелось бы знать, ведь не всегда есть те, кто знают.
Очень Благодарен.
изучение документации, это обязаность профи ;)
как было сказано выше действительно изучение документации это обязанность админа и именно это занятие даёт знания.почитайте http://www.opennet.me/docs/RUS/iptables/ очень хорошая дока.Рад был помочь.
Именно про эту доку я и спрашивал.Большое спасибо.