Debian SFTP常见问题与排查清单
一 快速自检与定位
二 高频问题对照表
| 症状 | 常见原因 | 快速修复 |
|---|---|---|
| Authentication failed | 密码错误、账户被锁、用户未在指定组 | 确认密码;passwd -u 解锁;usermod -aG sftp_users 用户名 |
| Permission denied(无法上传/切换目录) | 家目录或上层目录权限/属主错误(Chroot 要求) | 家目录属主 root:root、权限 755;上传目录属主用户:组、权限 775 |
| Connection refused | SSH 服务未启动或配置错误未生效 | systemctl status/start/restart ssh;修正 sshd_config 后重启 |
| Connection timed out | 防火墙/安全组阻断、网络不通 | ufw/firewalld 放行 22;检查云安全组;测试端口连通性 |
| chroot: Permission denied / Cannot change directory | ChrootDirectory 路径不存在或权限不对 | 确保目录存在且上层节点均为 root:root 755;再重启 ssh |
| Subsystem not found / Could not load host key | Subsystem 路径错误或配置未生效 | 使用 internal-sftp 或 which sftp-server 确认路径;修正后重启 |
| 端口被占用 | 其他服务占用 22 | 修改 /etc/ssh/sshd_config Port 为 2222 等并同步放行防火墙 |
| 算法不匹配 | 客户端/服务端加密/密钥算法不一致 | 在 sshd_config 中统一 Ciphers/HostKeyAlgorithms 等并重载 |
| 用户仍能 SSH 登录 | Match 规则未生效或 shell 未禁用 | 在 Match Group 中加入 ForceCommand internal-sftp、AllowTcpForwarding no、X11Forwarding no;必要时 usermod -s /usr/sbin/nologin 或 /bin/false |
三 安全加固与最佳实践
四 最小可用配置示例
五 仍无法解决时的高效求助信息