1. 系统更新与补丁管理
保持系统及软件包最新是安全基础,定期执行以下命令更新系统:
sudo apt update && sudo apt upgrade -y 建议安装unattended-upgrades实现自动安全更新,避免遗漏关键补丁:
sudo apt install unattended-upgrades sudo dpkg-reconfigure --priority=low unattended-upgrades 2. 防火墙配置(UFW推荐)
使用ufw(Uncomplicated Firewall)简化防火墙管理,仅允许必要流量:
sudo apt install ufw sudo ufw allow ssh # 允许SSH连接(若通过SSH管理) sudo ufw allow 80/tcp # 允许HTTP(如需网页服务) sudo ufw allow 443/tcp # 允许HTTPS(如需加密网页服务) sudo ufw enable # 启用防火墙 sudo ufw status verbose # 查看规则状态(确认配置正确) 如需更严格的访问控制,可限制特定IP访问关键端口(如仅允许公司IP访问SSH):
sudo ufw allow from 192.168.1.100 to any port 22 3. SSH安全加固
SSH是远程管理的主要通道,需调整配置降低风险:
/etc/ssh/sshd_config文件:sudo nano /etc/ssh/sshd_config 修改以下关键参数:Port 2222 # 更改默认端口(避免扫描攻击) PermitRootLogin no # 禁止root直接登录 PasswordAuthentication no # 禁用密码登录(仅用密钥) AllowUsers your_username # 仅允许指定用户登录 sudo systemctl restart sshd ssh-keygen -t rsa -b 4096 将公钥复制到虚拟机:ssh-copy-id -i ~/.ssh/id_rsa.pub your_username@虚拟机IP -p 2222 4. 用户与权限管理
遵循“最小权限原则”,避免过度授权:
sudo组(用于执行管理员命令):sudo adduser your_username # 创建用户并设置密码 sudo usermod -aG sudo your_username # 加入sudo组 visudo编辑/etc/sudoers文件,确保用户权限可控(避免直接修改原文件):sudo visudo 添加以下内容(允许用户无密码执行所有sudo命令,生产环境建议限制为必要命令):your_username ALL=(ALL) NOPASSWD:ALL /etc/pam.d/common-password文件,添加密码复杂度要求(如长度≥8、包含大小写字母和数字):password requisite pam_pwquality.so retry=3 minlen=8 difok=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 5. 禁用不必要的服务与组件
减少攻击面,关闭未使用的服务:
systemctl list-unit-files --state=enabled sudo systemctl stop ftp # 示例:停止FTP服务 sudo systemctl disable ftp # 禁止开机启动 sudo apt autoremove --purge # 删除不再需要的依赖包 6. 数据保护与备份
定期备份重要数据,防止数据丢失:
rsync实现增量备份(将数据同步到外部存储或另一台服务器):rsync -avz /path/to/important/data /backup/location duplicity进行加密备份(支持远程存储,如S3、FTP):sudo apt install duplicity duplicity /path/to/data sftp://user@backup-server/backup/path eCryptfs挂载加密目录:sudo apt install ecryptfs-utils sudo mount -t ecryptfs /path/to/sensitive/data /path/to/encrypted/data 7. 监控与日志审计
实时监控系统状态,及时发现异常:
logwatch每日汇总日志(发送到邮箱):sudo apt install logwatch sudo logwatch --output mail --mailto your_email@example.com --detail high fail2ban防止暴力破解(自动封禁多次登录失败的IP):sudo apt install fail2ban sudo systemctl enable fail2ban sudo systemctl start fail2ban 编辑/etc/fail2ban/jail.local配置文件,启用SSH防护:[sshd] enabled = true maxretry = 3 # 允许的最大失败次数 bantime = 3600 # 封禁时间(秒) auditd记录关键系统调用(如文件访问、用户登录):sudo apt install auditd sudo auditctl -e 1 # 启用审计 查看审计日志:ausearch -m avc -ts recent # 示例:查看最近的SELinux审计日志 8. 防病毒与恶意软件扫描
虽然Linux系统安全性较高,但仍需定期扫描防止恶意软件:
ClamAV(开源防病毒工具):sudo apt install clamav clamav-daemon sudo freshclam sudo clamscan -r / # 递归扫描根目录 定期扫描(如每周一次)可通过cron任务自动化。