1. 系统更新与补丁管理
保持系统及软件包最新是安全基础,可及时修复已知漏洞。定期执行以下命令更新软件包列表并升级系统:
sudo apt update && sudo apt upgrade -y
建议开启自动安全更新,通过unattended-upgrades工具实现:
sudo apt install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades
这能确保系统自动安装安全补丁,减少手动维护成本。
2. 账户与权限管理
- 禁用root远程登录:编辑SSH配置文件
/etc/ssh/sshd_config,设置PermitRootLogin no,禁止root用户通过SSH远程登录,降低被暴力破解的风险。修改后重启SSH服务:sudo systemctl restart ssh。 - 使用sudo替代直接root登录:创建普通用户并加入sudo组,通过
sudo执行管理员操作。例如:sudo adduser newuser sudo usermod -aG sudo newuser - 强化密码策略:安装
libpam-pwquality工具,编辑/etc/security/pwquality.conf文件,设置密码复杂度要求(如最小长度12位、包含大小写字母、数字和特殊字符):同时修改PAM配置文件sudo apt install libpam-pwquality echo "minlen = 12" >> /etc/security/pwquality.conf echo "minclass = 3" >> /etc/security/pwquality.conf/etc/pam.d/common-password,启用密码质量检查:password requisite pam_pwquality.so retry=3。
3. SSH服务加固
SSH是远程管理的关键服务,需重点防护:
- 更改默认端口:编辑
/etc/ssh/sshd_config,将默认22端口改为非标准端口(如2222),减少自动化扫描攻击:Port 2222。 - 禁用密码认证:启用SSH密钥对认证,提高登录安全性。生成密钥对:
ssh-keygen -t rsa -b 4096,将公钥复制到服务器:ssh-copy-id user@remote_host。编辑/etc/ssh/sshd_config,设置:PasswordAuthentication no PubkeyAuthentication yes - 限制访问IP:通过
AllowUsers指令仅允许可信IP登录,例如:AllowUsers user@192.168.1.*。
修改完成后重启SSH服务:sudo systemctl restart ssh。
4. 防火墙配置
使用ufw(Uncomplicated Firewall)限制入站/出站流量,默认拒绝所有入站连接,仅允许必要服务(如SSH、HTTP、HTTPS):
sudo apt install ufw
sudo ufw default deny incoming
sudo ufw allow 2222/tcp # 替换为实际SSH端口
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
sudo ufw enable # 启用防火墙
sudo ufw status # 查看规则状态
ufw操作简单,能有效过滤非法流量,保护系统免受端口扫描、暴力破解等攻击。
5. 服务最小化
禁用不必要的系统服务,减少攻击面。通过以下命令列出运行中的服务,禁用无需的服务(如CUPS打印服务):
sudo systemctl list-units --type=service --state=running
sudo systemctl stop cups
sudo systemctl disable cups
仅保留系统必需的服务(如SSH、网络服务),降低被攻击的风险。
6. 文件系统与内核加固
- 关键目录权限设置:限制敏感目录的访问权限,例如:
防止未授权用户修改定时任务或SSH密钥文件。chmod 700 /etc/cron* /etc/ssh/ssh_host_*_key chmod 600 /etc/shadow - 内核参数调整:编辑
/etc/sysctl.conf,启用以下安全参数,增强网络防护:应用配置:net.ipv4.conf.all.rp_filter = 1 # 反向路径过滤,防止IP欺骗 net.ipv4.icmp_echo_ignore_broadcasts = 1 # 忽略ICMP广播请求,防止Smurf攻击 net.ipv4.tcp_syncookies = 1 # 防止SYN Flood攻击 fs.protected_hardlinks = 1 # 防止硬链接攻击 fs.protected_symlinks = 1 # 防止符号链接攻击sudo sysctl -p。
7. 日志监控与入侵检测
- 日志审计:使用
auditd工具监控关键文件(如/etc/passwd、/etc/shadow)的修改,记录系统活动:日志保存在sudo apt install auditd auditctl -w /etc/passwd -p wa -k passwd_changes # 监控passwd文件修改 auditctl -w /etc/shadow -p wa -k shadow_changes # 监控shadow文件修改/var/log/audit/audit.log,可通过ausearch命令查询。 - 入侵检测:安装
fail2ban防范暴力破解,自动封禁多次登录失败的IP:默认配置文件位于sudo apt install fail2ban sudo systemctl enable fail2ban sudo systemctl start fail2ban/etc/fail2ban/jail.local,可根据需求调整阈值。
8. 备份与恢复策略
定期备份重要数据(如配置文件、数据库、网站文件),应对数据丢失或勒索软件攻击。推荐使用Timeshift工具进行增量备份:
sudo apt install timeshift
sudo timeshift --create --comments "Full Backup"
备份文件默认保存在/timeshift目录,可通过rsync或外部存储设备实现远程备份:
rsync -avz /timeshift/ backupuser@backupserver:/backups/
确保备份数据加密存储,避免泄露敏感信息。
9. 安全工具部署
- 漏洞扫描:使用
OpenVAS定期扫描系统漏洞,生成报告并修复:sudo apt install openvas sudo openvas-setup sudo systemctl start openvas-manager sudo systemctl start openvas-scanner - 恶意软件检测:安装
ClamAV反病毒软件,扫描系统中的恶意文件:sudo apt install clamav clamtk sudo freshclam # 更新病毒库 clamscan -r / # 递归扫描根目录 - Rootkit检测:使用
rkhunter检查系统是否存在rootkit:
定期运行这些工具,及时发现并处理安全隐患。sudo apt install rkhunter sudo rkhunter --update sudo rkhunter --check
以上就是关于“Debian安全设置指南”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm