第一步:系统更新必须常态化。别以为装完系统就万事大吉,漏洞每天都在冒出来。我习惯用或结合cron定时任务,每周自动检查关键补丁。特别是内核更新,得单独测试兼容性后再推生产环境。记得有一次没及时更新OpenSSL,差点被心脏出血漏洞钻空子。
第二步:防火墙配置要细到毛孔。用firewalld的话,先把默认zone改成drop,再按需放行端口。比如Web服务器只开80和443,SSH改到非标准端口。我常用这条命令批量处理:。千万别图省事直接关防火墙,那跟开门迎贼没区别。
第三步:服务裁剪得狠心。用查所有服务,像rpcbind、telnet这种老古董直接禁用。我一般先跑找出监听端口,再反向排查对应服务。上次发现某台服务器开着Apache测试页面,赶紧用彻底锁死。
第四步:账户安全要双层防护。强制密码复杂度用pam_cracklib模块,设置最小12位含大小写特殊字符。更推荐用SSH密钥替代密码,把公钥扔进.ssh/authorized_keys时记得设600权限。管理账号单独创建,禁用root远程登录,这招挡掉了八成爆破攻击。
第五步:SSH加固得像保险柜。改端口只是基本操作,我还会限制登录IP段:。配合Fail2ban自动封禁失败尝试,配置里设置maxretry=3就能拦住大部分爬虫。最近还把协议版本强制到SSH-2,老版本漏洞太多。
第六步:文件权限要最小化。脚本里必加,关键配置文件像/etc/passwd设644。用find命令定期扫描setuid位文件:,莫名出现的直接chmod u-s。上次揪出个被植入后门的sudo程序就靠这招。
第七步:日志监控得炼成火眼金睛。配置rsyslog把auth、kernel日志单独转发到安全服务器。每天必查里的异常登录,用grep过滤"Failed password"趋势。最近写了脚本自动统计IP登录频次,发现某个IP半夜连试50次立刻报警。
第八步:入侵检测不能光靠人工。部署AIDE做文件完整性校验,初始化数据库后把校验策略设成每天比对。关键系统目录像/bin、/sbin有任何改动都会发邮件告警。有次捕获到有人替换了netstat二进制文件,全靠AIDE及时告警。
第九步:备份策略要能抗核打击。除了常规的tar打包,我还用rsync做增量同步到异地机房。关键是要定期做恢复演练,曾经吃过亏——备份一切正常,恢复时发现磁带机驱动丢了。现在每周强制测试恢复单个文件和整机镜像。
第十步:安全模块别当摆设。SELinux虽然难啃,但配好策略后能防住零日漏洞。初学者可以先设成permissive模式,用audit2allow生成自定义策略。我负责的服务器都强制开启SELinux,虽然调试时掉过头发,但确实拦住了好几次提权攻击。
这套组合拳打下来,新服务器基本能扛住常规攻击。但安全本质是场持久战,建议每月用Nessus做次漏洞扫描,保持对新兴威胁的敏感度。记住,再完善的方案也抵不过日常的警惕性。

被折叠的 条评论
为什么被折叠?



