当前位置: 首页>>技术教程>>正文


如何在Ubuntu中使用iptables阻止/允许ping

, ,

什么是iptables?

iptables一个命令行防火墙实用程序,该实用程序根据策略链的使用来允许或阻止流量。 iptables遵循基于数据包的流量监控方法。当程序尝试与您的系统建立连接时,iptables会从预定义列表中查找匹配的规则。如果不匹配规则,它将恢复为默认操作并阻止访问新连接。

iptables包过滤器最初由Rust Seller编写,是Netfilter核心团队的产品。它是用C语言编写的,于1998年首次发布。该公司不时发布稳定的版本,然后可以从以下存储库下载该版本:

公司网站:

要了解有关iptables及其使用方法的更多信息,请遵循以下官方文档:

什么是Ping?

Ping或Packet Internet Groper是一种网络管理实用程序,用于检查IP网络上源计算机和目标计算机/设备之间的连接状态。它还可以帮助您评估从网络发送和接收响应所花费的时间。

在本文中,我们将解释可用于以下目的的iptables命令:

  • 添加一个告诉iptables防火墙的规则通过控制ICMP请求来查验服务器。
  • 删除告诉iptables防火墙的规则允许通过控制ICMP请求来查验服务器。

我们已经在Ubuntu 18.04 LTS系统上运行了本文中提到的命令和过程。

如何阻止/允许从iptables ping?

您可以通过在终端中运行以下命令来通过Linux命令行安装iptables:

$ sudo apt-get install iptables

您可以通过系统应用程序启动器搜索或通过使用Ctrl + Alt + T捷径。

为了验证安装并检查版本号,您可以使用以下命令:

$ iptables --version

平坪

如上所述,iptables防火墙基于一组规则。您可以添加以下规则,以阻止与服务器之间的ping操作。运行ping命令时,该命令将显示一条错误消息:

$ sudo iptables -A INPUT -p icmp --icmp-type echo-request -j REJECT

Block Ping with IPTables

例:

Result of ping command

否则,您可以添加以下规则以阻止ping而不显示错误消息:

$ sudo iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
$ sudo iptables -A OUTPUT -p icmp --icmp-type echo-reply -j DROP

iptables命令的-A命令选项代表“添加”,因此任何要添加的规则都以“sudo iptables -A…。‘。

允许Ping

以下命令可让您列出添加到iptables中的所有规则:

$ sudo iptables -L

List IPTables rules

如果有任何规则阻止ping(在我们的示例中,ICMP被拒绝),则可以按如下所示简单地删除该规则:

$ sudo iptables -D INPUT -p icmp --icmp-type echo-request -j REJECT

Remove Rules from iptables with -D command option

-D命令开关用于删除规则。

您可以使用以下命令删除添加到iptables防火墙的所有自定义规则:

$ sudo iptables -F

您已经了解了iptables实用程序中的添加和删除规则如何使您可以控制防火墙的工作方式。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8591.html,未经允许,请勿转载。