Какова основная логика построения закрытого фаервола?
Объясните логику, к примеру, хотим иметь доступ к машине только через ssh:
*filter
:INPUT DROP
:FORWARD DROP
:OUTPUT ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
COMMIT
Будет ли этот набор правил iptables достаточным и оптимальным? Задаю вопрос, потому что не раз встречал наборы правил, где помимо «все запрещено, разрешено только нужное» режутся всякие инвалидные пакеты, и прочее прочее. Не могу понят зачем это нужно.