Jede Regel wird in der Form bedingungen
-j aktion
aktions_optionen
dargestellt. Werden mehrere Bedingungen in derselben Regel angegeben, dann ist das Kriterium die Verknüpfung (das logische und) der Bedingungen, die wenigstens so restriktiv ist wie jede einzelne Bedingung.
Die Bedingung -p protokoll
vergleicht das Protokollfeld des IP-Pakets. Die häufigsten Werte sind tcp
, udp
, icmp
und icmpv6
. Ein vorangestelltes Ausrufezeichen kehrt die Bedingung um, die dann dem Ausdruck „alle Pakete mit einem anderen als dem angegebenen Protokoll“ entspricht. Dieser Umkehrungsmechanismus ist nicht auf die Option -p
beschränkt, sondern kann auch auf alle anderen Bedingungen angewendet werden.
Die Bedingung -s adresse
oder -s network/mask
vergleicht die Quelladresse des Pakets. Dementsprechend vergleicht die Bedingung -d adresse
oder -d network/mask
die Zieladresse.
Die Bedingung -i schnittstelle
wählt Pakete, die von der angegebenen Netzwerkschnittstelle kommen. -o schnittstelle
wählt Pakete, die von einer bestimmten Schnittstelle abgehen.
Es gibt genauere Bedingungen in Abhängigkeit von den oben beschriebenen allgemeinen Bedingungen. So kann zum Beispiel die Bedingung -p tcp
um Bedingungen für die TCP-Ports ergänzt werden durch Ausdrücke wie --source-port port
und --destination-port port
.
Die Bedingung --state status
vergleicht den Status eines Pakets in einer Verbindung (hierbei ist das Kernelmodul ipt_conntrack
zur Verbindungsverfolgung erforderlich). Der Status NEW
bezeichnet ein Paket, das eine neue Verbindung eröffnet; ESTABLISHED
gilt für Pakete, die zu einer bereits bestehenden Verbindung gehören, und RELATED
entspricht Paketen, die eine neue Verbindung im Zusammenhang mit einer bestehenden eröffnen (dies ist nützlich für die ftp-data
-Verbindungen im „aktiven“ Modus des FTP-Protokolls).
Der vorstehende Abschnitt führt verfügbare Aktionen auf, aber nicht ihre jeweiligen Optionen. Die Aktion LOG
hat zum Beispiel folgende Optionen:
--log-priority
, mit dem voreingestellten Wert warning
, gibt die Priorität der syslog
-Meldung an;
--log-prefix
ermöglicht es, einen Text-Vorspann festzulegen, um protokollierte Meldungen unterscheiden zu können;
--log-tcp-sequence
, --log-tcp-options
und --log-ip-options
kennzeichnen zusätzliche Daten zur Einbindung in die Meldung, und zwar die TCP-Sequenznummer, die TCP-Optionen und die IP-Optionen.
Die Aktion DNAT
(nur für IPv4 verfügbar) bietet die Option --to-destination addresse
:port
an, mit der die neue IP-Zieladresse und der neue Zielport gekennzeichnet werden. Genauso bietet SNAT
die Option --to-source addresse
:port
an, mit der die neue IP-Quelladresse und der neue Quellport gekennzeichnet werden.
Die Aktion REDIRECT
(nur für IPv4 verfügbar) bietet die Option --to-ports port(s)
an, mit der der Port oder der Portbereich gekennzeichnet werden, an den die Pakete umgelenkt werden sollen.