如何在 Windows 中添加/安装公钥?

ram*_*amg 6 openssh putty

我正在尝试在客户端电脑上使用 putty 并在服务器电脑上使用 openssh 从另一台 Windows 电脑登录 Windows 电脑。我已经可以通过输入用户名和密码连接到上述电脑。但我想使用我已经使用 puttygen 生成的密钥对登录。我如何将公钥添加到服务器(windows pc)?我把公钥放在哪里?

附加信息:

我设法通过使用客户端计算机上的winscp 将公钥安装到服务器的以下位置来添加公钥:c:/users/myusername/.ssh/authorized_keys。

但是当我尝试使用私钥登录时,它显示“服务器拒绝我们的密钥”。我读过,我必须将权限授予 .ssh 文件夹和authorized_keys 文件才能使其工作。我见过这方面的例子,但是是在Linux中,但是如何在Windows上准确地做到这一点?

我尝试登录的计算机中只有一名用户,如果该信息有帮助的话,它也是管理员。

Roa*_*oan 0

通常您会将公钥添加到:

    > C:\Users\myUserName.myDomainName\.ssh\id_rsa.pub  
Run Code Online (Sandbox Code Playgroud)

如果其中没有,您可以将公钥粘贴到文件中。

    ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQBp2eUlwvehXTD3xc7jek3y41n9fO0A+1234567ZAvuqrwNcR2K7UXPVVkFmTZBes3PNnab4UkbFCki23tP6jLzJx/MufHypXprSYF3x4RFh0ZoGtRkr/J8DBKE8UiZIPUeuaaaaaaXztvP+pVXT+HfSnLdN62lXTxLUp9EBZhe3Eb/5nwFaKNpFg1r5NLIpREU2H6fIepi9z28rbEjDj71Z+GOKDXqYWacpbzyIzcYVrsFq8uqOIEh11111R9H0k4lRhKNlIANyGADCMisGWwmIiPJUIRtWkrQjUOvabcdefgcofuxKaWaF5NqwKCc5FDVzsysaL5IM9/gij8837QN7z rsa-key-20141103  
Run Code Online (Sandbox Code Playgroud)

(请注意,这不是我或其他任何人的公钥或私钥,这只是一个演示密钥。)

保存文件并关闭文本编辑器。

现在,您可以按照图像浏览到“Auth”配置选项中的密钥来指定密钥的位置:

在此输入图像描述

如果上述内容不够清楚,此链接可以作为如何更详细地进行整个过程的指导。
https://devops.ionos.com/tutorials/use-ssh-keys-with-putty-on-windows/

客户端使用 (ssh)

  1. 在客户端生成密钥对(最好带有密码):

    ssh-keygen -t rsa -f id_rsa

  2. 使用 ssh-agent 注册私钥(可选,用于单点登录体验)

    net start ssh-agent
    ssh-add id_rsa

  3. 使用私钥登录

    ssh -i .\id_rsa user@host (工作组用户)
    ssh -i .\id_rsa -l user@domain host (域用户)

设置服务器端(sshd)

  1. 将 id_rsa.pub(客户端的公钥)的内容附加到相应用户目录中的以下文件(如果需要,请创建一个)。

    %systemdrive%\Users\.ssh\authorized_keys

  2. 仔细检查authorized_keys的访问权限(只有系统、管理员和所有者可以访问)。

    icacls %systemdrive%\Users\.ssh\authorized_keys