Networking
IPv4 iptables 阻止了事情,但輸出策略是 ACCEPT,我的 INPUT DROP 鏈有什麼問題?
這是我此時的 IPv4
iptables
列表:Chain INPUT (policy DROP) target prot opt source destination ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED ACCEPT tcp -- anywhere anywhere tcp dpt:ssh ACCEPT tcp -- anywhere anywhere tcp dpt:https Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination
當我嘗試使用
apt-get
時,它無法將 DNS 名稱轉換為 IP。我該如何解決這個問題並讓它工作?
您錯過了允許回送設備,這是非可選的:
-A INPUT -i lo -m comment --comment loopback -j ACCEPT
將此添加為第一條規則,您就完成了。我在 AskUbuntu 上為您找到了關於該設備代表什麼等的很好的廣泛解釋。
此外,我建議可選步驟 - 步驟 2:允許 ICMP 協議:
-A INPUT -p icmp -m limit --limit 5/sec --limit-burst 15 -m comment --comment icmp -j ACCEPT
最後,我建議可選步驟 - 第 3 步:將您的 SSH 連接僅限於本地網路,只需確保更改為您的子網:
-A INPUT -s 192.168.0.0/24 -p tcp -m conntrack --ctstate NEW,ESTABLISHED -m tcp --dport 22 -m comment --comment ssh -j ACCEPT
旁注:幾個小時後,您應該在使用 INPUT DROP 規則時看到這樣的 DROP 數字:
Chain INPUT (policy DROP 8354 packets, 732K bytes) num pkts bytes target prot opt in out source destination 1 6315 612K ACCEPT all -- lo any anywhere anywhere /* loopback */ 2 13 1072 ACCEPT icmp -- any any anywhere anywhere limit: avg 5/sec burst 15 /* icmp */ 3 190K 697M ACCEPT all -- any any anywhere anywhere ctstate RELATED,ESTABLISHED /* traffic */ 4 0 0 ACCEPT tcp -- any any 192.168.0.0/24 anywhere ctstate NEW,ESTABLISHED tcp dpt:ssh /* ssh */