ファイアウォールルールをiptablesからnftablesに変換する

ファイアウォールルールをiptablesからnftablesに変換する

私にはこんなルールがあるiptables

iptables -I INPUT 1 -i eth0 -p tcp -s 192.168.178.20 --dport 8201 -j REJECT

私が探していますルールを翻訳する方法チュートリアルですが見つかりません。このルールをどのように作りますかnftables?それとも構文は同じですか?

ベストアンサー1

nftablesからウィキペディア:

2018年6月現在、以前のxtables / setsockoptツールはレガシーツールと見なされています。ただし、nf_tables カーネルバックエンドは iptables/ip6tables/arptables/ebtables 以前の構文の使用をサポートします。従来の xtables ツール wiki ページには、これに関する詳細が記載されています。

iptables-nft目標を達成するには、次の方法を使用できます。

iptables-nft -I INPUT 1 -i eth0 -p tcp -s 192.168.178.20 --dport 8201 -j REJECT

入力するとiptabels-nft-saveルールが適用されます。次の方法で、nftablesにこのルールが存在することを確認できます。

nft list ruleset

次の内容を確認する必要があります。

nft list ruleset                 
table ip filter {
        chain INPUT {
                type filter hook input priority filter; policy accept;
                iifname "eth0" ip saddr 192.168.178.20 tcp dport 8201 counter packets 0 bytes 0 reject
        }
}

また、次の構文を使用してルールを直接変換できます。

iptables-translate -I INPUT 1 -i eth0 -p tcp -s 192.168.178.20 --dport 8201 -j REJECT

すると、次のような結果が出力されます。

nft insert rule ip filter INPUT iifname "eth0" ip saddr 192.168.178.20 tcp dport 8201 counter reject

または、すべてのiptablesルールを保存してiptables-save > save.txtから、それを使用してiptables-restore-translate -f save.txt翻訳されたルールを取得することもできます。

私自身を見て質問さらなる説明のために数ヶ月前。

おすすめ記事