LINUX.ORG.RU
ФорумAdmin

мой ftp и iptables


0

0

Ситуация такая:
есть RedHat8-это шлюз для нашей локальной сетки. вся остальная сеть - windows. на вин-машине установлен ftp. (servU кажеца) на RH8 iptables настроены так что порты 20 и 21 пропускаеться во всех цепочках и ещё такое правило
iptables -t nat -A PREROUTING -p TCP -m multiport --dport 20,21 -i ppp0 -j DNAT --to-destination x.x.x.x

Чего-то не хочет пускать на мой ftp :((
если я правильно понял, то клиент соединяеться но не может получить список файлов с ftp.
и ещё похоже что у ftp плавающие порты, потому и iptables незнаю как настроить...
P.S. если открыть ВСЕ порты, то всё работает - проверял. буду ООЧЕНЬ признателен за помощь!

anonymous

Без редиректа непривилигированных портов (1024-65535) у тебя ничего не получится. Так как помимо входящего запроса на 21 порт имеется еще и канал данных, который и в нормальном, и в пассивном режиме на стороне сервера использует непривилигированные порты (поэтому редиректить 22 порт вообще не имеет смысла).

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

> который и в нормальном, и в пассивном режиме на стороне сервера использует непривилигированные порты
Нет, в активном режиме - это TCP порт 20.

spirit ★★★★★
()

# modprobe ip_nat_ftp

# iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 21 -j DNAT --to-destination x.x.x.x
# iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# iptables -A FORWARD -i ppp0 -d x.x.x.x -p tcp --dport 21 -m state --state NEW -j ACCEPT

Будет работать и активный, и пассивный FTP.

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

> Не обязательно.
Да ? Значит читать здесь: http://slacksite.com/other/ftp.html

> Будет работать и активный, и пассивный FTP.
Не будет, т.к. ответные пакеты от сервера к клиенту пройдут (исходя из ваших правил) через шлюз без изменения адреса отправителя на адрес ppp0 интерфейса шлюза.
К ним нужно еще добавить такое:
iptables -t nat -A POSTROUTING -s x.x.x.x -o ppp0 -m state --state ESTABLISHED,RELATED -j MASQUERADE

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

> Да ? Значит читать здесь: http://slacksite.com/other/ftp.html

Во-1, slacksite - это организация, занимающаяся стандартизацией? ;)

Во-2, расскажи, как клиент ftp, запущенный из-под обычного (не-root) пользователя сможет слушать 20-ый порт.

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

1 - нет, просто там лежит manual для тех, кто пока не знает как работает FTP
2 - где вы видели слово "клиент" ??? Читаем еще раз: "канал данных, который и в нормальном, и в пассивном режиме на стороне СЕРВЕРА использует непривилигированные порты". Т.е. утверждали, что "и в нормальном" (стало быть активном) режиме _СЕРВЕР_ использует случайные порты > 1023, я сказал, что это не так.

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

значит так!
устанавливаю Serv-U с настройками по дефолту, на любую машину из LAN. добавляю в фаервол на шлюзе правила
iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 21 -j DNAT --to-destination x.x.x.x
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i ppp0 -d x.x.x.x -p tcp --dport 21 -m state --state NEW -j ACCEPT
без четвёртого правила (MASQUERADE) всё работает, вот распечатка с удалённой машины:
[root@kras /]# ftp A.A.A.A
Connected to A.A.A.A.
220 Serv-U FTP Server v6.0 for WinSock ready...
500 'AUTH': command not understood.
500 'AUTH': command not understood.
KERBEROS_V4 rejected as an authentication type
Name (A.A.A.A:root): anonymous
331 User name okay, please send complete E-mail address as password.
Password:
230 User logged in, proceed.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (A,A,A,A,5,100)
150 Opening ASCII mode data connection for /bin/ls.
drw-rw-rw- 1 user group 0 Apr 1 13:13 .
drw-rw-rw- 1 user group 0 Apr 1 13:13 ..
drw-rw-rw- 1 user group 0 Apr 27 10:38 Futurama
drw-rw-rw- 1 user group 0 May 26 15:17 Sin city
drw-rw-rw- 1 user group 0 May 30 16:04 _nonVideo
226 Transfer complete.
ftp>
запрещал на Serv-U переход в режим Passive - тож работает.
всем СПАСИБО!

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