我正在使用 Windows Server 2019
我做了什么:
• 我使用应用程序 > 应用程序和功能在我的虚拟机上安装了“OpenSSH SSH 服务器”。
• 我添加了端口 22 的防火墙规则并启动了 SSH 服务器。
• 我在本地机器上安装了 PuTTYgen,以便可以创建公钥和私钥。
• 我正在使用 Vultr.com 作为云主机,因此我将公钥添加到其网站上的 SSH 密钥中。
• 我在主 ssh 文件夹中创建了“administrators_authorized_keys.pub”文件并在其中添加了公钥。
• 我在主 ssh 文件夹中添加了 authorized_keys 文件夹,并添加了公钥(PuTTY 和 openSSH 类型)和私钥
• 我安装了 PuTTY,因此我可以建立连接
• 我将身份验证密钥(私人 PuTTY 文件密钥)添加到请求中。
• 我使用端口 22
我收到的错误:
• 当我尝试使用主机用户名(或任何其他用户名)登录时,PuTTY 给出“服务器拒绝我们的密钥”响应
• 当我尝试使用' ssh-keygen -t ed25519 -C '[电子邮件保护]“我得到‘生成公钥/私钥’,它就停在那里。它没有询问根在哪里生成它们或任何其他内容。这个过程只是被阻止了。
我也尝试直接使用 ssh-keygen.exe 生成密钥,但它只生成私钥。我尝试使用以下命令从私钥生成公钥: https://blog.tinned-software.net/generate-public-ssh-key-from-private-ssh-key/ 并将所有公钥更改为这个,但仍然无法与 PuTTY 一起使用,仍然给我同样的错误。
正在起作用的是:
• 当我不在PuTTY 请求上设置私钥时,我可以连接到服务器。
问题:
我是否遗漏了任何步骤?我在这里做错了什么,以及如何正确设置 SSH 连接?
答案1
OpenSSH 服务器功能可通过以下 PS 启用。此功能最初在 Windows 10 1804 中引入,然后添加到 Windows Server 2019 中
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Set-Service sshd -StartupType Automatic
Set-Service ssh-agent -StartupType Automatic
Start-Service sshd
Start-Service ssh-agent
使用以下命令连接到服务器
ssh username@domain@servername