温馨提示×

Ubuntu SSH如何生成密钥

小樊
47
2025-03-04 05:59:30
栏目: 智能运维
Ubuntu服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Ubuntu系统中生成SSH密钥的步骤如下:

  1. 打开终端(Terminal)。

  2. 输入以下命令来生成一个新的SSH密钥对。将your_email@example.com替换为你自己的电子邮件地址,这个地址将用于识别你的密钥。

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    

    这里:

    • -t rsa 指定使用RSA算法。
    • -b 4096 指定密钥长度为4096位。
    • -C "your_email@example.com" 添加一个注释,通常是你的电子邮件地址。
  3. 当提示你“Enter a file in which to save the key”时,按Enter键接受默认文件位置(通常是/home/your_username/.ssh/id_rsa)。

  4. 接下来,系统会提示你输入一个安全的密码短语(passphrase)。你可以选择输入一个密码短语来增加密钥的安全性,也可以直接按Enter键留空。

  5. 密钥生成后,你可以使用以下命令来查看公钥内容:

    cat ~/.ssh/id_rsa.pub
    

    如果你在生成密钥时设置了密码短语,可能需要输入它才能查看公钥。

  6. 将生成的公钥添加到远程服务器的SSH密钥认证中。首先,你需要复制公钥内容。可以使用以下命令:

    pbcopy < ~/.ssh/id_rsa.pub
    

    然后,登录到你的远程服务器,并编辑或创建~/.ssh/authorized_keys文件:

    ssh your_username@remote_host
    mkdir -p ~/.ssh
    chmod 700 ~/.ssh
    vi ~/.ssh/authorized_keys
    

    authorized_keys文件中粘贴你的公钥内容,然后保存并退出编辑器。

  7. 确保远程服务器上的SSH配置允许密钥认证。编辑远程服务器上的/etc/ssh/sshd_config文件:

    ssh your_username@remote_host
    sudo vi /etc/ssh/sshd_config
    

    确保以下行没有被注释掉(即没有以#开头):

    PubkeyAuthentication yes
    

    如果进行了更改,请重启SSH服务:

    sudo service ssh restart
    

现在,你应该能够使用SSH密钥对来登录到远程服务器了。尝试使用以下命令登录:

ssh your_username@remote_host

如果一切设置正确,你将无需输入密码即可登录。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:Ubuntu SSH如何生成密钥对

0