温馨提示×

ubuntu sftp是否支持密钥

小樊
43
2026-10-19 21:27:51
栏目: 智能运维

Ubuntu 的 SFTP 是支持密钥登录的。

更准确地说:

  • SFTP 本身 只是基于 SSH 的文件传输协议
  • 真正决定是否支持密钥登录的是 SSH(OpenSSH)
  • Ubuntu 默认自带 OpenSSH Server / Client,天然支持 SSH 公钥认证

一、SFTP 使用密钥的基本原理

  1. 客户端生成 公钥 + 私钥
  2. 把 公钥 放到服务器用户目录下:
    ~/.ssh/authorized_keys
    
  3. 客户端使用 私钥 连接 SFTP
  4. 认证通过即可登录(无需密码)

二、Ubuntu 服务端开启密钥登录(默认已支持)

通常只需确认以下配置(在 /etc/ssh/sshd_config):

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

修改后重启 SSH:

sudo systemctl restart ssh

三、客户端使用密钥连接 SFTP 示例

命令行方式

sftp -i ~/.ssh/id_rsa user@ubuntu_ip

FileZilla / WinSCP

  • 登录类型:密钥文件
  • 选择私钥(如 id_rsa 或 id_rsa.ppk)

四、常见补充说明

  • ✅ 支持 RSA / ED25519 / ECDSA 等密钥
  • ✅ 可 完全禁用密码登录(更安全)
  • ❌ SFTP 本身不“单独”决定认证方式,依赖 SSH

如果你需要,我也可以给你:

  • 完整密钥生成 + 配置教程
  • 禁止密码只允密钥的加固方案
  • Docker / 云服务器中的 SFTP 密钥配置

0 踩