mytable
FOBチェーンには多くの規則がありますmychain
。
> sudo nft -a list table mytable
table ip mytable { # handle 8
chain mychain { # handle 1
type filter hook input priority filter; policy accept;
tcp dport 5550 accept # handle 18
tcp dport 5551 accept # handle 19
tcp dport 5552 accept # handle 20
tcp dport 5553 accept # handle 21
tcp dport 5554 accept # handle 22
}
}
~によるとnftables wiki指定されたチェーンからすべてのルールを削除することが可能でなければなりません。ただし、次のコマンドはエラーを返します。
> sudo nft delete rule mytable mychain
Error: syntax error, unexpected newline, expecting handle
delete rule mytable mychain
^
mychain
ルールハンドルを繰り返さずにすべてのルールを削除する正しいコマンドは何ですか?
答え1
nftables Wikiにはまだいくつかのバグが隠されています。実際の構文は非常に論理的です。
すべてのコンテンツを削除
nft flush ruleset
テーブルを空にします(
ip
指定されていない場合、デフォルトはファミリに設定されます)。例えばmy table
nft flush table mytable
テーブルを削除します(これにより、テーブルも最初に空になります)。例えば
mytable
nft delete table mytable
クリアチェーン(同じ本。)。例えば
mytable mychain
nft flush chain mytable mychain
チェーンを削除します(同じ)。例えば
mytable mychain
nft delete chain mytable mychain
ルールを削除します(これはハンドル参照でのみ実行できます)。例えば
tcp dport 5550 accept # handle 18
nft delete rule mytable mychain handle 18
覚えておくべきことはこの作戦の目的です。でしたいチェーンレベルの場合、キーワードがあるのは正常ですchain
。
もし疑いがあれば、nft
マンページ通常、より正確ですが、情報がどこにあるかを事前に知っておく必要があります。チェーン代わりに部分ルール部分:
チェーン
{追加|作成}チェーン[ファミリ]テーブルチェーン[{タイプタイプフックフック[デバイス]]優先順位[ポリシーポリシー;]}]
{削除|リスト|フラッシュ}チェーン[家族]テーブル チェーン
チェーン[ファミリ]テーブルハンドルハンドル
削除チェーン[ファミリ]テーブルチェーン新しい名前の名前変更[...]
フラッシュ指定されたチェーンのすべてのルールを更新します。