![基本的な Linux Iptables ファイアウォールの問題](https://rvso.com/image/1642379/%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%20Linux%20Iptables%20%E3%83%95%E3%82%A1%E3%82%A4%E3%82%A2%E3%82%A6%E3%82%A9%E3%83%BC%E3%83%AB%E3%81%AE%E5%95%8F%E9%A1%8C.png)
Iptables がインストールされているホストのターミナルにこれらのコマンドを入力すると、インターネットにアクセスできるワイヤレス ネットワークに接続した後、Web ページが読み込まれません。
単純なことだとは分かっているのですが、それが何なのか分かりません。
sudo iptables --policy INPUT DROP
sudo iptables --policy OUTPUT DROP
sudo iptables --policy FORWARD DROP
sudo iptables -A OUTPUT -j ACCEPT -p tcp --destination-port 53
sudo iptables -A OUTPUT -j ACCEPT -p tcp --destination-port 80
sudo iptables -A OUTPUT -j ACCEPT -p tcp --destination-port 443
sudo iptables -A OUTPUT -j ACCEPT -p udp --destination-port 53
sudo /sbin/iptables-save
前のコマンドの後のリストされた構成:
user@debian:~$ sudo iptables -L
Chain INPUT (policy DROP)
target prot opt source destination
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:http
ACCEPT tcp -- anywhere anywhere tcp dpt:https
ACCEPT udp -- anywhere anywhere udp dpt:domain
user@debian:~$ sudo iptables -L -v
Chain INPUT (policy DROP 1095 packets, 131K bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy DROP 33 packets, 2574 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT tcp -- any any anywhere anywhere tcp dpt:domain
8 480 ACCEPT tcp -- any any anywhere anywhere tcp dpt:http
0 0 ACCEPT tcp -- any any anywhere anywhere tcp dpt:https
1072 70910 ACCEPT udp -- any any anywhere anywhere udp dpt:domain
この場合、基本的な DNS、HTTP、HTTPS を探しているだけです。何が問題なのでしょうか?
答え1
sudo iptables --policy INPUT DROP
デフォルトでは、すべての着信トラフィックがドロップされます。このポリシーに例外を作成するルールはありません。つまり、発信トラフィックを許可する OUTPUT ルールのみがあります。通常は、次のように、内部から確立された入力に一致する接続を許可するルールが少なくとも 1 つあります。
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT