在CentOS服务器上防范恶意软件需要多层次的安全策略。以下是专业级的防护方案,结合系统加固和防病毒工具的使用:
- 保持系统更新:
sudo yum update -y && sudo yum upgrade -y
sudo yum install epel-release -y
- ClamAV(开源方案):
sudo yum install clamav clamd clamav-update -y
sudo freshclam # 更新病毒库
sudo systemctl enable --now clamd@scan
# 配置自动更新
sudo sed -i '/Example/d' /etc/freshclam.conf
sudo echo "Checks 4" >> /etc/freshclam.conf
# 设置定期扫描
echo "0 3 * * * root /usr/bin/clamscan -r / --exclude-dir=/sys/ --quiet --infected" | sudo tee /etc/cron.daily/clamscan
# 使用inotify监控关键目录
sudo yum install inotify-tools -y
nohup inotifywait -m -r -e create,modify /etc /var/www /home |
while read path action file; do
clamscan "$path$file" --quiet || echo "Infected: $path$file"
done &
sudo yum install rkhunter chkrootkit -y
sudo rkhunter --update
sudo rkhunter --propupd
sudo rkhunter --check --sk
# 安装AIDE
sudo yum install aide -y
sudo aide --init
sudo mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
sudo setenforce 1
sudo sed -i 's/SELINUX=permissive/SELINUX=enforcing/' /etc/selinux/config
# 安装fail2ban防暴力破解
sudo yum install fail2ban -y
sudo systemctl enable --now fail2ban
# 安装logwatch
sudo yum install logwatch -y
echo "/usr/sbin/logwatch --output mail --mailto admin@example.com --detail high" | sudo tee /etc/cron.daily/00logwatch
# 创建应急工具包
sudo yum install busybox statically-linked-tools -y
mkdir /root/emergency_kit && cd /root/emergency_kit
curl -O https://www.kernel.org/pub/linux/utils/util-linux/v2.36/util-linux-2.36.tar.gz
专业建议:
1. 实施最小权限原则,所有服务以非root用户运行
2. 关键目录设置不可变属性:chattr +i /etc/passwd /etc/shadow
3. 定期进行安全审计:sudo lynis audit system
4. 考虑部署HIDS解决方案如OSSEC
5. 重要服务器建议部署EDR解决方案
日志分析技巧:
# 快速分析可疑活动
grep -E 'Invalid user|Failed password|attack' /var/log/secure
ausearch -m execve -ts today | grep -v "/usr/bin"
以上方案实施后,建议每季度进行渗透测试,并保持安全策略的动态调整。对于生产环境,应考虑部署SIEM系统进行集中式日志分析。