再起動間でiptablesファイアウォールルールを永続化して、システムの再起動後にそれらを失わないようにする方法は次のとおりです。
Iptablesは、ポリシーチェーンを使用してトラフィックを許可またはブロックするLinuxオペレーティングシステムのコマンドラインファイアウォールユーティリティです。ただし、デフォルトでは、iptablesルールはサーバーの再起動後も存続しません。 Linuxシステムを再起動すると、これらはリセットされます。では、どうすればiptablesルールを永続化できますか?
iptablesはルールをシステムメモリに保存します。つまり、これらのルールをファイルとしてディスクに永続的に保存することはありません。幸い、これらのiptablesルールをディスクに永続的に保持する非常に簡単な方法があります。これについては後で説明します。
iptablesファイアウォールルールを永続的に保存する方法
iptables-persistentをインストールする必要があります 再起動時にiptablesを自動的に復元するパッケージ。
sudo apt install iptables-persistent
インストールの過程で、現在/既存のiptablesルールを保存するように求められます。 Yesを選択します またはNo 必要に応じて。
Yesを選択した場合 、既存のiptablesルールを作成して/etc/iptables/rules.v4に保存します および/etc/iptables/rules.v6 それぞれIPv4とIPv6の場合。
iptablesのルールを変更するときはいつでも、iptables-saveを使用してそれらをファイルに保存する必要があります 再起動後に変更を永続化するコマンド。
IPv4 iptables(最も広く使用されているシナリオ)の場合:
sudo iptables-save -f /etc/iptables/rules.v4 IPv6 iptablesの場合:
sudo iptables-save -f /etc/iptables/rules.v6 システムでiptablesに変更を加えるたびに、上記のコマンドを実行する必要があることに注意してください。現在アクティブなiptablesルールを指定されたファイルにコピーします。
ルールは、最後に保存したときの状態に復元することもできます:
sudo netfilter-persistent reload 保存したファイルは、catコマンドを使用して表示できます:
sudo cat /etc/iptables/rules.v4
さらに、永続的なiptablesルールを削除するには、対応する/etc/iptables/rules.v*を開くだけです。 ファイルを作成し、不要なルールをすべて含む行を手動で削除します。
結論
Linuxシステム管理者は、iptablesを使用して、Linuxのファイアウォールルールを設定、維持、および検査します。このガイドでは、DebianまたはUbuntuシステムでiptablesファイアウォールルールを永続化する方法を学びました。
システムでufwまたはfirewalldコマンドを実行している場合は、iptables-persistentに注意することが重要です。 それらと競合するため、回避する必要があります。
iptablesコマンドの詳細については、そのマニュアルページを参照するか、こことここを確認してください。