温馨提示×

Ubuntu SSH密钥认证步骤

小樊
54
2025-07-25 13:14:57
栏目: 智能运维

在Ubuntu上设置SSH密钥认证的步骤如下:

在客户端生成SSH密钥对

  1. 打开终端。
  2. 运行命令 ssh-keygen -t rsa -b 4096 -C "your_email@example.com" 生成密钥对。您可以将 "your_email@example.com" 替换为您的实际电子邮件地址。
  3. 按Enter键使用默认路径(~/.ssh/id_rsa)保存密钥。
  4. 输入一个可选的密码短语(passphrase)以增加安全性。

将公钥复制到服务器

  1. 使用以下命令将公钥复制到服务器的 ~/.ssh/authorized_keys 文件中:
    ssh-copy-id username@your_server_ip
    
    username 替换为您的用户名,your_server_ip 替换为服务器的IP地址。

在服务器端配置SSH

  1. 登录到服务器:
    ssh username@your_server_ip
    
  2. 使用文本编辑器(如nano)打开SSH配置文件:
    sudo nano /etc/ssh/sshd_config
    
  3. 找到以下行并设置为 no 以禁用密码认证:
    PasswordAuthentication no
    
  4. 如果需要,也可以禁用root登录:
    PermitRootLogin no
    
  5. 保存文件并退出编辑器。
  6. 重启SSH服务以应用更改:
    sudo systemctl restart sshd
    

测试SSH密钥认证

  1. 从服务器注销:
    exit
    
  2. 尝试使用密钥登录:
    ssh username@your_server_ip
    
    如果您设置了密码短语,系统会提示您输入该短语。

注意事项

  • 备份私钥:确保备份私钥文件,并将其存储在安全的地方。
  • 权限设置:确保服务器上的 .ssh 目录权限为 700authorized_keys 文件权限为 600
  • 安全性:设置强密码短语,并定期更新密钥对以增强安全性。

完成以上步骤后,您应该能够使用SSH密钥对成功登录到您的Ubuntu服务器,而无需输入密码。

0