管理端口白名单收敛
把 SSH、RDP、数据库等管理端口的访问来源收敛到运维网段,是落实访问控制与未授权接入防范最直接的措施:主机防火墙与边界设备只放行运维网段,其余来源丢弃。Linux 上常用 firewalld 富规则或 iptables 实现。风险集中在规则顺序上——必须先加白名单再摘掉通用放行,否则一次误操作就会把自己锁在门外。
基本信息
| 适用对象 | SSH 22、RDP 3389、MySQL 3306、Redis 6379 等 |
|---|---|
| 实现位置 | 主机防火墙 + 边界设备策略,两层都要做 |
| 目标状态 | 仅运维网段可访问,其余来源丢弃 |
| 变更要求 | 先加白名单再删通用规则,全程走变更单 |
| 回退手段 | 保留已登录会话、控制台或带外管理通道 |
| 留证方式 | 规则列表截图与变更记录 |
典型使用场景
- 等保整改:管理端口对公网或全网可访问
- 云主机安全组与主机防火墙的双层来源收敛
- 数据库、缓存与管理后台的来源限制
- 临时放行到期后的回收,把一次性规则改回白名单
- 应急加固:发现持续爆破后先收缩来源再处置
firewalld 富规则
firewalld 富规则
# 允许运维网段访问 22 端口
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=10.10.0.0/24 port port=22 protocol=tcp accept'
# 确认白名单生效后,再移除通用放行的 ssh 服务
firewall-cmd --permanent --remove-service=ssh
# 重载并核对最终规则
firewall-cmd --reload
firewall-cmd --list-rich-rulesiptables 等效写法
iptables 等效写法
# 白名单放行规则写在前面
iptables -A INPUT -p tcp --dport 22 -s 10.10.0.0/24 -j ACCEPT
# 其余来源直接丢弃,放在放行规则之后
iptables -A INPUT -p tcp --dport 22 -j DROP
# 带行号查看,确认规则顺序符合预期
iptables -L INPUT -n --line-numbers规则顺序与效果
| 顺序 | 规则 | 效果 |
|---|---|---|
| 1 | 白名单来源 ACCEPT | 运维网段可正常登录 |
| 2 | 其余来源 DROP | 扫描与爆破流量被丢弃 |
| 3 | 默认策略 DROP | 兜底,防止漏放行端口 |
变更前保留一个已登录会话,并确认控制台或带外通道可用;顺序写错就等于运维中断,恢复要跑机房。
主机防火墙只覆盖本机:边界设备与安全组策略不收敛的话,流量从其他网络路径仍然可以到达目标端口。