温馨提示×

如何保障Debian SFTP的数据安全

小樊
34
2025-12-08 01:46:33
栏目: 智能运维

Debian SFTP数据安全加固清单

一 基础加固

  • 保持系统与软件为最新:执行apt update && apt upgrade -y,及时修补漏洞。
  • 仅安装并启用必要服务:确保只运行OpenSSH服务,关闭不必要的端口与服务。
  • 强化SSH访问:在**/etc/ssh/sshd_config中设置PermitRootLogin no**,仅允许必要用户登录(如AllowUsers),并限制失败尝试与并发会话(如MaxAuthTriesMaxSessions)。
  • 启用密钥认证并禁用密码:设置PubkeyAuthentication yesPasswordAuthentication no,如需证书登录可启用ChallengeResponseAuthentication no
  • 调整端口与网络边界:可修改Port为非默认端口以降低自动化攻击面,并用ufw/iptables仅放行必要来源IP的22/TCP
  • 会话保活与超时:设置ClientAliveInterval 300ClientAliveCountMax 3,减少闲置会话被劫持风险。
  • 加固主机密钥:确保HostKey包含现代算法(如**/etc/ssh/ssh_host_ed25519_key、ssh_host_ecdsa_key、ssh_host_rsa_key**)。

二 身份与访问控制

  • 使用SSH密钥替代口令:客户端生成4096位RSA密钥对(命令:ssh-keygen -t rsa -b 4096),将公钥部署到服务器**~/.ssh/authorized_keys**(命令:ssh-copy-id user@server_ip),服务器端确保PubkeyAuthentication yesAuthorizedKeysFile .ssh/authorized_keys已启用。
  • 精细化用户与来源控制:通过AllowUsers/AllowGroups限制可登录账户与来源网段,必要时仅对特定IP开放。
  • 防暴力破解:部署Fail2Ban,监控**/var/log/auth.log**并自动封禁反复失败的来源IP。
  • 目录与权限基线:对Chroot环境,确保ChrootDirectory上级目录属主为root:root且权限755;用户可写目录单独授权(如**/upload**),避免将用户家目录整体可写。

三 SFTP专用配置

  • 使用内部SFTP并限制功能:对需要仅SFTP的账户,在**/etc/ssh/sshd_config中使用Match Group sftpusers块,设置ForceCommand internal-sftp**、AllowTcpForwarding noX11Forwarding no,按需启用ChrootDirectory %h将其根目录限制在其主目录。
  • 典型目录与权限示例:
    • 家目录:chown root:root /home/username && chmod 755 /home/username
    • 可写目录:mkdir /home/username/upload && chown username:username /home/username/upload
  • 验证与回滚:每次修改后先本地控制台验证,再重启服务(systemctl restart sshsystemctl restart sshd),保留一份备份配置以便快速回滚。

四 加密与算法配置

  • 协议与算法基线:仅使用SSHv2;优先ed25519主机密钥,配合ecdsa/rsa;禁用过时或不安全算法(如DSA、旧的Diffie-Hellman group1)。
  • 加密套件与完整性:启用AEAD套件(如chacha20-poly1305@openssh.com)、HMAC-SHA2系列;禁用arcfour、hmac-md5等弱算法。
  • 推荐示例(可按需精简):
    • KexAlgorithms curve25519-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521
    • HostKeyAlgorithms ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-512,rsa-sha2-256
    • Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr
    • MACs hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com
  • 变更后使用sshd -t进行语法检查,再重启服务。

五 监控审计与备份恢复

  • 集中日志与告警:持续监控**/var/log/auth.logjournalctl -u ssh**,对异常登录、频繁失败、来源突变设置告警。
  • 入侵防护:启用Fail2Ban并针对SSH/SFTP定制策略与封禁时长。
  • 强制访问控制:在支持的系统中启用AppArmor/SELinuxsshd/sftp进程进行最小权限约束。
  • 备份与演练:对**/home、/etc/ssh与关键业务数据执行定期离线/异地备份**,并进行恢复演练验证可用性与完整性。
  • 安全运维:遵循最小权限原则定期安全审计变更管理,并保留配置与密钥的版本化备份

0