Linux 服务器安全加固指南

前言

在搭建个人服务器或家庭实验室时,安全往往是被忽视的一环。本文将介绍 Linux 服务器的基础安全加固措施,帮助你构建更安全的系统环境。

一、系统更新与补丁管理

保持系统更新是最基本也是最重要的安全措施:

# Debian/Ubuntu
apt update && apt upgrade -y

# CentOS/RHEL
yum update -y

# Arch Linux
pacman -Syu

建议设置自动安全更新,对于生产环境,可以先在测试环境验证后再部署。

二、SSH 安全配置

SSH 是服务器最常用的远程访问方式,也是最容易被攻击的入口:

2.1 禁用密码登录,使用密钥认证

# 生成密钥对
ssh-keygen -t ed25519 -C "your_email@example.com"

# 复制公钥到服务器
ssh-copy-id user@server_ip

2.2 修改 SSH 配置文件

# 编辑 /etc/ssh/sshd_config
Port 2222                    # 修改默认端口
PermitRootLogin no           # 禁止 root 登录
PasswordAuthentication no    # 禁用密码登录
PubkeyAuthentication yes     # 启用密钥认证
MaxAuthTries 3              # 限制尝试次数
AllowUsers your_username    # 只允许特定用户

三、防火墙配置

3.1 UFW(Ubuntu/Debian)

# 启用防火墙
ufw enable

# 允许 SSH(如果修改了端口)
ufw allow 2222/tcp

# 允许 HTTP/HTTPS
ufw allow 80/tcp
ufw allow 443/tcp

# 查看状态
ufw status verbose

3.2 Firewalld(CentOS/RHEL)

# 启用防火墙
systemctl enable --now firewalld

# 添加服务
firewall-cmd --permanent --add-service=ssh
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

四、失败登录防护(Fail2Ban)

# 安装
apt install fail2ban -y

# 启用服务
systemctl enable --now fail2ban

# 创建本地配置
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Fail2Ban 会监控日志文件,自动封禁多次登录失败的 IP 地址。

五、定期备份策略

安全加固的最后一道防线是备份:

  • 系统配置备份:/etc 目录定期打包
  • 数据备份:数据库、重要文件异地备份
  • 快照:使用 LVM 或文件系统快照功能

六、安全审计与监控

# 查看登录历史
last

# 查看当前登录用户
who

# 监控系统资源
htop

# 检查开放端口
netstat -tulpn

总结

服务器安全是一个持续的过程,不是一次性的配置。建议:

  1. 定期更新系统和软件
  2. 定期检查日志和监控告警
  3. 定期审查用户权限和访问策略
  4. 保持备份并测试恢复流程

安全无小事,希望这份指南能帮助你构建更安全的服务器环境。

上一篇 阿里云 OSS 搭配 CF 带宽联盟实现流量免费