服务器安全加固是运维基础工作,暴露在公网的服务器每天承受成百上千次扫描与暴力破解。一台未加固的Linux服务器,SSH端口开放数小时内就会出现境外IP的登录尝试记录。加固的核心思路:收窄攻击面、最小化权限、留好审计痕迹,配置一次并不能一劳永逸,需要持续巡检。
SSH服务加固:禁用密码登录与更换端口的正确姿势
SSH是暴力破解的重灾区,第一件事是切换到密钥认证并禁用root直连:
# 生成密钥对(客户端执行)
ssh-keygen -t ed25519 -C "ops@yunthe"
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server
# 服务端 /etc/ssh/sshd_config
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
MaxAuthTries 3
LoginGraceTime 30
AllowUsers deploy ops # 白名单限定
systemctl restart sshd
改端口只能减少日志噪音,不能阻止针对性扫描,安全收益有限但成本极低。更有效的做法是配合防火墙只放行办公网段IP。注意sshd_config修改后先用sshd -t验证语法,配置错误会把自己锁在门外。
fail2ban自动封禁:对付暴力破解的自动化方案
fail2ban监控日志,对连续失败的来源IP自动调用防火墙封禁:
# /etc/fail2ban/jail.local
[sshd]
enabled = true
port = 22
maxretry = 5
findtime = 600
bantime = 3600
ignoreip = 127.0.0.1/8 10.0.0.0/8
systemctl enable --now fail2ban
fail2ban-client status sshd # 查看当前封禁列表
bantime设长一些(如86400)对扫描器更有效,注意把自己常用的出口IP加入ignoreip,避免误触发封禁。jail不止防SSH,nginx的401/403日志、postfix认证失败都能配对应规则。
防火墙最小化放行:firewalld与iptables规则设计
原则是默认拒绝、按需放行。firewalld基于zone管理,比裸iptables更好维护:
firewall-cmd --set-default-zone=drop
firewall-cmd --permanent --zone=internal --add-service=ssh
firewall-cmd --permanent --zone=internal --add-port=443/tcp
# 业务端口只对负载均衡网段开放
firewall-cmd --permanent --zone=internal --add-rich-rule='rule family=ipv4 source address=10.8.0.0/16 port port=3306 protocol=tcp accept'
firewall-cmd --reload
数据库、缓存端口绝不直接暴露公网,通过rich rule限定内网网段。用nmap从外部扫描一次自己的服务器,验证只有预期端口开放。
内核参数与文件权限加固清单
syncookies防御SYN洪水,禁用IP转发(非网关场景),core dump不落盘:
# /etc/sysctl.conf
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.rp_filter = 1
kernel.randomize_va_space = 2
fs.suid_dumpable = 0
sysctl -p
文件层面:chmod 600 /etc/crontab,设置chattr +i保护关键二进制,临时目录用noexec,nosuid挂载。每台服务器跑一遍lynis audit system,报告会列出未完成的加固项,比逐条翻CIS基准快。
审计与持续巡检:aide与auditd的日常使用
完整性校验推荐AIDE,初始化基线数据库后定期比对:
aide --init
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
aide --check # 排查被篡改的文件
auditd记录敏感系统调用,配合logrotate防日志膨胀。发现异常登录时,last、lastb、/var/log/secure三条线索交叉比对,确认后立即更换密钥并排查crontab与authorized_keys是否被植入。
原创文章,作者:小编,如若转载,请注明出处:https://www.yunthe.com/fu-wu-qi-an-quan-jia-gu-shi-zhan-ssh-fang-hu-fang-huo-qiang/