Прошу помощи, чтобы оценить безопасность и правильность настройки моего iptables. Нужно настроить по принципу: «Запрещено все, кроме необходимого минимума». Есть ли косяки?
Полное содержание файла /etc/sysconfig/iptables:
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [5881:2975599]
# Открываем нестандартный порт для SSH:
-A INPUT -p tcp --dport 25243 -j ACCEPT
# Разрешаем localhost и локалку:
-A INPUT -i lo -j ACCEPT
-A INPUT -d 127.0.0.0/8 -j REJECT
# Блокируем некоторые виды атак:
-A INPUT -p tcp ! --syn -m state --state NEW -j DROP
-A INPUT -p tcp --tcp-flags ALL NONE -j DROP
-A INPUT -p tcp --tcp-flags ALL ALL -j DROP
# Разрешаем установленные входящие соединения:
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Открываем порты для вебсервера:
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 443 -j ACCEPT
# Разрешаем NTP соединения:
-A INPUT -p udp --dport 123 -j ACCEPT
# Разрешаем DNS запросы:
-A INPUT -p udp --dport 53 -j ACCEPT
-A INPUT -p tcp --dport 53 -j ACCEPT
# Разрешаем пинги:
-A INPUT -p icmp --icmp-type echo-request -j ACCEPT
# Разрешаем соединения OpenVPN
-A INPUT -p tcp -m tcp --dport 1194 -j ACCEPT
# Разрешаем использовать прокси Squid только с определенных адресов
-A INPUT -s 10.0.144.6/32 -p tcp -m tcp --dport 3128 -j ACCEPT
-A INPUT -s 10.0.144.8/32 -p tcp -m tcp --dport 3128 -j ACCEPT
-A INPUT -s 10.0.144.10/32 -p tcp -m tcp --dport 3128 -j ACCEPT
-A INPUT -s 10.0.144.12/32 -p tcp -m tcp --dport 3128 -j ACCEPT
# Запрещаем все, что не разрешено:
-P INPUT DROP
-P OUTPUT ACCEPT
-P FORWARD DROP
COMMIT