介绍
PuTTY 是用于从 Windows 连接到 Linux 设备的事实标准。 使用 PuTTY 的最佳方式是使用安全外壳 (SSH) 密钥。 人们更喜欢将 PuTTY 与 SSH 密钥一起使用,这样他们就不必记住他们的 SSH 密码。 使用 PuTTY 使用户能够使用更强的密码,以防止因蛮力攻击而导致密码泄露。
为了增加安全性,您还可以将 PuTTY 与 SSH 密钥和密码一起使用。 这样,如果黑客获得了您的 SSH 密钥,他们仍然无法通过 SSH 登录,因为他们还需要您的密码。 这是一种两因素身份验证的形式。 本教程概述了如何使用 SSH 密钥在有和没有密码的情况下使用 PuTTY。
PuTTY 的初始设置
在本例中,我们使用 host.example.com 作为 Linux 服务器。 使用您的域名代替示例。
给您的服务器一个昵称(也称为主机名)是个好主意。 执行此操作时,必须在DNS 中进行设置,否则将无法使用。 如果您还没有这样做,您可以使用您服务器的 IP 地址而不是您的域名。
1.在您的Windows系统上下载。
2. 为我们的 host.example.com 服务器创建配置文件/保存的会话。
SSH 的默认端口是 22。许多人使用不同的端口来减少暴力攻击。 您可能需要仔细检查并查看您的服务器设置为使用哪个端口。 如果您不确定,请尝试使用 22,如下例所示。
3. 前往 联系, 然后 数据, 并在自动登录用户名文本框中输入您要使用的用户名。 在这个例子中,我们使用 root。
4.然后,回到 会议. 在下面 保存的会话, 输入您服务器的昵称。 通常,您在“主机名”和“已保存的会话”框中会有相同的内容。 如果您没有 DNS 设置,您可以在 主机名 框和昵称 Save 会话 盒子。
![](/wp-content/uploads/2022/06/1634680292.png)
5. 现在,单击 Save 按钮。 这将保存您的配置文件/保存的会话,因此您不必每次打开 PuTTY 时都对其进行配置。 下次打开 PuTTY 时,只需单击 加载 按钮,然后 打开.
![](/wp-content/uploads/2022/06/1634680293.png)
连接到 SSH 服务器
如果您是第一次连接到您的服务器,您将收到以下有关 SSH 密钥指纹的安全警告。 这是为了防止中间人攻击。 当黑客收集在用户和未受保护(无 SSL 证书)网站之间传输的登录凭据时,就会发生这些攻击。 点击 接受 继续并将缓存的密钥保存在注册表中。
注意:如果您以后收到此消息,请不要连接! 让安全专家帮助您找出密钥不匹配或丢失的原因。 如果您是 Liquid Web 的客户,请联系支持人员寻求帮助。
![](/wp-content/uploads/2022/06/1634680294.png)
您之前保存了用户名,因此您只需要输入密码。
![](/wp-content/uploads/2022/06/1634680294-1.png)
现在,您可以使用用户名和密码轻松登录。
使用 PuTTY 生成 SSH 密钥
密码有时很容易被破解,例如在蛮力攻击中。 此外,安全最佳实践规定为每个单独的登录使用不同的密码。 通过使用 SSH 密钥,您不仅可以少记住一个密码,而且以一种安全的方式完成。
1. 生成公钥/私钥 SSH 密钥对。
使用 PuTTYgen 创建/生成公共/私有 SSH 密钥对。 只需双击您之前下载的可执行文件 (puttygen.exe)。 在下面 要生成的密钥类型,默认为 RSA (第一个选项,这是 SSH-2 RSA 的选项)和 2048 没事。 不推荐使用 SSH-1 RSA,因为它不太安全。 点击 产生 按钮。
![](/wp-content/uploads/2022/06/1634680295.png)
2. 在空白区域移动光标,生成一个随机的 SSH 密钥。
![](/wp-content/uploads/2022/06/1634680296.png)
3. 现在已经生成了公共/私有 SSH 密钥对,您可以选择:
- 选项 A:没有密码的 SSH 密钥。
- 选项 B:带有密码的 SSH 密钥。
虽然密码和密码短语几乎相同,但密码通常是一个单词,而密码短语则是一个句子。 此外,PuTTY/Linux 将它们视为两种不同的东西。 如果您使用 SSH 密钥,除非出现问题,否则不会提示您输入密码。
如果您想使用密码,请立即输入,否则将其留空。 添加密码短语可为 SSH 密钥增加一层额外的安全性,但您必须记住它。 如果您决定使用密码,则需要输入两次密码(在 Key passphrase 和 Confirm passphrase 下)。
4. 下 关键评论,您可以输入任何内容。 人们通常使用他们的电子邮件地址。
然后,点击 Save 公钥 并将其保存到计算机上的安全位置。 您可以使用任何您想要的扩展名,但人们通常使用 .pub 或 .pub.key。 例如,host.example.com.pub.key。
![](/wp-content/uploads/2022/06/1634680297.png)
![](/wp-content/uploads/2022/06/1634680298.png)
5. 点击 Save 私钥. 这一次,名称必须以 .ppk 结尾。 例如,host.example.com.ppk。
![](/wp-content/uploads/2022/06/1634680299.png)
将您的 SSH 密钥复制到服务器
1. 从 PuTTYgen 窗口复制公钥。
![](/wp-content/uploads/2022/06/1634680300.png)
2. Save 服务器上的公钥
现在,您应该登录到您的服务器(如果您之前还没有登录过)。 您现在仍将使用用户名和密码。 您需要将公钥粘贴到文件 ~/.ssh/authorized_keys 中(在一行中)。
注意:旧的 Linux 服务器使用文件 authorized_keys2 而不是文件 authorized_keys。 因此,如果它不起作用,请尝试使用 ~/.ssh/authorized_keys2 而不是 ~/.ssh/authorized_keys。
![](/wp-content/uploads/2022/06/1634680300-1.png)
![](/wp-content/uploads/2022/06/1634680301.png)
![](/wp-content/uploads/2022/06/1634680302.png)
设置该文件的权限,使其只能由该用户读取/写入。
![](/wp-content/uploads/2022/06/1634680303.png)
3. 将私钥附加到您的 Save PuTTY 中的会话。
如果您仍然连接到服务器,请断开连接/close PuTTY 并打开一个新实例。
点击 主机.example.com,然后单击 加载.
![](/wp-content/uploads/2022/06/1634680304.png)
4. 进行选择 SSH认证, 然后 认证方法,最后点击 浏览.
![](/wp-content/uploads/2022/06/1634680305.png)
5. 找到您之前保存的私钥。
![](/wp-content/uploads/2022/06/1634680305-1.png)
![](/wp-content/uploads/2022/06/1634680306.png)
6.回到 会议 并点击 Save 按钮。
![](/wp-content/uploads/2022/06/1634680307.png)
您已将您的私钥附加到您的 host.example.com 配置文件/保存的会话。
您的第一个 PuTTY SSH 密钥登录
一切准备就绪,您可以登录。确保在 Saved Sessions 中选择了 host.example.com,然后单击 打开 按钮。
![](/wp-content/uploads/2022/06/1634680308.png)
如果您设置了密码,系统会提示您输入。 否则,它会在不提示输入密码的情况下让您登录。
![](/wp-content/uploads/2022/06/1634680309.png)
在这里,您可以看到设置密码后的样子。 请注意,它说的是密码而不是密码。
![](/wp-content/uploads/2022/06/1634680310.png)
注意:如果它仍然提示您输入密码,则可能是密钥或权限有问题,您没有按照正确的步骤操作,或者其他地方有问题。 如果您是 Liquid Web 的客户,请联系支持部门寻求帮助。
结论
现在,您可以使用 PuTTY SSH 密钥连接到您的服务器。 虽然没有密码登录很方便,但您可以使用 PuTTY 密钥和密码提高安全性。 您正在使用更安全的服务器。
正在寻找安全托管来测试这些概念? Liquid Web 有 VPS 和专用主机可供选择。 立即联系我们的销售团队,以确定适合您的下一个项目的合适产品。
![kb-banner-lw-hosting](/wp-content/uploads/2022/06/1634680310.jpg)