插件窝 干货文章 Linux服务器安全检查清单:确保您的服务器免受攻击

Linux服务器安全检查清单:确保您的服务器免受攻击

sudo bash 安全 检查 453    来源:    2025-04-12

以下是一份详细的Linux服务器安全检查清单,涵盖关键安全配置和最佳实践,帮助您加固服务器防御:


一、系统更新与补丁管理

  1. 系统更新

    # CentOS/RHEL
    sudo yum update -y && sudo yum upgrade -y
    
    # Ubuntu/Debian
    sudo apt update && sudo apt upgrade -y
    
    • 启用自动安全更新(可选): ```bash

    Ubuntu/Debian

    sudo apt install unattended-upgrades sudo dpkg-reconfigure unattended-upgrades ```

  2. 内核更新后重启检查

    • 确认当前内核版本: bash uname -r
    • 检查是否有待重启生效的更新: bash sudo needs-restarting -r # RHEL/CentOS

二、账户与认证安全

  1. 密码策略

    • 修改 /etc/login.defsPASS_MAX_DAYS 90 PASS_MIN_DAYS 7 PASS_WARN_AGE 14
    • 安装libpam-pwquality强化密码复杂度: bash sudo apt install libpam-pwquality # Debian/Ubuntu 编辑 /etc/security/pwquality.conf
  2. 禁用root SSH登录

    sudo sed -i 's/^PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
    sudo systemctl restart sshd
    
  3. SSH密钥认证

    • 强制使用密钥登录: PasswordAuthentication no PubkeyAuthentication yes
    • 限制SSH用户: AllowUsers your_username

三、服务与端口安全

  1. 关闭不必要的服务

    sudo systemctl list-unit-files --state=enabled
    sudo systemctl disable <unused_service>
    
  2. 防火墙配置(UFW示例)

    sudo ufw enable
    sudo ufw allow 22/tcp  # 仅允许SSH
    sudo ufw deny from 192.168.1.100  # 封禁可疑IP
    
  3. 检查开放端口

    sudo ss -tulnp
    sudo netstat -tuln  # 旧版系统
    

四、文件系统与权限

  1. 关键目录权限

    sudo chmod 700 /etc/cron* /etc/ssh/ssh_host_*_key
    sudo chown root:root /etc/passwd /etc/shadow
    sudo chmod 644 /etc/passwd
    sudo chmod 600 /etc/shadow
    
  2. 查找SUID/SGID文件

    find / -perm /4000 -o -perm /2000 -type f -exec ls -ld {} \; 2>/dev/null
    
  3. 监控敏感文件变更

    sudo apt install aide  # 入侵检测工具
    sudo aideinit
    

五、日志与监控

  1. 集中化日志(可选)

    • 配置rsyslog转发到日志服务器。
  2. 关键日志检查

    sudo tail -100 /var/log/auth.log  # SSH登录记录
    sudo journalctl -u sshd --no-pager -n 50
    
  3. 安装入侵检测工具

    sudo apt install fail2ban  # 防暴力破解
    

六、高级防护

  1. SELinux/AppArmor

    • 确保SELinux处于 enforcing 模式: bash sudo setenforce 1 sudo getenforce
  2. 内核参数加固 编辑 /etc/sysctl.conf

    net.ipv4.conf.all.rp_filter=1
    net.ipv4.icmp_echo_ignore_broadcasts=1
    kernel.exec-shield=1
    

    生效配置:

    sudo sysctl -p
    

七、定期任务

  1. 安全扫描

    sudo apt install lynis  # 安全审计工具
    sudo lynis audit system
    
  2. 备份验证

    • 测试备份恢复流程,确保关键数据(如/etc、数据库)可恢复。

八、应急响应

  1. 可疑进程检查

    ps auxf | grep -i "crypto\|miner"
    top -c -o %CPU
    
  2. 网络连接分析

    sudo lsof -i -n -P
    sudo netstat -antp | grep ESTABLISHED
    

最后建议
- 使用CIS Benchmark进行合规性检查。
- 对暴露在公网的服务实施Web应用防火墙(WAF)
- 考虑多因素认证(MFA)提升SSH安全性。

通过以上步骤,您的Linux服务器将显著提升对抗常见攻击的能力。根据实际需求调整配置,并定期复查安全策略。