Windows 系统上设置 SSH 密钥验证,实现无暗码登录

打印 上一主题 下一主题

主题 900|帖子 900|积分 2700

Windows 系统上设置 SSH 密钥验证,实现无暗码登录

在一样平常工作中,使用暗码登录长途云服务器通常让人感到繁琐。云服务器的暗码通常较长,难以记忆,每次登录都需要反复输入,既未便捷也影响服从。此外,由于网络不稳固,暗码认证连接容易中断,导致需要频繁重新输入暗码。通过设置 SSH 密钥验证,不但可以省去暗码输入的烦恼,还能提高连接的稳固性和安全性。以下是详细步骤,引导您在 Windows 系统上设置 SSH 密钥验证,实现无暗码登录。
步骤 1:在 Windows 系统上生成 SSH 密钥


  • 打开 PowerShell 或 CMD
    在 Windows 上使用 PowerShell 或 CMD 生成 SSH 密钥。可以在 “开始” 菜单中搜刮 PowerShell 或 CMD 并打开。
  • 生成密钥对
    输入以下命令生成 SSH 密钥对:
    1. ssh-keygen -t rsa -b 4096 -C "snn_adversial"
    复制代码

    • -t rsa:指定密钥类型为 RSA。
    • -b 4096:设置密钥长度为 4096 位,以增加安全性。
    • -C "snn_adversial":解释信息,可用于标识密钥,如使用者名称或用途。
    在命令执行后,会出现以下提示:


  • 保存密钥
    系统会提示输入文件的保存路径,建议按默认路径 C:\Users\Leo\.ssh\id_rsa 保存,直接按回车键即可。
  • 设置暗码短语(可选)
    系统接着会扣问是否设置暗码短语,添加暗码短语会增加安全性,但为了自动化连接,可以直接按回车跳过。

    生成完成后,密钥对会保存在 C:\Users\Leo\.ssh 目录下,包罗以下两个文件:

    • id_rsa:私钥文件,请务必妥善保管。
    • id_rsa.pub:公钥文件,用于在服务器上设置。


步骤 2:将公钥上传到服务器


  • 查看公钥内容
    在 Windows 上,查看公钥文件 id_rsa.pub 的内容。通常以 ssh-rsa 开头并包含一长串字符。请复制整个公钥内容,如下图所示:

  • 通过暗码登录到服务器
    通过以下命令登录服务器(首次登录需要输入暗码):
    1. ssh -p 端口号 root@i-2.gpushare.com
    复制代码
  • 在服务器上设置公钥
    登录服务器后,将公钥添加到 ~/.ssh/authorized_keys 文件中。

    • 首先,创建 .ssh 目录(若已存在则跳过):
      1. mkdir -p ~/.ssh
      2. chmod 700 ~/.ssh
      复制代码
    • 使用文本编辑器(比方 nano)编辑或创建 authorized_keys 文件:
      1. nano ~/.ssh/authorized_keys
      复制代码
    • 将公钥内容粘贴到 authorized_keys 文件中并保存。
    • 设置 authorized_keys 的权限,确保仅用户自己可以访问:
      1. chmod 600 ~/.ssh/authorized_keys
      复制代码


步骤 3:在 Windows 上设置 SSH 客户端使用密钥连接


  • 编辑 SSH config 文件
    打开 C:\Users\Leo\.ssh 目录,在其中创建或编辑 config 文件(无文件后缀)。在文件中添加以下内容以设置 SSH 连接:
    1. Host snn-adversial
    2.   HostName i-2.gpushare.com
    3.   Port 33804
    4.   User root
    5.   IdentityFile C:\Users\Leo\.ssh\id_rsa
    复制代码

    • Host snn-adversial:这是一个连接的别名。
    • HostName:服务器地址。
    • Port:服务器的端口号。
    • User:登录用户名。
    • IdentityFile:私钥的本地路径,指向刚才生成的 id_rsa 文件。

  • 测试连接
    设置完成后,可以通过以下命令来测试 SSH 连接,无需输入暗码:
    1. ssh snn-adversial
    复制代码
    若设置正确,将直接连接到服务器。

步骤 4:可选 - 使用 SSH Agent 缓存暗码短语(如果设置了暗码短语)

如果生成密钥时设置了暗码短语,可以使用 SSH Agent 来缓存,从而制止每次连接都输入暗码短语。

  • 启动 SSH Agent
    在 PowerShell 或 CMD 中输入以下命令启动 SSH Agent:
    1. Start-Service ssh-agent
    复制代码
  • 将私钥添加到 SSH Agent
    使用以下命令将私钥添加到 SSH Agent:
    1. ssh-add C:\Users\Leo\.ssh\id_rsa
    复制代码
  • 输入暗码短语
    添加私钥时会提示输入暗码短语,SSH Agent 会缓存此短语,之后的连接无需再次输入。
验证连接

如今,可以通过以下命令验证连接:
  1. ssh snn-adversial
复制代码
如果统统设置正确,将直接连接到服务器而无需输入暗码或暗码短语。

通过以上步骤,您已经成功在 Windows 上设置了 SSH 密钥认证,实现无暗码自动登录。设置 config 文件和 SSH Agent,可以大大提升连接的便捷性和安全性。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

商道如狼道

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表