要在CentOS 7中使用firewalld实现拒绝外网访问某个端口,可以按照以下步骤进行操作:
1、查看已开放的端口
首先,您需要查看已经开放的端口,可以使用以下命令:
firewall-cmd --list-ports
2、拒绝外网访问指定端口
假设您要拒绝外网访问TCP端口80,可以使用以下命令:
firewall-cmd --add-rich-rule='rule family="ipv4" source address="!192.168.0.0/16" port protocol="tcp" port="80" reject'
上述命令将添加一个富规则(rich rule),以拒绝所有不是来自192.168.0.0/16子网的IP地址的TCP流量访问端口80。这将禁止来自外网的访问,但允许来自内部网络的访问。
3、永久保存规则
要使规则在系统重启后仍然生效,可以将规则永久保存到firewalld中,可以使用以下命令:
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="!192.168.0.0/16" port protocol="tcp" port="80" reject'
注意,必须使用 --permanent 选项将规则永久保存到配置文件中。如果没有使用该选项,则规则将在系统重启后消失。
4、重载firewalld
保存规则后,需要重载firewalld以使其生效,可以使用以下命令:
firewall-cmd --reload
完成上述步骤后,您应该已经成功使用firewalld拒绝了外网访问指定的端口。