新しいTCP接続を一致させるために「--syn」を使用する利点

新しいTCP接続を一致させるために「--syn」を使用する利点

iptables新しい接続を一致させるいくつかの例で同様のスキルを見ました。

-A INPUT -p tcp -m tcp --dport 443 --syn -m conntrack --ctstate NEW -j SSH

上記のように、tcpモジュールに加えてTCPフラグ(SYNは1でなければならず、RST、ACK、FINは0)に基づいてTCP接続を確認します。これに比べてどのような利点を提供しますか?--ctstate NEWconntrack

-A INPUT -p tcp -m tcp --dport 443 -m conntrack --ctstate NEW -j SSH

私の仮定は、一致するモジュールがルールで指定された順序で評価され--synみんなポート443に送信されたTCPパケットは、あるモジュールから別のモジュールtcpに転送されます。conntrackつまり、--synこれらの高速失敗パラダイムを提供する必要があります。

答え1

つまり、--synこれらの高速失敗パラダイムを提供する必要があります。

ほぼその程度です。実際、拡張メカニズムは短絡されます。マンページ説明する

一致は、コマンドラインで指定されているように最初から最後まで評価され、段落方式で機能します。つまり、拡張プログラムでエラーが発生した場合、評価は停止します。

上記の場合、ルールは2つの拡張、つまりおよびをtcp処理する拡張とを--dport処理--synするconntrack拡張を使用します--ctstatetcp拡張子が一致できない場合、conntrack拡張子は完全にスキップされます。

関連情報