You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

设置Windows OpenSSH的DefaultShell注册表项后密钥验证失败的求助

设置Windows OpenSSH的DefaultShell注册表项后密钥验证失败的求助

我在Windows Server 2022机器上搭建了OpenSSH服务器,采用密钥认证方式,原本一切正常——我可以通过客户端执行命令 ssh myuser@server.tld 成功连接。

但OpenSSH默认使用cmd作为登录shell,我现在更习惯用PowerShell(Core)。于是我修改了注册表中的DefaultShell项,将其指向PowerShell的可执行文件路径,之后还运行了 Restart-Service sshd 命令重启了SSH服务。

结果问题出现了:再次尝试用 ssh myuser@server.tld 连接时,直接返回错误:

myuser@server.tld: Permission denied (publickey)

我的公钥和私钥完全没有改动!只要删除DefaultShell这个注册表项,连接就又能正常工作了(只不过还是默认进入cmd shell)。

请问有没有办法让我既能使用现有的密钥对完成SSH认证,又能默认进入PowerShell环境呢?

备注:内容来源于stack exchange,提问作者Saaru Lindestøkke

火山引擎 最新活动