CentOS7 也就是常说的 linux7,默认防火墙服务名称是 firewalld,不再沿用旧版本 iptables 服务,关闭分为临时关闭和永久关闭两种方式,临时关闭只在当前运行状态生效,服务器重启之后防火墙会自动重新启动,永久关闭是禁用开机自启,重启之后防火墙也不会自动拉起,做测试环境经常需要关闭防火墙,但是生产环境不建议直接全部关闭,优先选择放行端口,直接关闭会让主机暴露在网络风险当中。需要关闭 firewalld 的原因,一般是部署业务的时候,业务端口无法访问,排查发现是 firewalld 拦截流量,很多新手会直接选择关闭防火墙快速解决连通性问题,CentOS7 默认启用 firewalld,底层仍然是调用 iptables 规则,只是换成 systemd 托管的服务管理模式,和 CentOS6 的 service iptables stop 管理方式不一样,这也是很多老运维切换到 linux7 最容易踩坑的点。操作的时候,先确认当前防火墙运行状态,再根据需求选择临时关闭或者永久关闭,操作完成之后校验状态,确认命令执行成功,同时留意是否还有 iptables 或者其他安全策略残留拦截。
核心命令对照表
| 操作类型 | 命令 | 说明 |
|---|---|---|
| 查看防火墙状态 | systemctl status firewalld | 查看运行状态是否 active running |
| 临时关闭防火墙 | systemctl stop firewalld | 本次运行停止,重启自动恢复 |
| 永久关闭防火墙 | systemctl disable firewalld | 取消开机自启,重启不再启动 |
| 同时临时停止加永久禁用 | systemctl stop firewalld 加 systemctl disable firewalld | 最常用完整操作 |
| 重新开启防火墙 | systemctl start firewalld | 恢复防火墙运行 |
| 恢复开机自启 | systemctl enable firewalld | 重新设置开机启动 |
详细操作流程
第一步 登录服务器,切换 root 权限,普通用户执行这类系统服务操作需要 sudo 或者 root 账号。
第二步 执行 systemctl status firewalld,查看输出,如果显示 active running 代表防火墙正在运行,如果是 inactive dead 代表已经关闭。
第三步 如果只需要临时停止,执行 systemctl stop firewalld,执行完再次 status 确认状态变成 inactive dead。
第四步 如果需要永久关闭,继续执行 systemctl disable firewalld,执行成功会提示移除 firewalld 开机启动相关链接。
第五步 完成之后再次执行 status 校验,确认状态,还可以重启服务器验证永久关闭是否生效。
补充重要知识点
第一 底层 iptables 残留,firewalld 停止之后,之前加载的部分 iptables 规则不一定全部清空,如果依旧存在拦截,可以执行 iptables F 清空规则,但是清空 iptables 同样属于高风险操作。
第二 还有 selinux,很多人关闭防火墙之后业务依旧不通,会误以为防火墙没有关掉,实际是 selinux 策略拦截,selinux 和 firewalld 是两套独立安全机制,不要混淆。
第三 替代方案,正式业务推荐不要关闭防火墙,使用 firewall cmd add port 放行指定业务端口,同时设置永久放行,兼顾安全和业务连通。
第四 系统差异,CentOS7 RHEL7 都是这套 firewalld 管理方式,其他发行版比如 ubuntu7 不存在这个 firewalld 默认服务,这个操作只针对 RHEL7 系 linux7。
【常见问题】
问题 1 linux7 防火墙怎么关闭,临时关闭和永久关闭有什么区别
回答 1 linux7 防火墙怎么关闭,临时关闭是 systemctl stop firewalld,只是停止当前服务,重启服务器防火墙会自动启动,永久关闭是 systemctl disable firewalld,取消开机自启,重启之后防火墙不会自动运行。
问题 2 linux7 防火墙怎么关闭,关闭之后业务还是不通是什么原因
回答 2 linux7 防火墙怎么关闭,关闭 firewalld 之后业务依旧不通,大概率不是防火墙本身,有可能是 selinux 策略拦截,或者 iptables 残留规则,也有可能是云服务器额外的安全组限制。
问题 3 linux7 防火墙怎么关闭,能不能直接删除 firewalld 软件包
回答 3 linux7 防火墙怎么关闭,技术上可以卸载 firewalld 软件包,但是不推荐,优先使用 systemctl disable 禁用,卸载软件包会破坏系统依赖,后续恢复防火墙会比较麻烦。
【免责申明】
以上内容为 linux7 防火墙操作科普,关闭防火墙会降低主机网络安全防护能力,生产环境请谨慎操作,优先使用端口放行方案,命令适用于 RHEL7 CentOS7 系列系统,不同版本参数可能存在差异,操作前建议备份相关配置。
本文来自作者[人间烟火解码]投稿,不代表万里行信息网立场,如若转载,请注明出处:https://www.wlx315.cn/kpjh/202611/7973.html
评论列表(4条)
我是万里行信息网的签约作者“人间烟火解码”!
希望本篇文章《linux7 防火墙怎么关闭 CentOS7 防火墙操作详解》能对你有所帮助!
本站[万里行信息网]内容主要涵盖:生活百科,小常识,生活小窍门,知识分享
本文概览:CentOS7 也就是常说的 linux7,默认防火墙服务名称是 firewalld,不再沿用旧版本 iptables 服务,关闭分为临时关闭和永久关闭两种方式,临时关闭只在当前运行状态生效,服务器重启之后防火墙会自动重新启动,永久关闭是禁用开机自启,重启之后防火墙也不会自动拉起,做测试环境经常需要关闭防火墙,但是生产环境不建议直接全部关闭,优先选择放行端口,直接关闭会让主机暴露在网络风险当中。需要关闭 firewalld 的原因,一般是部署业务的时候,业务端口无法访问,排查发现是 firewalld 拦截流量,很多新手会直接选择关闭防火墙快速解决连通性问题,CentOS7 默认启用 firewalld,底层仍然是调用 iptables 规则,只是换成 systemd 托管的服务管理模式,和 CentOS6 的 service iptables stop 管理方式不一样,这也是很多老运维切换到 linux7 最容易踩坑的点。操作的时候,先确认当前防火墙运行状态,再根据需求选择临时关闭或者永久关闭,操作完成之后校验状态,确认命令执行成功,同时留意是否还有 iptables 或者其他安全策略残留拦截。