在当今网络攻击日益频繁的环境下,Linux服务器安全加固显得尤为重要。本文将从SSH防护、防火墙配置、入侵检测三个维度,详细介绍Linux服务器安全加固的实操步骤,帮助您构建坚固的服务器安全防线。
一、SSH安全加固
SSH是服务器远程管理的主要入口,必须进行严格的安全配置:
- 修改默认端口:将SSH默认端口22修改为非标准端口
- 禁用密码登录:只允许密钥认证登录
- 限制登录用户:禁止root用户直接登录
- 配置登录失败锁定:防止暴力破解攻击
# 修改SSH配置文件 sed -i 's/#Port 22/Port 2222/' /etc/ssh/sshd_config sed -i 's/#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config sed -i 's/#AllowUsers/AllowUsers yourusername/' /etc/ssh/sshd_config # 重启SSH服务 systemctl restart sshd
二、防火墙配置
使用firewalld或iptables配置严格的防火墙规则:
# 安装并启用firewalld yum install firewalld -y systemctl enable --now firewalld # 允许SSH连接(假设已修改为2222端口) firewall-cmd --permanent --add-port=2222/tcp # 允许HTTP和HTTPS firewall-cmd --permanent --add-service=http firewall-cmd --permanent --add-service=https # 允许出站连接 firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="0.0.0.0/0" accept' # 重载防火墙规则 firewall-cmd --reload
三、入侵检测系统
部署Fail2ban防止暴力破解攻击:
# 安装Fail2ban yum install fail2ban -y systemctl enable --now fail2ban # 配置Fail2ban cat > /etc/fail2ban/jail.local << EOF [DEFAULT] bantime = 86400 findtime = 600 maxretry = 5 [sshd] enabled = true port = 2222 logpath = %(sshd_log)s backend = %(sshd_backend)s EOF # 重启Fail2ban服务 systemctl restart fail2ban
四、安全审计与监控
建立完善的安全审计体系:
- 定期检查/var/log/auth.log和/var/log/secure日志
- 使用last命令检查登录历史
- 定期更新系统和应用程序
- 使用rkhunter或chkrootkit检测rootkit
如需进一步了解相关内容,可通过联系我们咨询。