在 Linux 上生成 SSH 密钥在 Linux 上生成 SSH 密钥在 Linux 上生成 SSH 密钥在 Linux 上生成 SSH 密钥
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

在 Linux 上生成 SSH 密钥

发表 admin at 2025年2月28日
类别
  • 未分类
标签

SSH代表Secure Shell,顾名思义,它用于在客户端与其服务器之间建立安全连接。默认情况下,每个基于 Linux 的操作系统都支持 SSH。 SSH 协议通常用于远程访问、命令和传输文件。因此,在这篇文章中,您将演示如何生成 SSH 密钥并使用它们来保护服务器和宝贵信息。

SSH 密钥生成

当我们生成SSH密钥对时,它是分两步生成的。一是在客户端创建 SSH 密钥,二是将其复制到服务器或任何远程主机。密钥对由 ~/.ssh 目录中分别名为 id_rsa 和 id_rsa.pub 的私钥和公钥文件组成。

我的客户端系统的IP地址是

$ ip a
192.168.18.130

可以通过在终端中运行“ssh-keygen”命令来生成 SSH 密钥。

$ ssh-keygen

它会要求您输入要保存私钥和公钥的文件名,或者您可以使用“.ssh”目录(/home/用户/.ssh/id_rsa)。按 Enter 键选择默认提供的文件。

接下来,它会要求输入密码。密码实际上是一种额外的安全层,用于保护主机和客户端之间的连接。当您登录主机时,它会再次要求输入密码。因此,要么输入密码,要么将其留空并按 Enter 键而不提供任何密码。

完成密码短语后,应该会生成 SSH 密钥。

您可以在屏幕截图中注意到生成的密钥是“RSA 3072”。这意味着什么?

SSH 密钥的算法类型和大小

默认情况下,生成的密钥算法类型为RSA,位大小为3072位。但如果您愿意,您可以更改它。

生成 SSH 密钥的算法主要分为三种类型。

RSA——Rivest Shamir Adleman。它是最小尺寸为 2048 的密钥,它是基于大数因式分解的难度而设计的。

DSA——数字签名算法。此键主要用于 1024 尺寸。

ECDSA – 椭圆曲线数字签名算法。它支持 256、384 和 521 位。

现在,如果您想提供所需的算法类型和位大小,您可以在 ssh-keygen 命令后提供算法类型,后跟 -t 短语,还可以提供位大小,后跟 -b短语。示例如下:

$ ssh-keygen -t rsa -b 4096

正如您在屏幕截图中看到的,密钥的算法类型是 RSA,位大小是 4096。这很好。

将 SSH 密钥复制到主机

您只需在客户端终端中运行下面给出的命令即可将 SSH 密钥复制到主机。

$ ssh-copy-id username@host-ip-address

确保将用户名和主机 IP 地址替换为您的用户名和主机的 IP 地址。我的主机的用户名和 IP 地址是

Username: linuxuser
IP Address: 192.168.18.131

此时您可能会遇到端口 22 拒绝连接的错误。如果出现错误,请访问我们的专门文章(如何修复:Debian/Ubuntu 端口 22 拒绝连接 - Linux 提示)来处理此类错误。

运行上述命令后,将向您确认是否继续连接;输入“是”继续。

复制成功后,您就可以使用 SSH 密钥登录服务器的计算机了。

登录服务器

成功将 SSH 密钥复制到主机后,我们可以使用 ssh 命令并使用以下语法提供主机的用户名和 IP 地址来登录主机。

$ ssh username@host-ip-address

不要忘记将用户名和 IP 地址替换为主机的用户名和 IP 地址。

如果您在终端中输入“ip a”命令,您现在就登录到主机了。

$ ip a

它将显示主机的 IP 地址,因为您现在位于服务器上。

包起来

您可以通过这种方式生成 SSH 密钥、将其复制到主机并使用 SSH 密钥访问主机。太感谢了!

©2015-2025 Norria support@alaica.com