しばらく読んでいました。
私の理解は次のとおりです
- nftablesは、最新のLinuxカーネルパケット分類フレームワークです。 nftablesはiptablesの後継製品です。これは、既存のiptables、ip6tables、arptables、およびebtablesフレームワークを置き換えます。
- x_tables は、iptables、ip6tables、arptables、および ebtables で使用されるコードの共有部分をホストするカーネルモジュールの名前なので、Xtables はファイアウォール全体 (v4、v6、arp、eb) アーキテクチャを参照するためにある程度使用されます。システム管理者として、私はxtables / x_tablesについて心配する必要はありません(一部の人は下線を使用しているため、xtablesがx_tablesと同じかどうかはわかりません)。これは実際にカーネルの一部のコードです。
- nftables は nf_tables を使用します。ここで、nf_tables はカーネルモジュールの名前です。システム管理者としてnf_tablesについて心配する必要はありません。実際にはカーネルの一部のコードです。
- iptables-nftはiptablesのように見えますが、nftablesのように動作します。全体的な目的は、iptablesからnftablesに移行することです。
- iptables-nft は xtables-nft を使用します。ここで、xtables-nft はカーネルモジュールの名前です。システム管理者として、私はxtables-nftを心配する必要はありません。
上記の説明が正しいか間違っているか教えてください。間違っていたら正確な説明をお願いします。
答え1
私のポイントは、iptables、ip6tables、ebtables、arptablesがNetfilterのフロントエンドツールセットであることです。
これは、ルールをフォーマットしてコンパイルしてカーネルで実行されているコアNetfilterにロードするために使用される一連のユーザースペースツールです。モジュールディレクトリからカーネルモジュールにNetfilterのすべてのカーネル部分を見つけることができますls /lib/modules/$(uname -r)/kernel/net/netfilter/
。nf_*, nft_*, xt_*
これらのツールの問題は、ルールの粒度で機能するため、ルールを調整するたびにすべてのカーネルルールをダウンロードし、バイナリブロブを修正してからカーネルにアップロードすることです。ルールが多すぎると、プロセスはCPUを大量に使用します。
nftablesは、このツールスイートをユニークなツール(すべてを支配するために...エヘム)に書き換えたものです。これにより、使いやすくパフォーマンスが向上しますが、まだNetfilterのフロントエンドですが、主な違いは次のとおりです。 Netfilterのすべての部分を処理するためのシームレスな構文を持ち、1つずつダウンロードしてアップロードすることなく、Netfilter内で直接バイナリルールセット全体を変更できることは、大幅な改善を意味します。
これはまた、iptablesとnftablesを同時に使用してルールを変更することができますが、異なるルール間の優先順位を見ることができない、または優先順位が望ましくない可能性があるため、お勧めできません。
これで、展開戦略に応じて、新しいNetfilterコアセットモジュールで使用するさまざまなパッケージセットを見つけることができます。 xtables-nftに言及しました。これは{ip|ip6,eb,arp}tables
、既存のツールと同じ方法で新しいNetfilterコアで動作できるユーザースペースツールの中間セット(またはパッケージ)を指定するためのショートカットです。 nftablesの既存の方法(新しい方法)。
従来のツールセットが新しいNetfilterコアと同じように動作できるようにするiptables-legacyというパッケージもありますが、ip{,6}tables
ルールをnftablesに直接変換できないため、ファイアウォールスクリプトツールなどのツールをferm
新しいインストールに使用できます。最新のカーネルの操作が続行されます。
たとえば、2つをリンクすると、iptables-legacy-save |iptables-nft-restore
古いiptablesルールセットを新しいnftablesルールセットに直接変換できます。
xtables-nftは、古いツールと同様に、新しいNetfilterコアで作業できる{ip、eb、arp}テーブルで構成されるユーザースペースツールの中間セット(またはパッケージ)を指定するためのショートカットなので、便利で簡素化されます。既存の方法からnftablesへの移行(新しい方法)
挨拶。