插件窝 干货文章 如何通过SFTP访问远程目录

如何通过SFTP访问远程目录

目录 远程 文件 SFTP 100    来源:    2025-05-07

通过SFTP访问远程目录指南

SFTP (SSH File Transfer Protocol) 是一种安全的文件传输协议,基于SSH连接。以下是使用SFTP访问远程目录的详细方法:

基本连接方法

1. 使用命令行连接

sftp username@remote_host

或指定端口(默认22):

sftp -P port_number username@remote_host

2. 使用密钥认证连接

sftp -i /path/to/private_key username@remote_host

常用SFTP命令

连接成功后,可以使用以下命令操作远程目录:

命令 描述
ls 列出远程目录内容
lls 列出本地目录内容
cd 更改远程工作目录
lcd 更改本地工作目录
pwd 显示远程当前目录
lpwd 显示本地当前目录
get 下载文件
put 上传文件
mkdir 创建远程目录
lmkdir 创建本地目录
rm 删除远程文件
rmdir 删除远程目录
exitquit 退出SFTP会话

图形界面工具

  1. FileZilla:

    • 选择"文件" > "站点管理器"
    • 新建站点,协议选择"SFTP"
    • 输入主机、用户名、密码(或密钥文件)
    • 点击"连接"
  2. WinSCP (Windows):

    • 新建会话,选择SFTP协议
    • 输入主机名、用户名和密码
    • 可选择保存会话供以后使用
  3. Cyberduck (Mac):

    • 点击"打开连接"
    • 选择SFTP协议
    • 输入服务器地址和认证信息

高级用法

批量下载文件

sftp username@host <<EOF
get /remote/path/*.txt /local/path/
bye
EOF

使用SSH配置文件简化连接

编辑 ~/.ssh/config 文件:

Host myserver
    HostName remote_host
    User username
    Port 22
    IdentityFile ~/.ssh/id_rsa

然后只需执行:

sftp myserver

常见问题解决

  1. 连接被拒绝:

    • 确认远程服务器SSH服务正在运行
    • 检查防火墙设置
    • 验证端口是否正确
  2. 认证失败:

    • 检查用户名和密码
    • 如果使用密钥,确认公钥已添加到远程服务器的~/.ssh/authorized_keys
  3. 权限问题:

    • 确保远程目录有读写权限
    • 检查本地目录的写入权限
  4. 提高传输速度:

    • 使用压缩传输: sftp -C username@host
    • 对于大量小文件,考虑先打包再传输

通过以上方法,您可以安全高效地使用SFTP访问和管理远程目录中的文件。