CentOS 6作为一款广泛使用的Linux发行版,其安全配置是企业级服务器运维的重要环节,尽管该系统已进入生命周期末期,但在特定场景下仍需通过严格的安全加固来保障系统稳定运行,以下从基础防护、服务优化、访问控制及日志审计四个维度,系统阐述CentOS 6的安全配置实践。

基础系统加固
基础安全配置是防护的第一道防线,需更新系统至最新补丁,通过yum update修复已知漏洞,并定期检查安全公告(如CentOS官方Security Advisory),禁用不必要的服务,执行chkconfig --list查看自启动服务,关闭telnet、rsh等明文传输服务,仅保留sshd、crond等必要服务,禁用telnet可通过chkconfig telnet off实现。
密码策略是关键环节,编辑/etc/login.defs文件,设置密码最小长度(如PASS_MIN_LEN 10)、密码有效期(PASS_MAX_DAYS 90)以及历史密码限制(PASS_MIN_DAYS 7),启用pam_cracklib模块强化密码复杂度要求,在/etc/pam.d/system-auth中添加password requisite pam_cracklib.so minlen=10 ucredit=-1 lcredit=-1 dcredit=-1,强制包含大小写字母、数字及特殊字符。
服务安全优化
SSH服务作为远程管理的核心,需进行严格配置,编辑/etc/ssh/sshd_config,禁用root直接登录(PermitRootLogin no),限制允许登录的用户(AllowUsers user1 user2),更改默认端口(如Port 2222),并禁用密码认证改用密钥认证(PasswordAuthentication no``PubkeyAuthentication yes``),配置完成后重启SSH服务:service sshd restart`。
对于Web服务(如Apache/Nginx),需以低权限用户运行(如创建www用户),关闭目录浏览(Options -Indexes),限制文件执行权限(<Directory "/var/www/html"> AllowOverride None Require all denied </Directory>),若使用MySQL,设置强密码并限制远程访问,仅允许本地连接(bind-address=127.0.0.1)。

访问控制与防火墙
网络访问控制需依赖防火墙与主机规则,启用iptables防火墙,通过iptables -A INPUT -p tcp --dport 22 -j ACCEPT仅开放必要端口(如SSH、HTTP),禁止其他入站流量,并保存规则:service iptables save,对于敏感服务,可结合TCP Wrappers(/etc/hosts.allow和/etc/hosts.deny)实现IP白名单控制,例如sshd: 192.168.1.0/24仅允许特定网段访问SSH。
文件系统权限方面,定期检查关键目录权限,如/etc(仅root可写)、/var/log(限制普通用户读取),使用chmod和chown修复异常权限,安装logwatch工具每日分析日志,及时发现异常登录(如Failed password)或暴力破解行为。
日志审计与入侵检测
完善的日志审计是事后追溯的基础,确保rsyslog服务正常运行,配置日志文件权限为600,并定期备份至远程服务器(如通过rsync同步),对于关键操作,可部署auditd服务,审计文件访问、命令执行等行为,例如auditctl -a exit,always -S all -F dir=/etc监控/etc目录变更。
安装fail2ban工具自动封禁恶意IP,针对SSH暴力破解,配置/etc/fail2ban/jail.local:[sshd] enabled=true maxretry=3 bantime=3600,当连续3次失败后自动封禁IP 1小时。

相关问答FAQs
Q1:CentOS 6已停止维护,如何应对安全漏洞?
A:虽然官方不再提供更新,但可通过第三方源(如EPEL、CentOS SCL)获取部分补丁,采用容器化部署(如Docker+旧版镜像)隔离风险,或升级至CentOS 7/8系统,对于无法升级的场景,需严格限制网络暴露,定期手动检查漏洞,并部署WAF(Web应用防火墙)缓解攻击。
Q2:如何检测系统是否被植入后门?
A:可通过以下方式排查:
- 检查异常进程:使用
ps aux | grep -v grep | awk '{print $11}' | sort | uniq -d查找重复进程名; - 扫查可疑文件:使用
rkhunter或chkrootkit工具扫描rootkit特征; - 审计定时任务:检查
crontab -l、/etc/crontab及/etc/cron.hourly/等目录,删除未知任务; - 分析日志:重点关注
/var/log/secure中的异常登录和/var/log/messages中的系统错误。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复