Назад | Перейти на главную страницу

Справка по правилам брандмауэра PF

У меня чертовски много времени на создание набора правил pf для FTP.

Я пытаюсь сделать следующее:

Разрешить только $ WHITELIST подключаться к FTP-порту 21

Открытые порты 49152-65535 для диапазона пассивных портов

Кто-нибудь может мне с этим помочь?

Я пытался :

FTPWHITELIST = "локальный хост, XX.XX.XX.XX"

быстро передать протокол TCP $ EXT_IF из {$ FTPWHITELIST} в XX.XX.XX.XX порт 21 сохранить состояние

быстро передать $ EXT_IF proto tcp от {$ FTPWHITELIST} к XX.XX.XX.XX порт 49512> <65535 сохранить состояние

Вы пробовали то, что упомянуто в FAQ:

http://www.openbsd.org/faq/pf/ftp.html

FTP - довольно запутанный алгоритм, который развивался на протяжении десятилетий (он был создан в 1971 году), а брандмауэры (и даже TCP / IP) еще не изобретены, поэтому заставить его работать может быть проблематично.

Постарайтесь убедиться, что вы используете «пассивный» режим на своих клиентах.

Если возможно, попробуйте использовать HTTP / S или SFTP (SSH FTP), если это возможно. Они оба намного чище и современнее.

Чтобы разрешить только $ FTP WHITELIST, вам необходимо заблокировать весь остальной трафик до:

# WARNING! DO NOT use this snippet on production until you completely understand it
block in on $EXT_IF
pass in quick on $EXT_IF proto tcp from { $FTPWHITELIST } to XXX port 21 keep state
...