如果使用 firewall-cmd 打开一个端口供公众使用,我想将此端口限制为一个特定的 IP,我在这个SITE上找到了答案。
我使用以下内容打开它:
$ firewall-cmd --permanent --zone=public --add-port=10050/tcp
$ firewall-cmd --reload
现在使用我发现的信息中的信息,我想将此端口的访问限制为特定的 IP 地址。我需要先从公共访问中删除此端口吗?
或者我可以只添加如下的新规则,这将为我解决问题吗?
$ firewall-cmd --new-zone=special
$ firewall-cmd --permanent --zone=special --add-rich-rule='
rule family="ipv4"
source address=”123.1.1.1"
port protocol="tcp" port="10050" accept'
我尝试了以下方法:
$ firewall-cmd --zone=public --remove-port=10050/tcp
$ firewall-cmd --reload
但是当我运行以下命令时:
$ firewall-cmd --list-ports
10050/tcp
仍然显示。
请理解我对服务器端配置并不太熟悉。
Soultion :不要忘记--runtime-to-permanent
$ firewall-cmd --zone=public --remove-port=10050/tcp
$ firewall-cmd --runtime-to-permanent
$ firewall-cmd --reload
解决方案:不要忘记--runtime-to-permanent
将 12345 替换为您要删除的端口。
按照这些步骤,你会没事的:
请运行这些步骤
您的 iptables firewalld 将不会显示 service telnet
问候
所有这些答案在我的 Fedora 服务器上都是错误的。我的解决方案是:
请注意,该命令
firewall-cmd --permanent --remove-port=8081/tcp
引发错误“ firewall-cmd: error: unrecognized arguments: –-remove-port=8081/tcp ”。