macOS 自带的功能
- 访达:前往 → 连接服务器可以连接 SMB、NFS 和 WebDAV 共享,以只读方式连接 FTP 服务器。SFTP 不在列表中。Apple 在将 Mac 连接到共享电脑和服务器中介绍了这些选项。
- 终端:
sftp user@host会打开一个交互式会话,scp file user@host:/path会拷贝一个文件。两者都很快,也会使用你的 SSH 密钥,但什么都看不到:每个路径都得手动输入。
偶尔传几个文件,终端就够用了。日常工作中,能同时看到两侧的客户端更方便。
挑选 SFTP 客户端要看什么
| 要看什么 | 为什么重要 |
|---|---|
使用你自己的 ~/.ssh 密钥、代理和配置 |
无需再维护第二套密钥和主机 |
跳板机(ProxyJump) |
很多服务器位于堡垒机之后 |
根据 known_hosts 检查主机密钥 |
服务器不是你预期的那台时会提醒你 |
| 你的 Mac 和服务器并排显示 | 每次拷贝的两端都看得到 |
| 连接中断后仍能完成的拷贝 | 大文件上传会自行完成 |
| 用你自己的编辑器编辑 | 无需手动下载就能修改配置文件 |
AnyBucket 全都做到了。对比列出了其他 Mac App 介绍了其中哪些功能。
连接 SFTP 服务器
- 按 ⇧⌘K(文件 → 连接服务器…),然后选择 SFTP。
- 输入服务器地址和你的用户名。如果你用密钥登录,密码留空即可。
- 连接。如果是第一次连接,AnyBucket 会显示服务器的主机密钥;在信任它之前,请将其指纹与管理员公布的指纹进行比对。
- 把它存储为书签,下次在 ⌘K 中输入几个字母就能找到。
你也可以把地址粘贴到命令面板中:按 ⌘K,然后粘贴 sftp://deploy@example.com/var/www。
拷贝文件
- 按 ⌘\ 打开第二个窗格,选择本机或另一台服务器。
- 用 Space 标记文件,或按 + 并输入
*.html之类的模式。 - 按 F5 将它们拷贝到另一个窗格,或按 F6 移动。
遇到连接中断的传输会换用新连接重试,退出后队列也会恢复。两个窗格位于同一台 SFTP 服务器上、且你的账户有 shell 时,拷贝会用 cp 在服务器上完成,不会有任何内容下载到你的 Mac。
在服务器上编辑文件
在文件上按 F4 并选择一个 App。AnyBucket 会在那个 App 中打开它,你每次存储时都会上传更改。F3 会用快速查看显示文件,无需打开任何 App。⇧⌘C 会拷贝文件的 URL。
密钥、配置和跳板机
由于 AnyBucket 运行的是 /usr/bin/ssh,只要在终端中 ssh user@host 能用,在这里就能用:密码、密钥、代理、包含 Host、IdentityFile 和 ProxyJump 的 ~/.ssh/config,以及安全密钥。如果登录失败,请先在终端中尝试同一台主机。SSH 密钥和跳板机会一步步带你完成设置。