CentOS云服务器基线检测:SSH与防火墙必查项
文章分类:更新公告 /
创建时间:2025-07-26
CentOS云服务器安全运维中,SSH与防火墙是核心防线。前者是远程管理的“数字门禁”,后者是网络流量的“安全门卫”,二者配置是否合规直接决定云服务器的抗攻击能力。本文梳理基线检测必查配置项,助你快速排查风险,提升云服务器安全性。
SSH配置:筑牢远程访问防线
打个比方,SSH就像云服务器的“数字门禁”,只有持有正确凭证(密钥或密码)的人才能进入。基线检测时,这三个配置必须重点检查:
1. 修改默认端口
默认SSH端口是22,这是攻击者的“重点关照对象”。建议将端口调整为1024-65535之间的非常用值(如12345)。具体操作:编辑`/etc/ssh/sshd_config`文件,找到`Port`行,修改为自定义端口后保存。最后执行`systemctl restart sshd`重启服务生效。
2. 禁用root直接登录
root账户拥有最高权限,一旦被破解后果严重。在`/etc/ssh/sshd_config`中找到`PermitRootLogin`,将值改为`no`(默认是`yes`)。后续登录需用普通账户,再通过`sudo`命令执行特权操作,降低权限泄露风险。
3. 启用密钥认证
密码易被暴力破解,密钥认证更安全。检测时需确认`/etc/ssh/sshd_config`中`PubkeyAuthentication`为`yes`,同时检查用户`.ssh/authorized_keys`文件是否已添加可信公钥。若未配置,建议生成RSA密钥对(`ssh-keygen -t rsa`),并将公钥上传至服务器对应文件。
防火墙配置:管控网络流量入口
CentOS常用Firewalld作为防火墙,相当于云服务器的“流量安检门”。基线检测需关注以下三点:
1. 确认防火墙运行状态
执行`systemctl status firewalld`,若显示`active (running)`说明已启动;若未启动,用`systemctl start firewalld`临时启动,并用`systemctl enable firewalld`设置开机自启,避免重启后失效。
2. 严格管控开放端口
根据业务需求开放必要端口,例如Web服务需开放80(HTTP)和443(HTTPS)。操作命令:
`firewall-cmd --permanent --add-port=80/tcp`
`firewall-cmd --permanent --add-port=443/tcp`
完成后执行`firewall-cmd --reload`使配置生效。注意:非必要端口(如22以外的远程管理端口)建议关闭,减少攻击面。
3. 核查现有规则清单
执行`firewall-cmd --list-all`查看当前规则,重点检查是否有冗余或高危配置。例如,是否开放了未使用的3306(MySQL)、5432(PostgreSQL)端口?是否存在“允许所有IP访问”的宽松规则?发现问题及时通过`firewall-cmd --permanent --remove-port=端口号/tcp`删除。
日常使用CentOS云服务器时,建议每周执行一次基线检测,结合自动备份功能(定期备份系统和数据),双重保障云服务器安全。无论是调整SSH端口还是优化防火墙规则,本质都是通过细节配置降低被攻击概率——安全运维无小事,把每个“必查项”落实到位,才能让云服务器更安心地为业务护航。