ファイアウォールルールをデフォルトにリセットしますか?

ファイアウォールルールをデフォルトにリセットしますか?

CentOS 7 で、さまざまな firewalld ルールと iptables コマンドを試してきましたが、firewalld のみを使用してすべてをやり直したいと思っています。

質問

すべてのルールを CentOS 7 の Firewalld に付属のデフォルトにリセットするにはどうすればいいですか?

答え1

次のコードが役に立つかもしれません。

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

よろしくお願いいたします。

アフマー・マンスール

答え2

ジョン・アシュプールが言うように本当にすべてを削除したいのであれば

rm -rf /etc/firewalld/zonesまたはディストリビューションに応じて /usr/etc/firewalld/zones

そして

iptables -X
iptables -F
iptables -Z

プラス

systemctl restart firewalld

そして、新しいルールとゾーンのセットができます ;)

答え3

カスタマイズされたゾーン ルールを含むファイルを/etc/firewalld/zones(または/usr/etc/firewalld/zonesディストリビューションによっては )から削除するだけで済みます。その後、firewalldでリロードするfirewall-cmd --complete-reloadと、デフォルト設定の使用が開始されます。ゾーン ルールに変更を加えると、そのディレクトリにファイルが再び表示されます。

についてはiptables、 を使用してすべてのルールをリセットできますiptables -F。何らかの永続性を実装していない限り、再起動も同様に機能します。 はバックエンドとしてfirewalld使用するように構成されている可能性があることに注意してください。iptablesつまり、ゾーン ルールで指定した内容に従って、 自体がルールを追加または削除することになりますiptables

答え4

配布に付属するデフォルトzonesが変更された場合、/etc/firewalld/zonesその変更内容がディレクトリにコピーされます。

これは、ゾーン ファイルのソースがdefaultこのディレクトリではなく、再インストールではこのディレクトリ ( /etc/firewalld/zones) の下のファイルを認識しないため、これらのファイルは再インストールによって作成されることを意味しますuntouched。これらのファイルが削除されない限り、firewalld はこのディレクトリから変更を読み込み続けます。

これらすべてのファイルを (安全に) バックアップして削除し/etc/firewalld/zones、firewalld を再起動すると、デフォルトのディストリビューションでインストールされたゾーン構成に戻ります。

デフォルトの配布ゾーン構成ではSSHがデフォルトで許可されているので、ある意味では安全です。ただし、22番以外のSSHポートまたはSSH以外の方法でこのサーバーにログインした場合は、注意が必要です。 /etc/firewalld/zones

sudo cp -pR /etc/firewalld/zones /etc/firewalld/zones.bak
sudo rm -f /etc/firewalld/zones/*
sudo systemctl restart firewalld

その他の設定ファイルが変更された場合、firewalld 自体は再インストールできますが、再インストールするには、firewalld RPM をダウンロードする必要があります。

プラグインをインストールyum-downloadonly:

(RHEL5)
# yum install yum-downloadonly
(RHEL6, RHEL7)
# yum install yum-plugin-downloadonly

プラグインを使用する前に、/etc/yum/pluginconf.d/downloadonly.confこのプラグインがenabled=1

# yum install --downloadonly --downloaddir=/tmp firewalld
# rpm -ivh --force /tmp/firewalld*.rpm

BTW はyum reinstall firewalld変更された設定ファイルを置き換えません。

関連情報