如何使用 Iptables 在 Linux 上阻止 IP 地址(分步指南)
让我们首先解释一些术语,这将帮助您更好地理解本文的上下文。在计算机网络中,IP(互联网协议)地址是分配给连接到网络的每个设备的唯一数字标识符。它用于识别网络上的其他设备并与其进行通信。 IP 地址有两个主要版本,这意味着 IP 地址可以采用 IPv4(32 位)或 IPv6(128 位)格式,通常写为一系列由点分隔的四个数字(例如 192.168) .1.1(对于 IPv4))或由八组四个十六进制数字组成的十六进制表示法,这些数字以冒号分隔(例如,对于 IPv6 为 2001:0db8:85a3:0000:0000:8a2e:0370:7334)。
另一方面,Iptables 是一个功能强大的防火墙工具,允许您通过定义一组规则来配置和管理网络连接。这些规则基于一系列表,其中包含用于操作网络数据包的规则链。每个链包含一组规则,这些规则根据源和目标 IP 地址、协议和端口应用于传入或传出数据包。
Iptables 使用 netfilter,这是一个允许内核拦截和修改数据包以实现其规则的框架。它可用于过滤、阻止或转发网络流量,以及执行 NAT(网络地址转换)和伪装。 iptables 是一个命令行工具,这就是为什么要使用它,您需要在终端中编写某些命令。在本文中,我们将探讨从命令行使用 iptables 阻止 IP 地址所需遵循的步骤。
从 Iptables 阻止 IP
Linux 系统管理员可以告诉您保护服务器免受潜在攻击的重要性。保护服务器安全的一种方法是使用 iptables 阻止特定 IP 地址。它允许您根据 IP 地址、端口和协议来阻止、允许和限制流量。
第 1 步:当前 Iptables 规则
在开始阻止 IP 之前,您应该首先检查当前的 iptables 规则,以确保您不会意外阻止任何有效流量。
在Linux终端中运行以下命令:
您应该能够看到类似于以下输出的输出,其中指定了设备的 iptables 规则的目标、源和目的地。
注意:如果您以前从未配置过 iptables,您应该会看到一个空表。否则,您将看到现有的规则。如果您看到任何想要保留的规则,请记下它们。
第 2 步:阻止 IP 地址
要阻止 IP 地址,可以使用以下命令:
注意:将
此命令向 INPUT 链添加一条规则,丢弃来自指定 IP 地址的所有流量。
–A 选项告诉 iptables 将规则附加到链的末尾。
-s选项指定源IP地址。
-j 选项告诉 iptables 如何处理流量。在这种情况下,我们将放弃它。
第 3 步:保存您的 Iptables 规则
将规则添加到 iptables 后,保存更改非常重要。否则,当您重新启动服务器或设备时,它们将会丢失。
要保存 iptables 规则,请运行以下命令:
此命令将当前的 iptables 规则保存到 /etc/iptables/rules.v4 文件中。
注意:当您重新启动服务器时,iptables 将自动加载这些规则。
第 4 步:验证被阻止的 IP 地址
要验证 IP 地址是否已被阻止,请运行以下命令:
这会再次显示您当前的 iptables 规则。您应该会在 INPUT 链的底部看到刚刚添加的规则。
第 5 步:删除规则
如果您发现任何问题,应运行以下命令来删除刚刚添加的规则:
注意:将
第 6 步:阻止 IP 范围
如果您想阻止整个 IP 地址范围,可以运行以下命令:
注意:将
要阻止从 192.168.0.1 到 192.168.0.255 的范围,请运行以下命令:
结论
iptables 是 Linux 中一个用于阻止 IP 的强大工具。它允许您通过基于一系列表定义一组规则来配置和管理网络连接,这些表包含用于过滤或操作网络数据包的规则链。使用 iptables,您可以过滤、阻止或转发网络流量以及执行 NAT 和伪装。
保持 iptables 规则最新并定期测试以确保它们正常工作非常重要。另外,请确保您只阻止您知道是恶意或不需要的且不是合法流量的 IP。负责任且谨慎地使用 iptables,您可以增强系统的安全性并保护其免受潜在风险。