网站首页 > 技术教程 正文
作为服务器安全的第一道防线,防火墙设置是 Linux 运维的核心技能。今天手把手教你玩转 CentOS 6/7 防火墙,从基础启停到端口精细化管理,附超详细实战范例,新手也能轻松上手!
一、防火墙服务基础操作:CentOS 6 vs 7 的区别
CentOS 7(firewalld 防火墙)
# 开启防火墙服务(开机不自动启动)
systemctl start firewalld.service
# 关闭防火墙(临时关闭,重启后恢复)
systemctl stop firewalld.service
# 重启防火墙(修改配置后必做)
service firewalld restart
CentOS 6(iptables 防火墙)
# 查看防火墙状态(关键!先确认是否运行)
service iptables status
# 开启防火墙(老旧服务器常用)
service iptables start
# 关闭防火墙(临时关闭,生产环境慎用)
service iptables stop
注意:CentOS 7 默认使用 firewalld,更灵活的图形化配置;CentOS 6 沿用 iptables,需手动编写规则,新手建议优先熟悉 firewalld。
二、不关闭防火墙!端口开放与管理实战
1. 单个端口开放(以 8080 为例)
# 永久开放端口(重启后生效)
sudo firewall-cmd --add-port=8080/tcp --permanent
# 立即生效配置(修改后必执行)
sudo firewall-cmd --reload
验证是否开放:
sudo firewall-cmd --query-port=8080/tcp # 输出yes即成功
2. 端口区间开放(8701-8705)
sudo firewall-cmd --permanent --add-port=8701-8705/tcp
sudo firewall-cmd --reload # 重载配置
3. 查看所有开启端口
sudo firewall-cmd --list-ports # 输出如"8080/tcp 8701-8705/tcp"
4. 关闭指定端口
# 永久关闭1935端口(生产环境操作前请确认业务)
firewall-cmd --zone=public --remove-port=1935/tcp --permanent
sudo firewall-cmd --reload # 生效修改
端口连接排查:查看 2181 端口被哪些 IP 连接:
netstat -ano | grep 2181 # 重点看Foreign Address列
三、高级规则:精准控制特定 IP 访问
1. 允许指定 IP 访问端口(例:1.1.1.1 访问 8082)
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="1.1.1.1" port protocol="tcp" port="8082" accept'
sudo firewall-cmd --reload # 生效规则
2. 限制所有 IP 访问端口(临时封锁 8082)
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="any" port protocol="tcp" port="8082" reject'
sudo firewall-cmd --reload # 立即生效
3. 取消限制(恢复默认访问)
firewall-cmd --remove-port=8082/tcp --permanent
sudo firewall-cmd --reload # 清除规则
规则逻辑解析:
- --zone=public:作用域为公共区域(默认配置)
- --permanent:永久生效,否则重启后失效
- rich-rule:高级规则,支持 IP / 端口组合条件
四、生产环境必看注意事项
- 端口开放原则:
- 非必要端口坚决关闭(减少攻击面)
- 开放前确认业务是否需要 TCP/UDP 协议(例:MySQL 用 3306/tcp,DNS 用 53/udp)
- 测试流程:
- 开放端口后,用本地工具(如 Postman)或远程服务器(telnet IP 端口)验证连通性
- 复杂规则建议先在测试环境演练,再同步到生产
- 日志排查:
# 查看firewalld日志(异常连接定位)
journalctl -u firewalld
五、命令速查表(建议收藏)
操作场景 | CentOS 7(firewalld)命令 | CentOS 6(iptables)命令 |
查看状态 | systemctl status firewalld | service iptables status |
开放单个端口 | firewall-cmd --add-port=端口/tcp --permanent | 需手动修改/etc/sysconfig/iptables |
查看所有开放端口 | firewall-cmd --list-ports | iptables -L -n -v |
限制特定 IP 访问 | --add-rich-rule 'source address=IP port=端口 accept' | 需编写iptables -A INPUT规则 |
掌握这些命令,就能在不影响服务器安全的前提下,灵活管理端口访问。建议新手先在虚拟机环境实操,熟悉后再应用到生产服务器。遇到问题别慌,用--query-port和日志工具逐步排查,安全配置就是这么简单!
如果觉得有用,记得点赞收藏~ 下期分享 Linux 日志分析技巧,关注我获取更多运维干货!
猜你喜欢
- 2025-06-23 Linux 操作系统不需要防病毒软件和防火墙的几个原因
- 2025-06-23 Linux防火墙——iptables原理介绍
- 2025-06-23 防火墙/路由器Linux发行版Devil-Linux
- 2025-06-23 五问 Linux 网络防火墙(四):nftables 的高效框架与数据结构
- 2025-06-23 linux防火墙过滤技术iptables的原理及操作命令详解
- 2025-06-23 Linux,操作系统,防火墙,Netfilter,命令及操作
- 2025-06-23 LINUX IPTABLES 防火墙配置(linux防火墙怎么配置)
- 2025-06-23 Linux安全之网络防火墙(linux防火墙在哪)
- 2025-06-23 linux系统相关防火墙iptables命令操作
- 2025-06-23 linux 防火墙基本命令(linux防火墙主要功能)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)