多くのIptablesルールにはこれ-m
または--match
オプションが含まれています。例えば
-I INPUT -p tcp -m state --state NEW -m limit --limit 30/minute --limit-burst 5 -j ACCEPT
-A INPUT -p udp -m conntrack --ctstate NEW -j UDP
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m conntrack --ctstate NEW -j TCP
-A INPUT -p icmp -m conntrack --ctstate NEW -j ICMP
これは「特別」オプションですか-m
、それとも--match
「一般」オプションの前兆ですか?
たとえば、次の規則を使用します。
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m conntrack --ctstate NEW -j TCP
この用語は、-m tcp
Iptablesについて次のように言います。次のオプションはこのtcp
モジュール用です- では、その--tcp-flags FIN,SYN,RST,ACK SYN
用語はそのような文脈で解釈されるのでしょうか?
つまり、-m tcp
このオプションがIptablesルールで単独で指定されている場合は意味がありませんか?
答え1
-m
または、オプションを--match
使用して1つ以上を有効にします。拡張パケットマッチングモジュール与えられた名前を使用してください。モジュールを例にしてみましょうconnbytes
。これは、接続が送信するバイト数に一致するルールを作成するために使用できます。
マニュアルページには、iptables
これについての良い説明が記載されています。
iptablesは拡張パケットマッチングモジュールを使用できます。これは2つの方法でロードされます。暗黙的に、-p または --protocol が指定されている場合、または -m または --match オプションと一致するモジュール名が続く場合、および後で特定のモジュールに応じてさまざまな追加のコマンドラインがロードされます。オプションが利用可能になります。 1行に複数の拡張一致モジュールを指定できます。モジュールを指定した後、-hまたは--helpオプションを使用してそのモジュールに関するヘルプを入手できます。
iptables-extensions
私は標準のディストリビューションに含まれているiptablesモジュールを文書化したマニュアルページを読むことを強くお勧めします。
$ man iptables-extensions