温馨提示×

SFTP如何启用公钥认证

小樊
38
2025-11-09 07:46:45
栏目: 编程语言

要启用SFTP的公钥认证,您需要按照以下步骤操作:

  1. 生成SSH密钥对

    • 在客户端机器上打开终端。
    • 输入ssh-keygen命令来生成一个新的SSH密钥对。默认情况下,这将在~/.ssh目录下创建id_rsa(私钥)和id_rsa.pub(公钥)文件。
  2. 将公钥复制到服务器

    • 使用ssh-copy-id命令将公钥复制到服务器的~/.ssh/authorized_keys文件中。例如:ssh-copy-id user@server_ip
    • 如果ssh-copy-id命令不可用,您可以手动将公钥内容追加到服务器上的~/.ssh/authorized_keys文件中。
  3. 配置SSH服务器

    • 登录到服务器,并编辑SSH配置文件(通常是/etc/ssh/sshd_config)。
    • 找到并修改以下配置项以启用公钥认证:
      PubkeyAuthentication yes
      
    • 确保AuthorizedKeysFile指向正确的位置,通常是~/.ssh/authorized_keys
    • 保存并关闭配置文件。
  4. 重启SSH服务

    • 在服务器上重启SSH服务以使更改生效。这可以通过运行以下命令来完成:
      sudo systemctl restart sshd
      
      或者,如果您使用的是较旧的系统,可能需要运行:
      sudo service ssh restart
      
  5. 测试SFTP连接

    • 在客户端机器上尝试使用SFTP连接到服务器。例如:sftp user@server_ip
    • 如果一切配置正确,您应该能够使用公钥认证登录到服务器。

请注意,在执行这些步骤时,确保您具有适当的权限,并且遵循最佳安全实践。此外,根据您的操作系统和SSH服务器软件的不同,某些步骤可能会有所不同。

0