这是我iptables
目前的 IPv4 列表:
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。我该如何解决这个问题并使其发挥作用?
答案1
您错过了允许环回设备,这是非可选的:
-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 */