Я экспериментирую с IPT (iptables) в Xubuntu.
Первые эксперименты позволили бы разрешить весь OUTPUT-трафик и заблокировать все INPUT, кроме уже существующих TCP-соединений, может кто-нибудь проверить, правильны ли они Я пытаюсь разрешить все TCP соединения с активными сервисами на моей рабочей станции. Моя идея состоит в том, чтобы выполнить сканирование nmap и выполнить grep для прослушивания / открытия портов, но я, вероятно, слишком много думаю об этом.
Наконец я пытаюсь разрешить FTP.
Я использовал это дополнительное правило, чтобы разрешить FTP, но, похоже, я все еще заблокирован
sudo iptables -A INPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
FTP немного нечетен в том смысле, что разрешает входящий трафик через порт 21 и исходящий трафик через порт 20:
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 20 -j ACCEPT
Кроме того, ftp будет использовать случайный более высокий порт. Для этого вам нужно загрузить модуль ip_conntrack_ftp при загрузке. Раскомментируйте и измените строку IPTABLES_MODULES в файле / etc / sysconfig / iptables-config, чтобы прочитать
IPTABLES_MODULES="ip_conntrack_ftp"
. Вам все равно понадобится способ сохранить конфигурацию iptables и восстановить ее при загрузке. У Ubuntu нет простого способа сделать это. В основном вы можете использовать /etc/rc.local
или отключить NetworkManager и использовать сетевые сценарии.
Сначала сохраните свои правила:
sudo iptables-save /etc/iptables.save
Метод 1: отредактируйте /etc/rc.local
и добавьте строку
iptables-restore /etc/iptables.save
Метод 2: отредактируйте /etc/network/interfaces
и используйте «post-up» «чтобы поднять наши правила iptables.
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
post-up /sbin/iptables-restore /etc/iptables.save
Затем перезагрузите.
Вероятно, предпочтительным методом является использование UFW
sudo ufw allow ftp
UFW - это инструмент fedault для Ubuntu, использует синтаксис, очень похожий на iptables, и включается и восстанавливается при перезагрузке.
См .:
https://serverfault.com/questions/38398/allowing-ftp-with-iptables
http: // slacksite .com / other / ftp.html
Если вы новичок в iptables, вы можете использовать gufw или ufw для первоначальной настройки правил. Вы можете использовать такие простые правила, как «разрешить входящий ftp», вместо того, чтобы понимать все специальные флаги, чтобы он работал. Они также позволят вам настроить расширенные правила, если вам нужно.
Как ufw, так и gufw создают правила iptables за кулисами.