我正在部署一些 VPS,当然,安全是一个大问题。我读到 IPtables 白名单是保护你的机器的最佳方式。所以我设置了以下内容:
echo "Flushing rules"
iptables -F
echo "Allow localhost interface"
iptables -A INPUT -i lo -j ACCEPT
echo "Allow local network traffic"
iptables -A INPUT -s 192.168.1.0/255.255.255.0 -j ACCEPT
echo "Allow my dear friend 1"
iptables -A INPUT -s xx.xx.xx.xx -j ACCEPT
echo "Allow my dear friend 2"
iptables -A INPUT -s xx.xx.xx.xx -j ACCEPT
echo "Allow already established connections"
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
echo "Set default policies"
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
这种设置有多安全?潜在的黑客会用什么方法攻破我的防火墙(当然前提是黑客在我的本地局域网之外)?谢谢!
答案1
当您将默认策略设置为DROP
仅ACCEPT
需要的内容时,这显然比默认允许所有内容和有选择地允许DROP
不需要的流量类型更安全。
这至少可以让你免于保护那些不打算远程访问的服务(从你的机器或 LAN 外部)。
当您向外界暴露较少的服务时,您的系统会更安全。
答案2
您的设置看起来不错。您应该查看iptables-persistent
如何在 VPS 重启后自动启动防火墙。它工作得很好(它只是一项在启动时启动并使用保存的规则集修改防火墙的服务)。