Debian系统安全加固指南
Debian系统安全加固需从系统基础配置、服务安全优化、访问控制强化、监控审计完善等多维度展开,以下是具体关键步骤:
保持系统及软件包最新是防范已知漏洞的核心措施。定期执行以下命令更新系统:
sudo apt update && sudo apt upgrade -y
启用自动安全更新,确保及时获取关键补丁:
sudo apt install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades # 启用自动安装安全更新
/etc/ssh/sshd_config,设置PermitRootLogin no,强制使用普通用户+sudo组合操作,降低root账户泄露风险。sudo组,赋予必要权限:sudo adduser admin
sudo usermod -aG sudo admin
/etc/pam.d/common-password,添加:password requisite pam_cracklib.so retry=3 minlen=12 dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1
echo "umask 027" >> /etc/profile
SSH是远程管理的主要通道,需重点加固:
/etc/ssh/sshd_config,将Port 22改为非标准端口(如2222),减少自动化扫描攻击。PasswordAuthentication no,强制使用SSH密钥对认证,提升身份验证安全性。AllowUsers指令仅允许可信IP登录(如AllowUsers admin@192.168.1.*)。sudo systemctl restart sshd
使用**UFW(Uncomplicated Firewall)**限制入站/出站流量,默认拒绝所有入站连接:
sudo apt install ufw
sudo ufw default deny incoming
sudo ufw allow ssh # 允许SSH端口(如22或自定义端口)
sudo ufw allow http # 允许HTTP服务(如需)
sudo ufw allow https # 允许HTTPS服务(如需)
sudo ufw enable # 启用防火墙
sudo ufw status # 查看规则状态
禁用系统启动时不必要的服务,减少攻击面:
# 查看运行中的服务
systemctl list-units --type=service
# 停止并禁用不需要的服务(如CUPS打印服务)
sudo systemctl stop cups
sudo systemctl disable cups
/etc/cron*(计划任务)、/etc/ssh(SSH配置)、SSH主机密钥的访问权限:chmod 700 /etc/cron* /etc/ssh/ssh_host_*_key
chmod 600 /etc/shadow # 密码文件仅root可读
find / -perm -4000 -type f -exec ls -ld {} \; 2>/dev/null
编辑/etc/sysctl.conf,调整内核安全参数,增强系统抗攻击能力:
# 启用IP源路由过滤
net.ipv4.conf.all.rp_filter = 1
# 忽略ICMP广播请求(防止Smurf攻击)
net.ipv4.icmp_echo_ignore_broadcasts = 1
# 启用SYN Cookie(防止SYN Flood攻击)
net.ipv4.tcp_syncookies = 1
# 保护硬链接和符号链接
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
应用配置:
sudo sysctl -p
sudo apt install fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
sudo apt install aide
sudo aideinit -y # 生成基准数据库
debian-security-announce邮件列表,及时获取Debian官方安全更新信息。rsyslog或syslog-ng将日志发送到远程服务器,避免本地日志被篡改。/var/log/auth.log(认证日志)、/var/log/syslog(系统日志),识别异常登录或操作。sudo apt install logwatch
sudo systemctl enable logwatch
sudo systemctl start logwatch
定期备份重要数据(如配置文件、数据库、用户数据),建议采用增量备份+异地备份组合:
tar结合--listed-incremental选项,每日备份变化部分:sudo tar -g /var/backup/snapshot -czvf /var/backup/$(date +%F).tar.gz /etc /home /var/www
rsync将备份同步到远程服务器,防止本地磁盘故障导致数据丢失:rsync -avz /var/backup/ backupuser@backupserver:/backups/
OpenVAS或Nessus扫描系统漏洞,及时修复高风险问题:sudo apt install openvas
sudo openvas-setup # 初始化扫描器
sudo systemctl start openvas-manager
sudo systemctl start openvas-scanner
Metasploit或Lynis进行模拟攻击,检测系统防御弱点:sudo apt install lynis
sudo lynis audit system # 执行全面系统审计
通过以上步骤,可显著提升Debian系统的安全性。需注意,安全加固是持续过程,需定期复查配置、更新补丁,并根据业务需求调整安全策略。