Конфигурация брандмауэра, написанная system-config-firewall
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
Согласно инструкции, это необычный, но безобидный явный вызов модуля tcp
iptables; этот модуль вызывается неявно, когда указан -p tcp
(протокол TCP), и работает только тогда, когда в любом случае указан -p tcp
, но, очевидно, тот, кто писал генератор правил system-config-firewall, верил в теорию надежности пояса и подвесок.
Из справочной страницы iptables:
-m, --match match
Указывает соответствие для использования, то есть модуль расширения, который проверяет определенное свойство. Набор совпадений составляет условие, при котором вызывается цель. Совпадения оцениваются с начала до последнего, как указано в командной строке, и работают в режиме короткого замыкания, т. Е. Если одно расширение дает значение false, оценка будет остановлена.
В этом случае используется TCP match
.
TCP соответствует
Эти соответствия зависят от протокола и доступны только при работе с TCP-пакетами и потоками. Чтобы использовать эти совпадения, вам нужно указать --protocol tcp
в командной строке, прежде чем пытаться их использовать. Обратите внимание, что --protocol tcp
должно быть слева от совпадений, специфичных для протокола. Эти совпадения загружаются неявным образом, точно так же, как совпадения UDP и ICMP загружаются неявно. Другие совпадения будут рассмотрены в продолжении этого раздела, после раздела соответствия TCP.