温馨提示×

如何防范linux exploit

小樊
37
2026-09-09 14:27:04
栏目: 智能运维

防范 Linux 漏洞利用(exploit)需要从系统加固、权限控制、漏洞管理、运行时防护等多个层面入手。下面按“实用优先级”给你一份相对系统的防范指南。


一、基础系统加固

1. 及时打补丁(最重要)

  • 开启自动安全更新:
    • Debian/Ubuntu:
      sudo apt install unattended-upgrades
      sudo dpkg-reconfigure unattended-upgrades
      
    • RHEL/CentOS:
      sudo dnf update --security
      
  • 定期查看:
    sudo apt list --upgradable
    

2. 最小安装原则

  • 不安装无关服务(FTP、Telnet、NFS 等)
  • 关闭不必要的端口:
    ss -tulnp
    

3. 防火墙

  • 使用 ufwfirewalld
sudo ufw enable
sudo ufw default deny incoming
sudo ufw allow 22/tcp

二、账户与权限安全

4. 禁用 root 远程登录

编辑 /etc/ssh/sshd_config

PermitRootLogin no

并重启 SSH:

sudo systemctl restart sshd

5. 使用密钥登录

ssh-keygen -t ed25519

禁用密码登录:

PasswordAuthentication no

6. 最小权限原则

  • 不用 root 跑业务
  • 使用 sudo 精确授权
  • 检查 SUID/SGID 文件:
find / -perm -4000 -o -perm -2000 2>/dev/null

三、内核与漏洞利用防护

7. 开启内核安全机制

确保以下机制启用:

  • ASLR
    cat /proc/sys/kernel/randomize_va_space
    # 应为 2
    
  • Exec Shield / NX
  • SELinux / AppArmor
    • RHEL:SELinux(enforcing)
    • Ubuntu:AppArmor

8. 禁止加载危险模块

例如:

echo "install dccp /bin/true" >> /etc/modprobe.d/disable.conf

9. 使用 grsecurity / PaX(高级)

适合高安全场景(如服务器、云环境)


四、运行时防护

10. 使用 Fail2Ban

防止暴力破解:

sudo apt install fail2ban

11. 审计与监控

  • auditd
  • osquery
  • rkhunter / chkrootkit
sudo apt install rkhunter
sudo rkhunter --check

12. 容器/虚拟化隔离

  • 使用 Docker + seccomp
  • 避免特权容器:
docker run --security-opt no-new-privileges

五、常见 Exploit 类型与对应防范

Exploit 类型 防范方式
本地提权 及时内核补丁 + 限制 SUID
远程 RCE 防火墙 + 最小化服务
缓冲区溢出 ASLR/NX/PIE/RELRO
内核漏洞 快速升级内核
提权脚本 限制 sudo / 审计日志

六、日常安全习惯

  • 不随意执行未知脚本
  • 不从不明源添加仓库
  • 定期备份(rsync / borg
  • 关注:
    • https://cve.mitre.org
    • https://ubuntu.com/security
    • https://access.redhat.com/security

如果你愿意,我可以:

  • 服务器用途(Web / DB / 内网)给具体加固清单
  • 或针对 某个具体 CVE / exploit 讲防御方法

你可以告诉我你的 Linux 发行版和使用场景。

0