Linux基础:如何在Shell上创建和安装SSH密钥

Linux基础知识:如何在Shell上创建和安装SSH密钥

内容

  • 1.1 SSH密钥 - 概述
  • 1.2在Linux-A上分步安装SSH密钥
  • 结论

1.1 SSH密钥 - 概述

________________________________________

SSH密钥提供了一种高度安全的登录到SSH服务器的方式,而不仅仅是依赖于密码。 虽然密码存在终于破解的风险,但SSH密钥是不可能使用强力来解密的。 事实上,生成密钥对为用户提供了两个冗长的字符串,这些字符对应于公共密钥和私钥。 因此,用户可以将公钥放在任何服务器上,然后通过与已经拥有私钥的客户端连接来解锁该密钥。 在匹配两个键之后,系统解锁,而不会对密码产生任何不利影响。 可以通过用密码保护私钥来进一步智能防火墙的安全。

1.2在Linux-A上分步安装SSH密钥

下面概述了详细说明在Linux服务器上安装SSH密钥的过程的分步指南:

第一步创建RSA密钥对

________________________________________

安装过程的第一步是在客户端机器上创建密钥对,这通常不是您自己的系统。 用户需要使用以下命令:

ssh-keygen -t rsa

上述命令为用户启动SSH密钥安装过程。

第二步 - 存储密钥和密码

________________________________________

输入主要的“基本密钥”命令后,用户需要通过以下提示进行以下操作:

Enter the file where you wish to save the key (/home/demo/.ssh/id_rsa)

用户需要按ENTER键才能将文件保存到用户的家中

下一个提示如下:

Enter passphrase

如果作为管理员,您希望分配密码,您可以在提示时(根据上述问题)执行此操作,但这是可选的,您可以将该字段留空,以防您不希望分配密码。

然而,有必要注意的是,键入独特的密码确实提供了以下列出的一系列优点:

密钥的安全性,即使高度加密,在很大程度上取决于其对任何其他方的隐含性。我在可能的密码保护私钥陷入未经授权的用户的保管情况下,将无法登录到其盟友账户,直到破解密码为止。这总是给受害者(黑客用户)珍贵的额外时间来避免黑客招标在缺点上,为密钥分配密码需要您在每次使用密钥对时键入密钥,这使得进程成为可能乏味,但绝对失败。

以下是端到端密钥生成过程的大纲:
root@server1:~# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
38:16:50:fe:8d:da:02:bb:46:1b:66:0c:10:8e:81:2d root@server1.example.com
The key's randomart image is:
+--[ RSA 2048]----+
|+o ... |
|E.. o |
|.+ o |
| . + o |
| o. + S . |
| *+ + |
| +.oo . |
| o. . |
| .. |
+-----------------+

公钥现在可以追溯到链接〜/ .ssh / id_rsa.pub

私钥(标识)现在可以追溯到link- / home / demo / .ssh / id_rsa 3

第三步复制公钥

________________________________________

一旦生成了不同的密钥对,下一步仍然是将公钥放在我们打算使用的虚拟服务器上。 用户可以使用ssh-copy-id命令将公钥复制到新机器的authorized_keys文件中。 以下是用于键入用户名和IP地址的规定格式(严格为示例),并且必须用实际的系统值替换:

ssh-copy-id user@192.168.0.100

或者,用户可以使用SSH(按照给定的命令)粘贴密钥:

cat ~/.ssh/id_rsa.pub | ssh user@192.168.0.100 "cat >> ~/.ssh/authorized_keys"

上述任何一种命令在使用时都将在系统上抛出以下消息:

主机'192.168.0.100'的真实性无法建立。 RSA键指纹为b1:2d:32:67:ce:35:4d:5f:13:a8:cd:c0:c4:48:86:12。您确定要继续连接(是/否)? yes警告:永久添加“192.168.0.100”(RSA)到已知主机列表。 user@192.168.0.100的密码:请尝试使用“ssh'user@192.168.0.100'”登录机器,并登录:〜/ .ssh / authorized_keys,确保我们没有添加额外的密钥没想到。

上述练习后,用户可以随时登录到user@192.168.0.100,而不会提示输入密码。 但是,如果您之前已经为密钥分配密码(按照上述第2步),系统将提示您在此时输入密码(每次进行后续登录)。

第四步(此步骤为可选) - 禁用密码以促进根登录

用户将SSH密钥复制到服务器后,只能使用SSH密钥进行无缝登录,可以选择限制根登录,只允许SSH密钥相同。 为此,用户需要使用以下命令访问SSH配置文件:

sudo nano /etc/ssh/sshd_config

访问文件后,用户需要在文件中找到包含PermitRootLogin的行 ,并修改该文件,以确保使用SSH密钥进行笨重连接。 以下命令将帮助您做到这一点:

PermitRootLogin without-password

该过程的最后一步仍然是通过使用以下命令来实现更改:

reload ssh

以上完成了在Linux服务器上安装SSH密钥的过程。

结论

上述步骤可以帮助您以完全安全,安全和无忧的方式在任何虚拟专用服务器上安装SSH密钥。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏