强化我的 Lamp 服务器。我需要防火墙吗?

强化我的 Lamp 服务器。我需要防火墙吗?

我正在 Debian Linux (Lenny) 上设置我的第一个 Lamp 服务器。我完全是个新手,所以请原谅我的无知。

我正在尝试保护服务器,并且刚刚使用 netstat 输出删除了所有不需要的开放端口。我将其减少到仅 2 个开放端口,即 http 和 mysql 端口。

如果我只打开这两个端口,是否意味着只有这两个端口才有人/东西可以通过它们对我的机器发起攻击?如果只有这两个端口开放,我是否需要设置防火墙?显然,将来我需要为 ssh 等打开其他端口。

谢谢

答案1

  1. 您真的需要访问远程 mysql 吗?也许您可以稍微限制一下,或者也许通过 localhost/loopback 访问 mysql 就足够了?

  2. 您是否限制了传出连接?即使您有一些易受攻击的软件,限制传出连接也会帮助您阻止下载潜在的有害负载。

建议规则:

iptables -P INPUT DROP
iptables -P OUTPUT DROP

iptables -F
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -s your.trusted.ip.address -j ACCEPT

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

当您需要运行系统更新时:

iptables -I OUTPUT -j ACCEPT

完成后:

iptables -D OUTPUT -j ACCEPT

答案2

这是值得考虑的事情。

在那个盒子上或之前安装防火墙对以后很有用。如果你想禁止滥用服务的用户怎么办?你不必担心在你的应用程序中实现这一点,只需使用 iptables 即可。SYN 洪水预防也是如此。

那么带宽限制呢?这在将来也可能会派上用场。

最后,不要忘记一些重定向如果您决定在用户​​和 Web 服务器之间放置代理,则可以采用以下技巧。

相关内容