CentOS 7 防火墙小白入门教程

📌 温馨提示:
本文内容可能随时间变动而失效,请以页面显示的更新时间为准。
若内容已不准确或资源失效,欢迎留言或联系站长反馈修正。
⚠️ 免责声明:
本文仅供学习与参考,观点仅代表作者个人意见,与本站无关。
如有侵权问题,请立即联系我们处理,谢谢理解与支持。

🛡️ CentOS 7 防火墙入门教程(适合小白)

防火墙就像是一道大门,用来保护你的服务器不被陌生人随意访问。本教程将手把手教你如何在 CentOS 7 系统中使用 firewalld 防火墙。

以下为防火墙的基础介绍与常用命令,其中部分常用的命令已经封装到wd脚本中了,详见wd中防火墙管理。


✅ 1. 什么是防火墙?

防火墙是一种保护工具,用来控制网络访问。你可以:

  • 允许别人访问你想公开的端口(比如网页 80 端口)
  • 拒绝别人访问你不想暴露的端口(比如数据库 3306 端口)

CentOS 7 默认使用的防火墙叫 firewalld,它是基于区域(zone)和服务(service)来管理规则的。


🔧 2. 防火墙常用命令速查

目的命令
查看防火墙状态firewall-cmd --state
启动防火墙systemctl start firewalld
停止防火墙systemctl stop firewalld
设置开机自启systemctl enable firewalld
重启防火墙systemctl restart firewalld
重新加载配置firewall-cmd --reload

📦 3. 开启或关闭某个端口

示例:开放网页服务(80端口)

firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload

示例:关闭 80 端口

firewall-cmd --permanent --remove-port=80/tcp
firewall-cmd --reload

✅ --permanent 表示永久生效,不加这个就是临时的,下次重启就失效了。


📡 4. 开启常用服务(比开放端口更简单)

Firewalld 已内置一些服务名称,比如 httpsshftp,我们可以直接使用。

示例:开启 HTTP 和 SSH 服务

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=ssh
firewall-cmd --reload

查看当前开启的服务:

firewall-cmd --list-services

🚫 5. 拒绝或限制某个 IP

示例:阻止某个 IP(比如 192.168.1.100)访问

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" reject'
firewall-cmd --reload

🧱 6. 显示当前防火墙规则

firewall-cmd --list-all

你可以看到当前打开的端口、服务、所属区域等等。


🧠 7. 常见问题解答(FAQ)

Q1:我明明放行了端口,但还是访问不了?

可能是 SELinux 限制了访问。你可以先关闭 SELinux 试试看:

setenforce 0      # 临时关闭
getenforce # 查看当前状态(Enforcing 表示开启)

如果关闭后就能访问,说明是 SELinux 的问题,可以再研究如何配置它。


🔄 8. 一键清空防火墙规则(仅测试用)

⚠️ 小心使用!这会关闭所有防火墙保护!

firewall-cmd --permanent --remove-service=ssh
firewall-cmd --permanent --remove-service=http
firewall-cmd --permanent --remove-port=所有你开放过的端口
firewall-cmd --reload

或者直接停止防火墙(不推荐线上使用!

systemctl stop firewalld
systemctl disable firewalld

✅ 9. 最简单的配置示例(开放 Web 端口)

# 开启防火墙
systemctl start firewalld

# 设置开机启动
systemctl enable firewalld

# 永久开放 HTTP 和 HTTPS
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https

# 应用更改
firewall-cmd --reload

📚 10. 推荐学习资源

THE END
喜欢就支持一下吧
点赞10
评论 抢沙发

请登录后发表评论

    暂无评论内容