温馨提示×

Debian Context怎样进行安全设置

小樊
62
2025-10-03 22:34:35
栏目: 智能运维

1. 更新系统与软件
保持系统及所有软件包为最新版本,及时修复已知安全漏洞。使用以下命令更新系统:

sudo apt update && sudo apt full-upgrade -y

2. 配置防火墙限制访问
使用ufw(Uncomplicated Firewall)工具限制入站/出站流量,仅允许必要服务(如SSH、HTTP、HTTPS)的端口通过:

sudo apt install ufw -y
sudo ufw enable
sudo ufw allow 22/tcp    # SSH
sudo ufw allow 80/tcp    # HTTP
sudo ufw allow 443/tcp   # HTTPS
sudo ufw reload

3. 强化用户与认证安全

  • 禁用root远程登录:编辑/etc/ssh/sshd_config文件,设置PermitRootLogin no,避免root账户直接暴露在网络中。
  • 使用SSH密钥认证:生成密钥对并将公钥添加到服务器~/.ssh/authorized_keys文件,替换密码登录以提升安全性。
  • 设置强密码策略:安装libpam-pwquality工具,编辑/etc/pam.d/common-password文件,添加以下行强制密码复杂度(至少8位,包含大小写字母、数字及特殊字符):
    password requisite pam_cracklib.so retry=3 minlen=8 dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1
    

4. 安装与配置SELinux(可选但推荐)
SELinux(Security-Enhanced Linux)通过强制访问控制(MAC)限制进程权限,提升系统安全性:

  • 安装SELinux工具
    sudo apt install selinux-basics selinux-policy-default -y
    
  • 启用SELinux
    sudo setenforce 1  # 临时切换至Enforcing模式(生效)
    
  • 持久化SELinux模式:编辑/etc/selinux/config文件,将SELINUX=permissive改为SELINUX=enforcing,确保重启后仍生效。
  • 查看与修改上下文:使用ls -Z查看文件/目录的SELinux上下文;使用chcon临时修改上下文(如将/var/www/html设为httpd_sys_content_t);使用semanage fcontext持久化上下文(需安装policycoreutils-python-utils):
    sudo semanage fcontext -a -t httpd_sys_content_t "/var/www/html(/.*)?"
    sudo restorecon -Rv /var/www/html  # 应用持久化上下文
    

5. 配置AppArmor(Debian默认安全模块)
AppArmor通过路径-based策略限制程序权限,适合简化安全配置:

  • 启用AppArmor
    sudo apt install apparmor apparmor-utils -y
    sudo systemctl enable apparmor && sudo systemctl start apparmor
    
  • 查看与自定义Profile:使用aa-status查看当前生效的Profile;编辑/etc/apparmor.d/下的Profile文件(如/etc/apparmor.d/usr.bin.apache2),添加允许的文件访问路径或网络权限;使用apparmor_parser -r重新加载Profile。

6. 加固SSH服务
SSH是远程管理的关键入口,需强化其配置:

  • 修改SSH端口:编辑/etc/ssh/sshd_config,将默认22端口改为其他端口(如2222),减少自动化扫描攻击。
  • 禁用密码登录:设置PasswordAuthentication no,强制使用密钥认证。
  • 重启SSH服务:应用配置变更:
    sudo systemctl restart ssh
    

7. 监控与审计系统活动

  • 安装Fail2ban:自动封禁多次登录失败的IP地址,防止暴力破解:
    sudo apt install fail2ban -y
    sudo systemctl enable fail2ban && sudo systemctl start fail2ban
    
  • 使用Logwatch汇总日志:定期发送系统日志报告,便于快速发现异常:
    sudo apt install logwatch -y
    sudo systemctl enable logwatch && sudo systemctl start logwatch
    

8. 定期备份重要数据
使用rsynctar或专业备份工具(如Timeshift)定期备份系统文件与用户数据,存储至外部介质或云存储,防止数据丢失:

sudo tar -czvf /backup/home_$(date +%F).tar.gz /home
sudo tar -czvf /backup/etc_$(date +%F).tar.gz /etc

9. 最小化安装与服务

  • 禁用不必要的服务:使用systemctl list-units --type=service --state=running列出运行中的服务,禁用未使用的服务(如Telnet、FTP):
    sudo systemctl disable telnet
    
  • 遵循最小安装原则:安装系统时选择“Minimal Install”选项,仅安装必需的软件包,减少攻击面。

10. 定期安全审计
使用auditd工具监控系统调用与文件访问,定期检查日志;使用OpenVAS、Nessus等漏洞扫描工具扫描系统,及时修复发现的安全漏洞。

0