温馨提示×

Debian SFTP如何使用

小樊
41
2025-12-08 01:06:24
栏目: 智能运维

Debian SFTP 使用指南

一 安装与启动

  • 在 Debian 上,SFTP 由 OpenSSH 服务器提供,安装并启动即可使用:
    • 安装:sudo apt update && sudo apt install openssh-server
    • 启动并设置开机自启:sudo systemctl start ssh && sudo systemctl enable ssh
    • 验证状态:sudo systemctl status ssh(看到 active 即正常)
  • 默认配置已支持 SFTP,无需额外安装其他软件包。

二 快速连接与常用命令

  • 命令行连接(Linux/macOS/WSL):sftp username@your_server_ip,端口默认为 22;按提示输入密码或使用密钥登录。
  • 图形化客户端:如 FileZillaWinSCP,填写主机、端口 22、用户名与密码即可连接。
  • 常用交互命令:
    • 列目录:ls
    • 下载:get 文件名
    • 上传:put 文件名
    • 新建目录:mkdir 目录名
    • 删除文件/目录:rm 文件名rmdir 目录名
    • 退出:exit
  • 以上命令在 SFTP 会话中通用,适合日常上传与下载。

三 安全配置与目录限制(推荐)

  • 为 SFTP 创建专用组与用户:
    • 建组:sudo groupadd sftpusers
    • 建用户并加入组:sudo adduser your_username && sudo usermod -aG sftpusers your_username
  • 编辑 /etc/ssh/sshd_config,建议使用内部 SFTP 并限制仅 SFTP:
    • 设置子系统:Subsystem sftp internal-sftp
    • 限制用户组示例:
      Match Group sftpusers
          ChrootDirectory %h
          ForceCommand internal-sftp
          AllowTcpForwarding no
          X11Forwarding no
      
  • 目录与权限要点(Chroot 要求):
    • 家目录属主必须为 root:root,权限 755sudo chown root:root /home/your_username && sudo chmod 755 /home/your_username
    • 为用户创建可写子目录(如上传目录):sudo mkdir /home/your_username/uploads && sudo chown your_username:sftpusers /home/your_username/uploads && sudo chmod 755 /home/your_username/uploads
  • 使配置生效:sudo systemctl restart ssh
  • 说明:使用 internal-sftp 更安全且便于配合 Chroot 实现目录隔离。

四 常见问题排查

  • 连接被拒绝或超时:确认 ssh 服务已启动(sudo systemctl status ssh),云服务器需放行 TCP 22 端口,以及网络可达。
  • 认证失败:核对用户名/密码或私钥;如使用密钥,确保客户端正确加载私钥并配置公钥到服务器对应用户的 ~/.ssh/authorized_keys
  • Chroot 失败或无法写入:检查 ChrootDirectory 的上级目录是否为 root:root 且权限 755,可写目录需放在其下并归属相应用户。
  • 详细日志:查看 /var/log/auth.log 获取 SSH/SFTP 认证与连接细节,有助于定位问题。

0