安全概览
构建多层防护体系,保护您的Linux服务器免受各种安全威胁
安全基础原则
建立安全思维,明确威胁模型,制定安全策略和恢复计划。
- 默认拒绝原则
- 最小权限访问
- 定期安全审计
- 灾难恢复计划
SSH服务加固
保护最重要的远程访问通道,防止未授权访问和暴力破解。
- 密钥认证
- 禁用root登录
- 双因素认证
- 端口变更
防火墙与网络
构建多层网络防护,控制流量并检测异常行为。
- UFW防火墙
- Fail2ban防护
- 端口扫描检测
- 流量监控
用户与权限
严格控制用户访问权限,实施最小权限原则。
- sudo管理
- 用户组策略
- 密码策略
- 文件权限
监控与审计
建立完整的监控体系,及时发现和响应安全事件。
- 日志分析
- 入侵检测
- 性能监控
- 备份策略
安全基础原则
建立坚实的安全基础,是保护服务器的首要步骤
安全思维
安全不是目的地,而是一段持续的旅程。需要定期更新、监控和改进。
安全不是目的地,而是一段持续的旅程。需要定期更新、监控和改进。
核心安全原则
| 原则 | 描述 | 实施方法 |
|---|---|---|
| 默认拒绝 | 拒绝所有未明确允许的访问 | 防火墙默认策略、最小权限配置 |
| 分层防护 | 构建多层安全屏障 | 网络层、应用层、主机层防护 |
| 最小权限 | 用户仅拥有所需的最小权限 | sudo配置、用户组管理 |
| 定期审计 | 定期检查和评估安全性 | 日志分析、漏洞扫描 |
| 快速响应 | 及时发现和处理安全事件 | 监控系统、应急响应计划 |
SSH服务安全加固
保护最重要的远程访问通道,防止未授权访问
重要提醒
在修改SSH配置前,请确保您有其他访问服务器的方式,以防配置错误导致无法连接。
在修改SSH配置前,请确保您有其他访问服务器的方式,以防配置错误导致无法连接。
密钥认证配置
使用SSH密钥替代密码认证,提供更强的安全性。
# 生成Ed25519密钥对
ssh-keygen -t ed25519 -C "your_email@example.com"
# 将公钥复制到服务器
ssh-copy-id user@server_ip
# 测试密钥登录
ssh user@server_ip
SSH配置文件
编辑/etc/ssh/sshd_config文件,应用安全设置。
# 禁用root登录
PermitRootLogin no
# 禁用密码认证
PasswordAuthentication no
# 启用密钥认证
PubkeyAuthentication yes
# 修改默认端口
Port 2222
# 限制登录尝试
MaxAuthTries 3
双因素认证
添加额外的安全层,要求输入验证码。
# 安装Google Authenticator
sudo apt install libpam-google-authenticator
# 为用户配置2FA
google-authenticator
# 编辑PAM配置
sudo nano /etc/pam.d/sshd
# 添加以下行
auth required pam_google_authenticator.so
防火墙与网络防护
构建多层网络防护体系,阻止恶意访问
UFW基础配置
使用UFW(Uncomplicated Firewall)简化防火墙管理。
# 安装UFW
sudo apt install ufw
# 设置默认策略
sudo ufw default deny incoming
sudo ufw default allow outgoing
# 允许SSH端口
sudo ufw allow 2222/tcp
# 启用防火墙
sudo ufw enable
# 查看状态
sudo ufw status
Fail2ban配置
自动检测和阻止暴力破解攻击。
# 安装Fail2ban
sudo apt install fail2ban
# 创建配置文件
sudo nano /etc/fail2ban/jail.local
# 基本配置
[sshd]
enabled = true
port = 2222
maxretry = 3
bantime = 3600
端口监控
定期检查系统监听的端口,发现异常服务。
# 查看监听端口
sudo ss -tulnp
# 查看TCP连接
sudo ss -tlnp
# 查看UDP连接
sudo ss -ulnp
# 查看所有连接
sudo netstat -tulnp
监控与审计
建立完整的监控体系,及时发现安全威胁
监控的重要性
有效的监控可以帮助您在安全事件发生前发现异常,并提供详细的事件分析数据。
有效的监控可以帮助您在安全事件发生前发现异常,并提供详细的事件分析数据。
日志管理
配置系统日志,监控重要安全事件。
# 查看认证日志
sudo tail -f /var/log/auth.log
# 查看系统日志
sudo journalctl -f
# 查看SSH日志
sudo grep sshd /var/log/auth.log
# 配置日志轮转
sudo nano /etc/logrotate.conf
入侵检测
使用AIDE和OSSEC检测系统异常。
# 安装AIDE
sudo apt install aide
# 初始化数据库
sudo aideinit
# 检查完整性
sudo aide --check
# 安装OSSEC
wget -q -O - https://updates.atomicorp.com/installers/atomic | sudo sh
sudo apt install ossec-hids
备份策略
制定定期备份计划,确保数据安全。
# 使用rsync备份
rsync -avz /important/data backup@server:/backup/
# 创建备份脚本
#!/bin/bash
tar -czf /backup/system-$(date +%Y%m%d).tar.gz /etc /home
# 设置定时任务
crontab -e
0 2 * * * /path/to/backup.sh