📅  最后修改于: 2023-12-03 15:24:15.891000             🧑  作者: Mango
SSH 密钥用于在 SSH 会话中进行身份验证。它们是公钥和私钥的配对,其中公钥可以放置在远程服务器上,私钥只存储在本地。当您尝试连接远程服务器时,服务器将要求您提供与其存储在其上的公钥匹配的私钥。因此,私钥存在于您的本地计算机上,而不会被暴露给任何其他人。
您可以使用 ssh-keygen 命令在 Linux 中生成 SSH 密钥。以下是如何执行此操作的步骤:
打开命令行终端
运行以下命令以生成 SSH 密钥:
ssh-keygen -t rsa -b 4096
这将生成一个 RSA 算法的 SSH 密钥,位数为 4096。您可以将其更改为其他密钥类型和位数。然后将提示您输入此密钥的名称和存放位置。如果您接受默认值,将在 ~/.ssh/ 中生成一个名为“id_rsa.pub”的公钥文件和一个名为“id_rsa”的私钥文件。
现在,您已经生成了 SSH 密钥,您可以将其上传到远程服务器以进行身份验证。将公钥文件中的密钥内容复制到远程服务器上的 ~/.ssh/authorized_keys 文件中即可。这可以通过以下命令完成:
ssh-copy-id username@remote_host
其中,username 是您在远程服务器上的用户名,remote_host 是远程服务器的 IP 地址或 FQDN。
最后,运行以下命令可以通过 SSH 密钥进行身份验证:
ssh username@remote_host -i ~/.ssh/id_rsa
其中,username 是您在远程服务器上的用户名,remote_host 是远程服务器的 IP 地址或 FQDN。
现在,您已经了解了如何在 Linux 中生成 SSH 密钥,并将其用于身份验证。