我很生气……至少可以这么说
我无法通过任何方式连接到我的服务器:
ufw disable
root@server~# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh
DROP all -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere tcp dpt:http
但我仍然无法 ping 通服务器。
这是全新安装,运行 Ubuntu 12.04 的全新 Apache :/
有什么想法吗?
答案1
你有:
ACCEPT all -- anywhere anywhere
和
DROP all -- anywhere anywhere
这有点令人困惑。
建议的做法是将默认策略设置为降低然后接受您需要的流量。
Ping 不起作用,因为您未允许它。
尝试这个脚本:
#!/bin/sh
# Delete all existing rules
iptables -F
# Set default chain policies
iptables -P INPUT DROP
# allow established/related
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# allow ssh
iptables -A INPUT -p tcp --dport ssh -j ACCEPT
# allow http
iptables -A INPUT -p tcp --dport http -j ACCEPT
# pings
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
使其可执行并运行它。
然后考虑一下你是否需要为你的链条制定一些OUTPUT
规则FORWARD
。
欲了解更多信息,请查看Ubuntu 官方 iptables 指南。