linux 系统关闭防火墙主要区分两套主流防火墙体系,CentOS7 及以上版本默认使用 firewalld,老版本 CentOS6 使用 iptables,Ubuntu Debian 默认很多是 ufw 防火墙,不同体系对应的关闭命令不一样,关闭操作分成临时关闭和永久关闭两种,临时关闭只是当前运行状态停止防火墙,系统重启之后防火墙又会自动启动,永久关闭是把防火墙服务设置成开机禁止自启,重启之后也不会启动,执行这类操作一般需要 root 权限,或者在命令前面加 sudo 提权,需要重点提醒,关闭防火墙会放开全部网络访问,降低系统安全防护,生产环境不建议直接完全关闭,优先推荐放行指定端口,只有测试环境临时调试的时候,才会选择 linux 怎么用命令关闭防火墙,操作完成之后还要校验防火墙状态,确认关闭是否成功。
firewalld 防火墙关闭操作 CentOS7 8 9
firewalld 是现在 CentOS 系列默认防火墙服务,使用 systemctl 进行服务管理
| 操作类型 | 命令 | 说明 |
|---|---|---|
| 临时关闭 | systemctl stop firewalld | 停止当前运行的 firewalld 服务,重启后恢复 |
| 永久关闭 | systemctl disable firewalld | 设置开机不启动 firewalld |
| 查看状态 | systemctl status firewalld | 查看防火墙是否正在运行 |
操作清单
1 切换 root 用户,或者执行 sudo 提权
2 执行临时关闭命令 systemctl stop firewalld
3 如果需要永久关闭,继续执行 systemctl disable firewalld
4 执行 systemctl status firewalld 校验,显示 inactive dead 就代表已经成功停止
5 也可以执行 firewall-cmd --state,正常关闭之后会提示 not running
补充说明,有些系统同时还保留 iptables 服务,就算关闭 firewalld,iptables 规则依然生效,这种情况需要额外处理 iptables 服务。
iptables 防火墙关闭操作 CentOS6 老系统
CentOS6 默认防火墙是 iptables,没有 firewalld 服务
| 操作类型 | 命令 | 说明 |
|---|---|---|
| 临时清空规则 | iptables -F | 清空所有 iptables 过滤规则,属于临时生效 |
| 永久关闭服务 | service iptables stop | 停止 iptables 服务 |
| 禁止开机启动 | chkconfig iptables off | 设置 iptables 开机不自启 |
操作清单
1 执行 service iptables stop 停止服务
2 执行 chkconfig iptables off 关闭开机自启
3 执行 service iptables status 查看状态,确认已经停止
注意 iptables -F 只是清空规则,不等于停止服务,如果服务仍然开机自启,重启之后原有规则还会重新加载。
ufw 防火墙关闭操作 Ubuntu Debian
Ubuntu Debian 默认防火墙工具是 ufw,也就是 Uncomplicated Firewall,底层仍然是 iptables
| 操作类型 | 命令 | 说明 |
|---|---|---|
| 临时关闭 | ufw stop | 停止 ufw 防火墙 |
| 永久关闭 | ufw disable | 关闭 ufw 并且取消开机自启 |
| 查看状态 | ufw status | 查看防火墙状态,显示 inactive 就是关闭成功 |
操作清单
1 执行 sudo ufw disable,这个命令一步完成关闭并且取消开机启动
2 执行 sudo ufw status 校验状态
3 如果只是想临时停止,使用 sudo ufw stop
补充,ufw 开启命令是 ufw enable,后续如果需要重新打开防火墙可以执行这个命令。
关闭防火墙之后校验与风险说明
校验清单
1 使用对应状态查询命令确认防火墙状态
2 测试端口连通性,从其他主机 telnet 或者 nc 测试业务端口,确认端口已经可以访问
3 检查系统日志,确认防火墙服务没有自动拉起
风险说明
linux 怎么用命令关闭防火墙之后,所有端口对外暴露,容易遭受扫描攻击,暴力破解,病毒入侵,正式业务服务器,推荐保留防火墙,使用 firewall-cmd 或者 ufw 添加放行端口规则,不要直接整体关闭,等保合规场景一般不允许直接关闭防火墙,这点运维需要重点留意。
常见排错
1 执行关闭命令提示权限不足,没有加 sudo 或者不是 root 用户
2 关闭 firewalld 之后,还有 nftables 或者 iptables 残留规则拦截流量,新版内核默认 nftables,需要额外清空 nft 规则
3 系统里面同时存在 firewalld 和 ufw,两个防火墙服务冲突,只关闭其中一个,另一个仍然拦截网络
总结,linux 怎么用命令关闭防火墙,先确认当前系统使用的是 firewalld,iptables 还是 ufw,临时关闭只停止服务,永久关闭还要关闭开机自启,优先建议放行端口代替整体关闭防火墙,避免安全风险,操作完成一定要查询状态验证结果。
【常见问题】
问题 1 linux 怎么用命令关闭防火墙之后重启又自动打开怎么办
回答 1 linux 怎么用命令关闭防火墙之后重启自动打开,是因为只执行了临时 stop 停止服务,没有执行 disable 关闭开机自启,需要额外执行 disable 命令,把防火墙服务设置开机禁用,才能让 linux 怎么用命令关闭防火墙永久生效。
问题 2 linux 怎么用命令关闭防火墙还是访问不了端口是什么原因
回答 1 linux 怎么用命令关闭防火墙之后依旧无法访问端口,不一定是防火墙拦截,可能是业务程序本身没有监听端口,服务没有启动,或者系统还有 nftables iptables 残留规则,也有可能云服务器还有云平台安全组,云安全组独立于系统防火墙,就算 linux 怎么用命令关闭防火墙,安全组依然会拦截流量。
问题 3 CentOS 和 Ubuntu linux 怎么用命令关闭防火墙命令可以通用吗
回答 3 不可以通用,CentOS 默认是 firewalld,关闭命令是 systemctl stop firewalld,Ubuntu 默认是 ufw,关闭命令是 ufw disable,两套工具名称和命令语法不一样,做 linux 怎么用命令关闭防火墙操作前,要先确认当前发行版对应的防火墙组件。
问题 4 linux 怎么用命令关闭防火墙会不会影响已经配置好的端口规则
回答 1 linux 怎么用命令关闭防火墙的时候,防火墙服务停止,已经写好的端口放行规则不会被删除,只是不再生效,如果后续重新开启防火墙,原有规则还会继续加载,如果想彻底删除规则,需要单独执行清空规则命令,不要和 linux 怎么用命令关闭防火墙混淆。
【免责申明】
本文 linux 怎么用命令关闭防火墙相关操作教程仅用于学习参考,关闭防火墙会降低系统安全防护能力,生产环境请谨慎操作,优先采用端口放行方案,因自行关闭防火墙导致系统被攻击业务异常等损失,由操作者自行承担全部责任。


