iptables-perciousを使用して再起動時に自動ロードルールのiptablesを取得することはできません。

iptables-perciousを使用して再起動時に自動ロードルールのiptablesを取得することはできません。

助けやアドバイスが必要です。

本番環境に適用しようとしていますが、再起動時にルールをロードできない最新のサーバーがあります。

「Debian GNU/Linux 10(buster)」パッケージが最新バージョンです。

私はiptables-perpersistをインストールし、それをインストールし、ルールをran dpkg-reconfigure iptables-persistent次に保存します。/etc/iptables

私のフォルダには次のコンテンツがあります rules.v4 rules.v6

再起動すると、私のルールはロードされません。以下でこれを行うととてもうまくいきます!再起動時にはこれは行われません。

iptables-restore < /etc/iptables/rules.v4

私はこれを始めて、オンラインで多くのリードに追いつこうとしました。

Debianシステムを再起動した後にiptablesルールが消えるのはなぜですか?

Iptables永続サービスが変更を保存しないのはなぜですか?

何が間違っているのかわかりません。私はFail2banをインストールして動作しました。私はこれと衝突しませんが、起動時に両方iptablesを使用します。

iptablesログを表示する方法はありますか? Journalctlに記録されますか?なぜ動作しないのかについてのアイデアを与えることができるものが見つかりません。

これらのルールは起動時にロードする必要があります。誰かがこのファイルを/etc/rc.local

Debianシステムを再起動した後にiptablesルールが消えるのはなぜですか?

お手伝いいたし、可能であればiptablesにログインしていただきありがとうございます。

再起動しようとしたときの起動ログは次のとおりです。journalctl -f -unetfilter-persistent

Jan 02 15:09:06 domain.ca netfilter-persistent[720]: run-parts: executing /usr/share/netfilter-persistent/plugins.d/25-ip6tables start
Jan 02 15:09:06 domain.ca systemd[1]: Started netfilter persistent configuration.
Jan 02 15:09:50 domain.ca systemd[1]: Stopping netfilter persistent configuration...
Jan 02 15:09:50 domain.ca netfilter-persistent[1434]: Automatic flush disabled; use '/usr/sbin/netfilter-persistent flush'
Jan 02 15:09:50 domain.ca systemd[1]: netfilter-persistent.service: Succeeded.
Jan 02 15:09:50 domain.ca systemd[1]: Stopped netfilter persistent configuration.
Jan 02 15:09:50 domain.ca systemd[1]: Starting netfilter persistent configuration...
Jan 02 15:09:50 domain.ca netfilter-persistent[1436]: run-parts: executing /usr/share/netfilter-persistent/plugins.d/15-ip4tables start
Jan 02 15:09:50 domain.ca netfilter-persistent[1436]: run-parts: executing /usr/share/netfilter-persistent/plugins.d/25-ip6tables start
Jan 02 15:09:50 domain.ca systemd[1]: Started netfilter persistent configuration.

答え1

iptablesはバックグラウンドでLinux netfilterと対話します。

iptables永続パッケージのインストール

$ sudo iptables-persistent -y

iptables 永続サービスの開始と有効化

$ sudo systemctl enable --now netfilter-persistent.service

netfilter/iptables ルールを保存します。

$ sudo netfilter-persistent save

答え2

だから。結局、これにはあまりにも多くの時間が費やされました。動作させるために私がした唯一のことはrc.localを使用することでしたsleep 1。このコンピュータには、ネットワークのようなものを読み込むのに時間がかかることがあります。

私は、読んでいるスレッドの他のコンポーネントの後にロードされるように、継続的な方法でデーモンを編集してみました。何も動作しません。

最後に、Debianではrc.localを有効にできますsystemctl enable rc.local。サービスが開始されると、そのファイルにvim /etc/rc.local以下を追加しました。

#!/bin/bash
# This script is executed at the end of each multiuser runlevel
sleep 1
/sbin/iptables-restore < /etc/iptables/rules.v4
# bash /root/restore.sh
exit 0

再起動すると、すべてのルールが適用されます。より良い解決策は、iptablesが使用されなくなるため、他の人が述べたように別のファイアウォールに移動することです。しかし、ルールは複雑で時間がありません。

関連情報