CentOS系统安全清理关键步骤
定期更新系统及软件包是安全清理的基础,可修复已知漏洞,降低被攻击风险。使用以下命令更新系统:
sudo yum update -y # CentOS 7及以下版本
# 或(CentOS 8及以上版本)
sudo dnf update -y
sudo yum autoremove -y # 或 sudo dnf autoremove -y
sudo yum clean all # 或 sudo dnf clean all
/tmp和/var/tmp目录下的临时文件(这些文件可能包含敏感信息或被恶意利用)。sudo rm -rf /tmp/* /var/tmp/*
journalctl截断超过2周的日志,或通过find命令删除超过30天的.log文件。sudo journalctl --vacuum-time=2weeks # 截断2周前的日志
sudo find /var/log -type f -name "*.log" -mtime +30 -exec rm -f {} \; # 删除30天前的日志
adm、lp、games等),保留root、sshd、httpd等核心账户。sudo userdel -r username # 删除用户及主目录(替换username为目标用户)
/etc/ssh/sshd_config文件,设置PermitRootLogin no,防止root账户被暴力破解。sudo sed -i 's/PermitRootLogin yes/PermitRootLogin no/g' /etc/ssh/sshd_config
sudo systemctl restart sshd
/etc/login.defs,设置最小密码长度(如PASS_MIN_LEN 10),并要求包含大小写字母、数字和特殊字符。telnet、vsftpd、NetworkManager等)。sudo systemctl list-unit-files --type=service | grep enabled
sudo systemctl stop service_name # 替换service_name为目标服务
sudo systemctl disable service_name
firewalld开放必要端口(如HTTP的80端口、HTTPS的443端口),拒绝其他非法访问。sudo firewall-cmd --permanent --add-service=http --add-service=https # 开放服务
sudo firewall-cmd --reload # 重新加载防火墙规则
Enforcing模式(默认开启),增强系统访问控制。sudo setenforce 1 # 临时开启
sudo sed -i 's/SELINUX=disabled/SELINUX=enforcing/g' /etc/selinux/config # 永久生效
sudo yum install lynis -y
sudo lynis audit system
sudo yum install clamav -y
sudo freshclam # 更新病毒库
sudo clamscan -r / # 递归扫描根目录
rsync或专业备份工具(如Veeam)备份重要数据(如/home、/etc、/var/www),存储到异地或云存储。sudo rsync -avz /path/to/source /path/to/backup # 示例:同步数据到备份目录
htop(查看进程)、nagios(监控服务器状态)或zabbix(集中监控)工具,实时监控系统资源使用情况及异常行为。rm -rf命令时,确认目标路径正确,避免删除系统关键文件。/var/log/secure、/var/log/messages)及时发现异常。