linux命令firewall-cmd --zone=public --add-port=12345/tcp --permanent 提示INVALID_ZONE:public怎么解决
时间: 2023-10-05 13:07:24 浏览: 238
这个错误提示是因为防火墙中不存在名为public的区域。你需要先确认你的防火墙中有哪些可用的区域,可以通过以下命令列出:
```
firewall-cmd --get-zones
```
如果没有public区域,可以选择其他可用的区域进行端口的添加。例如,如果你想将端口添加到默认区域,可以使用以下命令:
```
firewall-cmd --add-port=12345/tcp --permanent
```
如果你需要创建新的区域,可以使用以下命令:
```
firewall-cmd --permanent --new-zone=your_zone_name
```
然后你可以通过修改新区域的设置,将端口添加到该区域。
相关问题
先执行sudo firewall-cmd --zone=public --add-port=1-65535/tcp --permanent 后在执行 sudo firewall-cmd --zone=public --remove-port=22/tcp --permanent 并不会限制成功
执行 `sudo firewall-cmd --zone=public --add-port=1-65535/tcp --permanent` 命令会开放 1-65535 端口,执行 `sudo firewall-cmd --zone=public --remove-port=22/tcp --permanent` 命令会移除 22 端口的限制。这两个命令的作用是不同的,前者是开放所有端口,后者是移除 22 端口的限制。
如果你想限制某些端口,可以使用 `--remove-port` 命令来移除端口的限制,或者使用 `--add-port` 命令来添加需要限制的端口。例如,执行以下命令可以只开放 80 和 443 端口:
```
sudo firewall-cmd --zone=public --add-port=80/tcp --add-port=443/tcp --permanent
sudo firewall-cmd --zone=public --remove-port=22/tcp --permanent
sudo firewall-cmd --reload
```
这样就可以限制 22 端口,开放 80 和 443 端口。需要注意的是,执行 `--remove-port` 命令时需要指定需要移除限制的端口号,否则会移除所有端口的限制。
firewall-cmd --permanent --add-port=80/tcp、firewall-cmd --permanent --add-port=8090/tcp、firewall-cmd --reload分别是什么意思
这三个命令都是在 CentOS 7 中使用 firewall-cmd 工具配置防火墙规则的命令,具体含义如下:
1. `firewall-cmd --permanent --add-port=80/tcp`:该命令将开放 TCP 协议下的 80 端口,并将该设置永久化,即重启后该规则仍然有效。
2. `firewall-cmd --permanent --add-port=8090/tcp`:该命令将开放 TCP 协议下的 8090 端口,并将该设置永久化,即重启后该规则仍然有效。
3. `firewall-cmd --reload`:该命令会重新加载防火墙规则,使得之前通过 `firewall-cmd --permanent` 命令添加的规则生效,从而保证这些规则在系统重启后仍然能够生效。
需要注意的是,`firewall-cmd --permanent` 命令需要和 `firewall-cmd --reload` 命令一起使用,才能将规则永久化并生效,否则只会在当前会话中有效,重启后会失效。而且,在开放端口时,应该只开放必要的端口,以增强系统的安全性。
阅读全文