服务器安全是企业网络安全的基础。本文介绍Linux服务器的安全加固最佳实践。

一、SSH安全配置

1.1 SSH密钥登录

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

# 上传公钥到服务器
ssh-copy-id user@server_ip

# 修改SSH配置
sudo vim /etc/ssh/sshd_config
# 禁用密码登录
PasswordAuthentication no
# 禁用root登录
PermitRootLogin no
# 更改默认端口
Port 2222

# 重启SSH服务
sudo systemctl restart sshd

二、权限管理原则

2.1 最小权限原则

  • 不使用root账户日常操作
  • 为不同服务创建专用账户
  • 文件和目录权限尽量小
# 创建系统服务账户
useradd -r -s /sbin/nologin nginx

# 设置目录权限
chmod 750 /var/www/html
chown -R www-data:www-data /var/www/html

三、系统安全加固

# 禁用不必要的服务
systemctl stop postfix
systemctl disable postfix

# 设置密码策略
vim /etc/login.defs
PASS_MAX_DAYS 90
PASS_MIN_DAYS 7
PASS_MIN_LEN 12

# 设置账户锁定策略(5次失败后锁定30分钟)
pam_tally2.so deny=5 unlock_time=1800

四、SELinux配置

# 查看SELinux状态
getenforce

# 设置为 enforcing 模式
setenforce 1

# 查看SELinux上下文
ls -Z /var/www/html

# 修改文件上下文
chcon -R -t httpd_sys_content_t /var/www/html

五、安全监控

  • 启用auditd审计
  • 配置fail2ban防暴力破解
  • 定期检查系统日志
  • 使用OSSEC等HIDS工具