查看目前个链路防火墙规则:

iptables -L -n

在这里插入图片描述

在Centos6中使用iptables作为防火墙,默认情况防火墙拒绝所有来源的输入。

注意:列表的中顺序代表防火墙规则执行的顺序,按顺序依次执行。

若现在我需要暴露30000端口,使用如下规则:

iptables -A INPUT  -p tcp --dport 30000 -j ACCEPT
  • -A 表示 add 添加新规则,添加的规则会追加到列表的最后, INPUT 表表示数据进入时生效。
  • -p 协议,tcp
  • ---dport 目标端口
  • -j 执行操作,ACCEPT表示放行。

执行后,新的链路表如下:
在这里插入图片描述

此时我们通过同一个局域网的主机访问该端口时,发现无法连通。

这是由于 REJCET ALL 的规则在我们的添加的30000端口前生效了,导致添加的30000端口无效。

如何解决?

把我们添加的新规则插入到REJECT之前,使用insert 而不是 append的方式执行命令

iptables -I INPUT  -p tcp --dport 30000 -j ACCEPT

默认插入到列表的第一条位置。

在这里插入图片描述
再次访问就可以发现,现在端口已经可以访问。

更多配置见: http://linux-training.be/networking/ch14.html

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐