在Rocky Linux中通过firewalld限制SSH访问的核心步骤如下:
- 启用firewalld:
systemctl enable --now firewalld
- 验证默认区域:
firewall-cmd --get-default-zone
(通常为public) - 添加富规则限制IP:
firewall-cmd --permanent --zone=public \ --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" service name="ssh" accept'
- 禁止其他访问:
firewall-cmd --permanent --zone=public \ --add-rich-rule='rule family="ipv4" service name="ssh" reject'
- 重载配置:
firewall-cmd --reload
关键注意:
- 执行顺序必须先允许再拒绝,富规则按添加顺序生效
- 使用
--permanent
保证重启后生效,但需配合--reload
立即应用 - 可通过
firewall-cmd --list-all-zones
验证规则层次结构 - 强烈建议在物理控制台操作,避免规则错误导致SSH连接中断