Linux 服务器安全加固基础方案

1次阅读

linux服务器安全加固是围绕“最小权限、及时更新、有效监控、快速响应”持续进行的过程,需关闭非必要服务端口、强化ssh认证、定期更新系统、配置日志审计与基础监控。

Linux 服务器安全加固基础方案

Linux 服务器安全加固不是一劳永逸的操作,而是围绕“最小权限、及时更新、有效监控、快速响应”四个核心持续进行的过程。基础方案重在堵住常见入口、限制非必要暴露、增强身份验证和保留可追溯痕迹。

关闭非必要服务与端口

默认安装常启用 SSH、http、FTP 等服务,但多数生产环境只需其中一两个。开放即风险,尤其 FTP、Telnet、rsh 等明文协议应彻底禁用。

  • systemctl list-unit-files –type=service | grep enabled 查看开机自启服务,逐个确认是否必需
  • 停用并屏蔽无用服务:如 sudo systemctl stop telnet.socket && sudo systemctl disable telnet.socket
  • ss -tulnnetstat -tuln 检查监听端口,结合 lsof -i :端口号 定位进程,再决定是否关闭或绑定到 127.0.0.1
  • 防火墙默认策略设为 DROP,仅放行明确需要的端口(如 22、443),推荐使用 ufwubuntu)或 firewalldcentos/RHEL)

强化用户与认证机制

弱口令、共用账号、root 直接登录是绝大多数入侵的起点。必须从身份环节切断最粗暴的攻击路径。

  • 禁用 root 远程登录:PermitRootLogin no 写入 /etc/ssh/sshd_config,重启 sshd
  • 禁用密码登录,强制密钥认证:PasswordAuthentication no,同时确保普通用户已配置合法密钥并测试成功后再重启服务
  • 新建管理用户(如 admin),加入 wheelsudo 组,禁止其使用空密码或简单密码
  • chage -M 90 -m 7 -W 7 username 设置密码有效期与提醒,对长期不用的账号执行 usermod -L username 锁定

保持系统与软件及时更新

已知漏洞不修复,等于给攻击者留了后门。自动更新需谨慎,但定期手动检查+关键补丁必须落实。

  • Ubuntu/debian:运行 sudo apt update && sudo apt list –upgradable,确认后执行 sudo apt upgrade -y
  • CentOS/RHEL 8+:用 sudo dnf check-updatesudo dnf upgrade –security 优先安装安全更新
  • 禁用不受信第三方源(如 EPEL 中非必要包),避免引入未经审计的二进制
  • nginx、OpenSSL、Python 等独立组件,关注其官网安全通告,不依赖系统包管理器时需手动升级

配置日志审计与基础监控

没有记录的日志等于没发生过;没有告警的异常等于没发现过。基础加固必须包含可观测性底线。

  • 确保 rsyslogsyslog-ng 正常运行,将 auth、authpriv、secure 日志级别调高,保存至少 90 天
  • 启用 auditd 监控关键文件变动:sudo auditctl -w /etc/passwd -p wa -k identity_change,规则写入 /etc/audit/rules.d/ 持久化
  • 每日检查 /var/log/auth.log(Debian)或 /var/log/secure(RHEL),重点关注 repeated failed password、invalid user、Accepted publickey 等条目
  • 部署轻量级工具如 fail2ban,自动封禁多次 SSH 密码失败的 IP,配置合理 bantime 和 maxretry 避免误伤

不复杂但容易忽略。真正有效的加固,往往藏在配置文件的一行修改、一次手动检查、一条 cron 定时任务里。

text=ZqhQzanResources