通过 SSH 进入 WIN 10

通过 SSH 进入 WIN 10

服务器宇宙的人们,来自同为学徒的你们,向您致以谦卑的问候。

以上内容表明我是一名新手,因此需要一些琐碎问题的帮助,因此请提前感谢所有帮助。

我在从 Linux 或 MacOS SSH 进入 Win10 家庭版 PC 时遇到 2 个问题需要帮助。

  1. 尽管我将我的 (linux/macos) id_rsa.pub 密钥复制到 authorized_keys 文件 (win10) 中,它仍然要求输入密码。另外需要指出的是,由于ssh-copy-id问题 #2,我手动复制了密钥,因为无法正常工作
  2. 当我登录 win10 时如何更改默认 shell,目前我使用命令提示符来欢迎我,如下所示,我有 bash(WSL),并且希望当我通过 ssh 进入它时它成为默认提示符。

Microsoft Windows [Version 10.0.19042.1466]

(c) Microsoft Corporation. All rights reserved.

panda@DESKTOP-TEST C:\Users\panda>

答案1

我假设您安装了 Microsoft β 版本的本机 openssh 服务器?

Microsoft 文档解释了如何在服务器端使用 Powershell 部署 ssh 密钥。

尽管如此,你仍然想要 bash:

2/ 可以通过在注册表中添加属性来配置 Microsoft 提供的 shell:

New-ItemProperty -Path“HKLM:\SOFTWARE\OpenSSH”-Name DefaultShell -Value“C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe”-PropertyType String -Force Blockquote

您还可以使用“bash”脚本来修改您的 %PATH% 并添加您可能在服务器上安装的任何第三方 bash(cygwin、msys、git-bash……)。

1/ 再次尝试 ssh-copy-id :) 但请记住,只有 ed25519 密钥才有效。 you@unix$ ssh-keygen -t ed25519可能会帮到你。也可能不行:我不确定 Microsoft 的 openssh 实现,如果 ACL(及其 Administrator_Authorized_Keys 机制)未正确修复,ACL 管理可能会在部署 ssh 密钥后阻止你登录。

顺便说一句:微软的文档非常清楚。 https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_server_configurationhttps://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_keymanagement

相关内容