LINUX.ORG.RU
решено ФорумAdmin

iptables пассивные порты

 , ,


0

2

Доброго времени суток всем! Есть одна маленькая проблема. У меня на гипервизоре Debian стоит 2 фтп виртуальных сервера. один принимает по порту 2323 другой по 2121. Когда захожу через клиента FileZilla на первый заходит, на второй выходит ошибка

Сервер отправил пассивный ответ с неопределяемым адресом. Использую существующий адрес сервера.
Команда:	MLSD
Ошибка:	Соединение передачи данных не может быть установлено: ECONNREFUSED - Соединение отклонено сервером

в гипервизоре в iptables указал так:

#ftp 2121
-A PREROUTING -d xxx.xxx.xxx.xxx/32 -p tcp -m tcp --dport 2121 -j DNAT --to-destination 192.168.0.12:21
-A POSTROUTING -d 192.168.0.12/32 -p tcp -m tcp --dport 2121 -j SNAT --to-source xxx.xxx.xxx.xxx
#ftp 2323
-A PREROUTING -d xxx.xxx.xxx.xxx/32 -p tcp -m tcp --dport 2323 -j DNAT --to-destination 192.168.0.11:23
-A POSTROUTING -d 192.168.0.11/32 -p tcp -m tcp --dport 2323 -j SNAT --to-source xxx.xxx.xxx.xxx

-A PREROUTING -p tcp -m tcp -d xxx.xxx.xxx.xxx/32 --dport 49152:65534 -j ACCEPT

Я думаю что последняя строчка в IPTABLES не правильно. как сделать так чтобы пассивные отправлялись

Тебе по идее нужно подгрузить nf_conntrack_ftp и nf_nat_ftp. Система тогда сама разберется с пробросом нужных портов. Только не уверен, будет ли оно работать с нестандартными портами ftp. Еще должны быть разрешены входящие RELATED-соединения на шлюзе.

Можно еще разделить диапазон портов между двумя серверами и прописать перенаправление трафика для каждого диапазона.

Radjah ★★★★★
()
Последнее исправление: Radjah (всего исправлений: 1)

Какие пассивные диапазоны у каждого фтп? Они оба попадают в указанный в последнем правиле промежуток 49152:65534?

Dimarius
()

Сделай так ftp 2323 -A PREROUTING -d xxx.xxx.xxx.xxx/32 -p tcp -m tcp --dport 2323 -j DNAT --to-destination 192.168.0.11:21 -A POSTROUTING -d 192.168.0.11/32 -p tcp -m tcp --dport 2323 -j SNAT --to-source xxx.xxx.xxx.xxx

Ты изменял пороты по умолчантю для сервиса FTP ? порт по умолчанию 20, 21 TCP

rootmaster
()

А у вас на 192.168.0.11 ftp точно на 23 порту висит? Локально проверяли?

-A PREROUTING -p tcp -m tcp -d xxx.xxx.xxx.xxx/32 --dport 49152:65534 -j ACCEPT

Вообще не понял откуда вы цифру 49152 взяли? И собственно зачем это правило?

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

Для пассивного режима фтп это правило нужно, в активном режиме достаточно и одного порта. Похоже, что диапазон второго фтп не попадает в указанный в правиле.

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

Все равно не понятно. Причем здесь PREROUTING и откуда взята цифра 49152. Еще одна странность на которую только что обратил внимание во всех правилах не указаны таблицы.

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

Раз у него первый фтп работает в пассиве, значит правила в таблице nat и с этим проблем нет. Пассивный диапазон выбирается как хочешь, хочешь 1000-2000, хочешь 49152-ххххх, что пропишешь в конфиге фтп сервера, то и будет ;)

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

Раз у него первый фтп работает в пассиве, значит правила в таблице nat

Ну если про это как раз можно догадаться, то последнее правило для меня все еще загадка. :)

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

нет, на одном сервере стоит u-serv, у него пассивный порт автоматически назначается 49152-49201. А в другом сервере proftp Я туда назначил пассивные порты от 49152-65534 ручками

millionaire_kg
() автор топика

Решено, пассивные порты разделил на 2 с 49152-49201 в один фтп сервер пробросил, 49300-65534 на второй пробросил. спасибо всем за помощь и подсказку

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

Вообще они и так должны были как related отрабатывать без всякого проброса. См. первый пост iptables пассивные порты (комментарий)
правда я тут же согласен с Radjah, в части что не уверен как оно с нестандартным портом ftp отрабатывает (код nf_nat_ftp не смотрел). Кстати а зачем вы второй ftp на 23-й порт повесили?

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

Ну и хорошо, а зачем так много портов для второго фтп 49300-65534? Обычно сотни хватает с лихвой.

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