解決策 1:
あなたの質問に簡潔に答えるために、いいえ:すべてのテーブルをフラッシュした後、「残りの」ルールはありません。ただし、徹底的にするために、組み込みの INPUT
のポリシーを設定することをお勧めします。 そして FORWARD
ACCEPT
へのチェーン 、同様に:
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -t nat -F
iptables -t mangle -F
iptables -F
iptables -X
ip6tables ルールをクリア:
ip6tables -P INPUT ACCEPT
ip6tables -P FORWARD ACCEPT
ip6tables -P OUTPUT ACCEPT
ip6tables -t nat -F
ip6tables -t mangle -F
ip6tables -F
ip6tables -X
...そして、それはそれを行う必要があります。 iptables -nvL
これを生成する必要があります (または 非常に 類似) 出力:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
解決策 2:
これにより、iptables システムが非常に基本的な状態に正しく完全にリセットされます:
iptables-save | awk '/^[*]/ { print $1 }
/^:[A-Z]+ [^-]/ { print $1 " ACCEPT" ; }
/COMMIT/ { print $0; }' | iptables-restore
すべてのポリシーが ACCEPT にリセットされ、現在使用中のすべてのテーブルがフラッシュされます。組み込みチェーン以外のすべてのチェーンは存在しなくなります。
解決策 3:
ファイアウォールを無効にする必要があるときはいつでも、次のようになります:
iptables-save > iptables.bak
service iptables stop
(私は Fedora を使用しています)
解決策 4:
iptables
をアンロードするだけです ' カーネルからのモジュール:
modprobe -r iptable_raw iptable_mangle iptable_security iptable_nat iptable_filter
最新情報 残念ながら、うますぎる。テーブルにルールまたはユーザー定義チェーンがある限り、対応するモジュールの参照カウントは 1 であり、modprobe -r
です。 失敗します。次のように、ルールとユーザー定義のチェーンを削除できます:
echo $'*raw\nCOMMIT\n*mangle\nCOMMIT\n*security\nCOMMIT\n*nat\nCOMMIT\n*filter\nCOMMIT' | iptables-restore
または:
iptables-save | awk '/^[*]/ { print $1 "\nCOMMIT" }' | iptables-restore
また、次の方法でモジュールをアンロードすることもできます (モジュール名をハードコーディングしません):
lsmod | egrep ^iptable_ | awk '{print $1}' | xargs -rd\\n modprobe -r
明るい面では、この iptables-save
の後 素敵な空の出力を生成します:)
解決策 5:
構成を iptables_backup.conf にバックアップし、すべてのルールを消去します。
iptables-save | tee iptables_backup.conf | grep -v '\-A' | iptables-restore
以前の構成を復元するには:
iptables-restore < iptables_backup.conf