
全てにおいて良い日!
まず最初に、私は Linux 初心者であり、StackExchange も初めてなので、質問の仕方が正しいことを願っています。
新しい AlmaLinux インストール (v9.1、最小インストール、ヘッドレス管理およびセキュリティ ツール) で nftables をファイアウォールとして使用したいと思います。firewalld が邪魔にならないように、次の方法で firewalld を無効にしました。
'''
# systemctl disable firewalld
# systemctl stop firewalld
# systemctl mask firewalld
'''
次に、nfs パッケージをインストールして 1.0.4-2-el9 に更新し、次のコマンドでサービスを開始しました。
'''
# systemctl enable nftables
# systemctl start nftables
'''
私の意図は、ip(v4) と ip6 (inet を使用するのではなく) 用に別のテーブルを作成することでした。ip6 は使いたくないからです。別の ip6 テーブルを作成すると、それを使用してすべての ip6 トラフィックをドロップし、独自の ip テーブルで ip(v4) の管理に集中できます。セットアップは 2 つのインターフェイスで、1 つは着信 WAN トラフィック用 (ファイアウォール/ルーターを通過後)、もう 1 つはサーバーの管理を含む LAN に面しています。現在、インターフェイスは両方とも 10.0.0.0/24 にありますが、DMZ を作成する場合は、DMZ の WAN インターフェイスのみを構成する必要があります。
そこで、次のテーブルを作成しました:
'''
# nft add table ip firewall4
# nft add table ip6 firewall6
# nft list tables
'''
両方のテーブルの存在を確認します。
新しいチェーンを追加し、その内容を次のように確認しました。
'''
# nft add chain ip6 firewall6 input { type filter hook input priority 0\; }
# nft list table ip6 firewall6
'''
私が得続ける出力は(何をしても、何を変更しても)次のとおりです。
'''
table ip6 firewall6 {
chain input {
type filter hook input priority filter; policy accept;
}
}
'''
別の優先度(例:1)を試すと、「type filter hook input priority filter +1; policy」が表示されます。チェーンを削除して再度挿入するには、完全なコマンド(up up だけではなく)を入力します。
あらゆる例/ハウツー/ドキュメントで、「優先度 0」が見られます。「優先度フィルター」が正しいかどうかはわかりません。明らかに「フィルター」は「0」とは異なるため、追加されるチェーンとルールが無視されるのではないかと心配しています。また、「フィルター」が同じテーブル内の他のチェーンでどのように優先されるのか理解できません。
私の質問は次のとおりです:
- 「優先フィルター」は問題ありませんか、それともテーブルにさらに追加すると変更されますか?
- OK でない場合、優先的に値を取得するにはどうすればよいでしょうか?
皆様、どうぞよろしくお願いいたします!
答え1
キーワードは、filter
チェーン優先度として使用される場合、0 に変換され、逆も同様です (値が少し異なるブリッジ ファミリを除く)。 の以前のバージョンでは、nftables
これは表示されませんでした。新しいバージョンでは表示されます。その役割に変更はありません。
出力が優先度を解決するのを避けるために、マニュアルページ:
-y
、--numeric-priority
ベースチェーンの優先度を数値で表示します。
それは次のようになります:
nft -y list ruleset
他のオプション ( など-n
) も、他のことと一緒に実行される可能性があります。
この優先度の値は、歴史的に使用されてきた優先度から来ています。iptablesまたはNetfilter独自の機能によって、例えば次のように説明されます。nftables' ウィキはこちら:Netfilter_hooks - フック内の優先度
nftables ファミリー 典型的なフック nftキーワード 価値 Netfilter 内部優先度 説明 [...] inet、ip、ip6、arp、netdev 全て フィルター 0 NF_IP_PRI_フィルター フィルタリング操作、フィルタテーブル [...]
また、優先順位は同じテーブル内のチェーンの優先順位ではなく、同じ針同じテーブルにあるがフックが異なる 2 つのチェーン (例:prerouting
またはforward
) は、優先順位が比較されることはありません。フック名によって順序が既に定義されているためです。同じテーブルにない場合でも、同じフックとファミリー内のチェーンだけが優先順位を比較され、どのチェーンが最初に評価されるかが判断されます。ファミリーごとにフックごとに 1 つのチェーンのみを使用している場合、この値はあまり重要ではありません。ただし、Netfilter 自体の機能 (-400 での prerouting/defragmentation、-200 での prerouting/conntrack 操作など) に関しては、依然として重要になることがあります。