firewall-cmd --permanent --zone=public --add-port=3306/tcp 添加多个端口
时间: 2024-12-12 19:30:32 浏览: 6
firewalld 是 Linux 系统中常用的一个动态防火墙管理工具,它允许你临时或永久地添加或删除规则来控制进出系统的网络流量。当你需要在`public`安全区域打开 3306 端口外,还可以添加其他端口,例如 80 和 443(HTTP 和 HTTPS)的命令应该类似这样:
```bash
# 打开 3306 端口(MySQL)
firewall-cmd --permanent --zone=public --add-port=3306/tcp
# 打开 80 端口(HTTP)
firewall-cmd --permanent --zone=public --add-port=80/tcp
# 打开 443 端口(HTTPS)
firewall-cmd --permanent --zone=public --add-port=443/tcp
# 保存更改(确保运行此命令生效)
firewall-cmd --reload
```
这样,`firewalld`就会在下次重启后自动启用这三个新增的端口规则,使得它们对外部网络开放。注意每个命令都需要单独运行,并在最后使用`--reload`来实际应用配置。
相关问题
先执行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` 命令时需要指定需要移除限制的端口号,否则会移除所有端口的限制。
linux命令firewall-cmd --zone=public --add-port=12345/tcp --permanent 提示INVALID_ZONE:public怎么解决
这个错误提示是因为防火墙中不存在名为public的区域。你需要先确认你的防火墙中有哪些可用的区域,可以通过以下命令列出:
```
firewall-cmd --get-zones
```
如果没有public区域,可以选择其他可用的区域进行端口的添加。例如,如果你想将端口添加到默认区域,可以使用以下命令:
```
firewall-cmd --add-port=12345/tcp --permanent
```
如果你需要创建新的区域,可以使用以下命令:
```
firewall-cmd --permanent --new-zone=your_zone_name
```
然后你可以通过修改新区域的设置,将端口添加到该区域。
阅读全文