网站搜索

如何使用 IPTABLES 保护您的 Linux 服务器


不幸的是,服务器被黑客攻击的例子有很多。因此,利用防火墙对于增强网络安全至关重要。您可以使用 Iptables 配置防火墙来增强对服务器的保护。

Iptables 是基于 Linux 的操作系统的防火墙实用程序,许多 Linux 发行版(例如 Rocky Linux 和 CentOS)默认包含它。

任何人都可以发现 Iptables 对额外的服务器保护很有帮助,无论您是系统管理员并希望防止潜在的服务器安全威胁,还是您使用 VPS 并希望确保 VPS Rocky Linux 顺利运行并提供良好的保护。

本文将告诉您有关 Iptables 的更多信息以及如何利用该工具来保护您的服务器。

IPtables 工具如何工作?

Iptables 是一个防火墙实用程序,可根据特定规则执行网络比较。

它基本上通过表监视来自和到达服务器的流量。这些表包含所提到的一组规则,称为链,允许过滤服务器接收和转发的数据包。这些链意味着检查数据包所依据的规则。

Iptables 中有默认链,例如:

  • 输入规则。它们管理所有发往服务器的数据包。
  • 输出规则。它们处理服务器产生的所有流量。
  • 转发规则。它们处理未发送至服务器的传入数据包。

这些是预定义的链,但您可以创建自己的链。

每个链都有一个策略来确定对符合或不符合规则的数据包会发生什么情况;可以接受或拒绝数据包。

使用 Iptables 保护服务器的策略在于拒绝所有未经您许可接受的内容。

开始使用 Iptables

您可能想直接跳到配置规则,但在这样做之前您需要先处理一些事情。如果您没有 Ubuntu、Debian、RHEL、Rocky Linux 或 AlmaLinux,您可能需要另外安装 Iptables。此外,考虑到 Iptables 已经安装,我们将继续。

识别默认链行为

默认链行为将告诉您链的配置方式以及您想要进行哪些更改。

要找出默认链设置,请运行以下命令:

sudo iptables -L command

例如,您可能会遇到链被配置为接受所有流量,这正是您想要的。如果您发现某些链拒绝流量,请运行以下命令:

sudo iptables --policy INPUT ACCEPT
sudo iptables --policy OUTPUT ACCEPT
sudo iptables --policy FORWARD ACCEPT

现在,当您的服务器接受所有连接时,您可以准确定义要阻止的连接。如果您正在处理敏感数据,那么完全阻止连接并进一步仅选择您想要从中接收流量的 IP 地址可能是个好主意。为此,请输入以下内容:

sudo iptables -policy INPUT DROP
sudo iptables --policy OUTPUT DROP
sudo iptables --policy FORWARD DROP

仅当您处理敏感数据时,这才会有用。否则,此步骤不是强制性的。

配置单独的连接

配置单个连接意味着您“告诉”Iptables 在涉及特定 IP 地址时如何表现。对于配置单个连接,有三个命令:接受、丢弃和拒绝。

  • 接受意味着连接将被接受。
  • Drop 意味着连接将被阻止与服务器交互。
  • 拒绝意味着阻止尝试与服务器交互并用错误消息通知它。

例如,要阻止特定IP地址,可以使用以下命令:

sudo iptables -A INPUT -S (insert the IP address you want to block) -j DROP

要阻止多个连接,请使用:

sudo iptables -A INPUT -s (IP address 1) / (IP address 2) /.0 -j DROP

如果您想删除特定规则,也可以这样做。如果您犯了错误或想要删除特定规则,可以使用 -D 命令结合要删除的规则编号来执行此操作。

sudo iptables -D INPUT (rule number)

如果您要删除一堆规则,可以使用 -F 命令:

sudo iptables -F

它会清理你的 Iptable。

结论

Iptables 是一个高度通用的工具,可以保护您的服务器免受您不想要的流量的影响。 Linux 用户会发现该工具对于管理有关 IP 地址、端口或协议的流量非常有效。

本文仅涵盖 Iptables 功能的一小部分,但我们仍然希望您发现它有用。您在使用服务器时的体验对于服务器的高效管理和安全性至关重要,而 Iptables 是此类工作中最有用的工具之一。

相关文章: