启用和配置 Linux 防火墙:CentOS、Ubuntu、Debian
忘记保护和配置专用服务器防火墙是一个常见的错误,也是一个巨大的安全漏洞。进入防火墙的配置允许您删除连接到互联网的不必要的软件。这使您的服务器及其端口容易受到入侵。
本文将向您展示如何在 CentOS、Ubuntu 和 Debian Linux 专用服务器上安装和配置 iptables 防火墙。iptables 是一个简单的防火墙,可以防止专用服务器常见的简单攻击。iptables 提供IPv4包过滤和 NAT,便于流量过滤和阻塞。
在 Linux 上安装防火墙
几乎每个 Linux 发行版都预装了 iptables。您可以使用以下命令来更新或检索包:
sudo apt-get install iptables
确定要阻止的防火墙端口
防火墙安装的第一步是决定在您的专用服务器上打开哪些端口。这将根据您使用专用主机的目的而有所不同。例如,如果您正在运行 Web 服务器,您可能希望打开以下端口:
- 网络:80 和 443
- SSH:通常在端口 22 上运行
- 电子邮件:110 (POP3)、143 (IMAP)、993 (IMAP SSL)、995 (POP3 SSL)。
安全提示:通过阅读我们关于更改服务器 SSH 端口的文章,将您的 SSH 端口更改为非默认希望您的用户仅通过 SSL 使用电子邮件?阻止防火墙中的标准 POP3 和 IMAP 端口以强制使用 SSL。
刷新默认防火墙规则
为了确保我们从一组新规则开始,运行以下命令从防火墙中刷新规则:
iptables -F
阻止常见的服务器攻击路线
我们将在这里运行一些标准命令来阻止常见的攻击
阻止 syn-flood 数据包:
iptables -A 输入 -p tcp !–syn -m state –state NEW -j DROP
阻止圣诞数据包:
iptables -A INPUT -p tcp –tcp-flags ALL ALL -j DROP
阻止空包:
iptables -A INPUT -p tcp –tcp-flags ALL NONE -j DROP
打开所需的端口
既然覆盖了常见的攻击路线,我们就可以开放我们需要的端口了。以下是一些供您使用的示例:
允许 SSH 访问:
iptables -A INPUT -p tcp -m tcp –dport 22 -j ACCEPT
打开 LOCALHOST 访问:
iptables -A 输入 -i lo -j 接受
允许网络流量:
iptables -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT
iptables -A INPUT -p tcp -m tcp –dport 443 -j ACCEPT
允许 SMTP 流量:
iptables -A INPUT -p tcp -m tcp –dport 25 -j ACCEPT
iptables -A INPUT -p tcp -m tcp –dport 465 -j ACCEPT
测试防火墙配置
运行以下命令以保存配置并重新启动防火墙:
iptables -L -n
iptables-保存 | 须藤三通 /etc/sysconfig/iptables
服务 iptables 重启