Centos7 防火墙状态查询以及开放端口

本文详细介绍了如何在CentOS 7中查看和管理防火墙状态,包括启动、停止、查询端口状态以及如何添加、删除和永久设置开放端口。适合防火墙初学者和系统管理员。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

提示:Centos7 防火墙状态查询以及修改

1.查看防火墙状态

查看防火墙状态 systemctl status firewalld
开启防火墙 systemctl start firewalld
关闭防火墙 systemctl stop firewalld
开启防火墙 service firewalld start
若遇到无法开启
先用:systemctl unmask firewalld.service
然后:systemctl start firewalld.service

2.查看防火墙开放端口

    查看想开的端口是否已开:firewall-cmd --query-port=6379/tcp
   添加指定需要开放的端口:firewall-cmd --add-port=123/tcp --permanent
   重载入添加的端口:firewall-cmd --reload
   查询指定端口是否开启成功:firewall-cmd --query-port=123/tcp
   移除指定端口:firewall-cmd --permanent --remove-port=123/tcp

### 在 CentOS 7 中配置 `firewall-cmd` 来添加白名单并开放指定端口 #### 使用 `--add-rich-rule` 参数设置 IP 白名单 为了允许来自特定 IP 地址或子网的流量,可以使用 rich-rules 功能。这使得能够更精细地控制哪些主机可以通过防火墙访问服务。 对于仅限于某个 IP 或者 CIDR 范围内的客户端连接到服务器上的 MySQL 数据库 (默认监听 TCP 的 3306),可执行如下命令: ```bash sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="3306" accept' --permanent ``` 上述指令会创建一条规则,让位于 IPv4 协议下的地址为 "192.168.1.100" 的设备能通过TCP协议向本地机器发送至目标端口为3306的数据包[^2]。 #### 添加单个端口或多个连续端口 如果要一次性开启几个相邻编号的端口,则可以用连字符分隔起始和结束值表示范围。比如下面的例子展示了怎样把 HTTP(S) 和 SSH 所需的所有必要入口都加入到公共区域中去: ```bash sudo firewall-cmd --zone=public --add-port=80-443/tcp --permanent # 同时增加HTTP(80), HTTPS(443) sudo firewall-cmd --zone=public --add-port=22/tcp --permanent # 增加SSH(22) ``` 这些更改同样适用于 UDP 流量;只需简单替换掉参数中的 `"tcp"` 字符串即可切换成其他传输层协议类型[^1]。 #### 应用变更与验证状态 完成以上任意一项修改之后记得调用 reload 方法使新的设定立即生效,并且利用 list 子命令确认当前活动配置项是否正确无误: ```bash sudo firewall-cmd --reload # 刷新规则集以便应用永久性的改动 sudo firewall-cmd --list-all # 展示选定区域内所有的现有策略详情 ``` 最后一步非常重要,因为只有这样才能确保所作的一切调整都被妥善记录下来并且可以在系统重新启动后继续保留其效力[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值