SSH(安全 Shell) 允许用户通过安全连接远程执行某些任务,例如文件传输、端口转发、隧道创建、远程服务器配置等。 SSH客户端已预安装 Linux 系统。 SSH提供两种密码认证方式: 密码认证 和 基于公钥的身份验证(SSH 密钥)。 在这些技术中,与它支持的较长密码相比,基于公钥的身份验证可实现更高级别的安全性 密码。
本文介绍如何生成 SSH 密钥 ssh 注册机 在 Linux/Ubuntu 22.04 LTS。 本文将讨论:
- 如何生成/创建 SSH 密钥 Linux/Ubuntu?
- 如何生成/创建不同类型和大小的 SSH 密钥?
- 如何使用 SSH 密钥登录或连接到远程服务器?
- 如何禁用 SSH 密码验证?
如何使用 ssh-keygen 生成/创建 SSH 密钥 Linux/Ubuntu?
要生成 SSH 密钥对,需要执行以下步骤:
步骤1:检查SSH密钥对是否存在
在开始 SSH 密钥生成过程之前,用户可以检查系统中是否已存在 SSH 密钥,因为如果系统中已存在 SSH 密钥,则密钥将被覆盖。 用户可以运行以下命令来检查系统中是否存在 SSH 密钥:
$ LS -l ~/.ssh/ID_*.pub
从上图可以看出系统中没有SSH密钥。
步骤2:生成SSH密钥对
SSH密钥对是通过运行以下命令生成的
$ ssh 注册机
然后提示用户输入存储密钥和密码的文件位置。 然后使用标准参数生成 SSH 密钥对,即 RSA 类型为 3072 位。 密钥存储在 /home/linuxuser/.ssh 默认目录。
步骤 3:验证 SSH 密钥生成
要检查是否生成了密钥,请运行以下命令:
$ LS -l ~/.ssh/ID_*.pub
通过上图可以查看SSH key是否已经生成。 可以通过导航到 /home/linuxuser/.ssh 目录来查看生成的密钥 光盘 命令:
$ 光盘 /家/Linux用户/.ssh
从上图可以看出公钥和私钥已经成功生成,即 id_rsa.pub 和 id_rsa。 这些键可以通过查看 猫 命令。
要查看公钥,请运行以下命令:
$ 猫 id_rsa.pub
同样,可以通过运行以下命令查看私钥:
$ 猫 id_rsa
如何生成/创建不同类型和大小的 SSH 密钥?
ssh 注册机 默认情况下,生成 RSA 类型和 3072 位的密钥,但用户可以使用以下命令更改这些参数 类型 (-t) 和 尺寸 (-b) 标志后面跟着 ssh 注册机 命令。 可以生成三种类型的密钥:
- RSA(里维斯特·沙米尔·阿德曼):RSA 使用单独但数学上相关的密钥进行加密和解密。 它使用 2048 和 3072 位的密钥大小。
- DSA(数字签名算法):DSA 比 RSA 更快。 DSA 通常使用 1024 位的密钥大小。
- ECDSA(椭圆曲线数字签名算法):ECDSA 比 DSA 和 RSA 更安全、更快速。 此外,ECDSA 使用较低的带宽,并通过使用较小的密钥大小(即 256、384 和 521 位)实现更高级别的安全性。
以下命令生成 384 位 ECDSA 密钥:
$ ssh 注册机 -T ECDSA -B 第384章
在哪里:
- t:类型,例如RSA、DSA、ECDSA。
- b:位(256 位、384 位或 521 位)
然后提示用户输入存储密钥和密码的文件位置。 然后生成 ECDSA 类型和大小 384 的 SSH 密钥对。
要检查是否生成了密钥,请运行以下命令:
$ LS -l ~/.ssh/ID_*.pub
从上图可以验证SSH密钥: id_ecdsa.pub 被生产。
如何使用 SSH 密钥登录远程服务器?
用户可以使用生成的 SSH 密钥登录远程服务器,如下所示:
步骤一:将公钥复制到 Ubuntu 远程服务器。
开放SSH 是一种连接工具,可以对文件传输和远程登录进行安全加密。 以下命令将安装 Open SSH
$ sudo 合适的 安装 openssh 服务器
按 是 继续安装。 Open SSH 安装需要几秒钟才能完成。
可以通过以下方式检查 SSH 服务的状态:
$ sudo 服务 SSH 地位
从上图可以看到SSH服务是活跃的。 接下来,通过运行以下命令将之前生成的公钥复制到远程服务器:
$ ssh-复制-id linuxuser@Ubuntu
在哪里:
- ssh-copy-id:用于将 SSH 密钥复制到服务器的命令行工具。
- linuxuser:用户名。
- Ubuntu:远程服务器的 IP 或主机名。
上述命令可用于检查公钥是否已添加到远程服务器。
第 2 步:使用 SSH 密钥登录/连接到远程服务器
用户可以通过以下方式登录远程服务器 ssh命令 通过运行以下命令:
$ SSH Linux用户@Ubuntu
在哪里:
- linuxuser:用户名。
- Ubuntu:远程服务器IP或主机名。
然后,系统会提示用户输入在生成 SSH 密钥时选择的私钥的密码:
Enter 输入密码并按 开锁 登录远程服务器:
从上图可以看到远程服务器登录成功。
如何禁用 SSH 密码验证?
通过禁用 SSH 密码身份验证可以启用额外的安全层。 要禁用 SSH 密码验证,用户可以按照以下步骤操作:
- 使用以下命令登录远程服务器 sudo 权限并修改SSH配置文件ie sshd_配置 通过运行以下命令:
$ sudo 纳米 /ETC/SSH/sshd_配置
- 注释掉“密码验证是”行。
- 将“是”替换为“否”,如下所示:
- 按保存并退出文件 [Ctrl+O] 和 [Ctrl+X]。
- 通过运行以下命令重新启动 ssh:
$ sudo 重启系统ctl SSH
- 检查 SSH 的状态以确保 SSH 已启动并正在运行。
$ sudo 系统控制状态 SSH
上图确认服务器上禁用了 SSH 密码身份验证。
文凭
SSH 密钥对由“ssh 注册机”命令。此外,还可以通过“选择按键类型和大小”-T” 和 ”-B” flags 或 本文展示了如何使用 ssh-keygen 生成 SSH 密钥 Linux/Ubuntu 22.04 LTS。 此外,通过注册 Ubuntu 本文还介绍了如何使用具有 SSH 公钥的远程服务器以及禁用基于密码的身份验证。