CentOS 7で、さまざまなfirewalldルールとiptablesコマンドを試してみましたが、今はそれをやり直したいのですが、firewalldのみを使用しています。
質問
CentOS 7のfirewalldに同梱されているデフォルトにすべてのルールをリセットするにはどうすればよいですか?
個人的には、編集したすべてのゾーンからすべてのサービスとルールを削除するだけです。リモートサーバーで作業している場合のSSHを除きます。それは簡単だ: Sudo firewall-cmd --zone=WHATEVER --remove-service=WHATEVER
そして、すべてが削除された後、Sudo firewall-cmd --runtime-to-permanent
ただし、ファイアウォールルールを保存していない場合は、systemctl restart firewalld
リセット機能は無いと思います。
以下のコードが役立つ場合があります。
for srv in $(firewall-cmd --list-services);do firewall-cmd --remove-service=$srv; done firewall-cmd --add-service={ssh,dhcpv6-client} firewall-cmd --runtime-to-permanent
よろしく、
アーマーマンスール
John Ashpoolが言うように、本当にすべてを削除したい場合
rm -rf /etc/firewalld/zones
または/ usr/etc/firewalld/zones(ディストリビューションによって異なる)
そして
iptables -X
iptables -F
iptables -Z
プラス
systemctl restart firewalld
そして、あなたはルールとゾーンの新しいセットを持っています;)
カスタマイズされたゾーンルールを含むファイルを/etc/firewalld/zones
(またはディストリビューションによっては/usr/etc/firewalld/zones
)から削除するだけです。その後、firewalld
をfirewall-cmd --complete-reload
でリロードすると、デフォルト設定の使用が開始されます。ゾーンのルールを変更すると、ファイルはそのディレクトリに再び表示されます。
iptables
については、iptables -F
を使用してすべてのルールをリセットできます。何らかの永続性を実装しない限り、再起動も機能します。 firewalld
は、バックエンドとしてiptables
を使用するように構成されている可能性があることに注意してください。つまり、ゾーンルールでの指定に従って、iptables
ルール自体が追加または削除されます。