SSH不使用公共密钥进行身份验证(Windows)

阿里雷扎·基亚尼(Alireza Kiani)

我有一个VPS(Windows Server 2016),并在Windows上使用OpenSSH在其上运行了SSH服务器。我会在此VPS上运行git服务器,因此我在google中搜索了一些教程并找到了配置服务器端设置的教程还可以,我创建了一个裸露的git存储库。我会使用SSH公钥使用自己的计算机连接到git服务器,但是它需要我提供密码!我试图从我自己的PC(没有密码短语)中将我的公共生成的密钥保存在服务器的/.ssh/authorized_keys文件中,但是没有用。当我使用此git clone user@IP_ADDRESS:<repo dir>命令从服务器克隆现有存储库时,它一直告诉我应该输入密码:

Cloning into 'central'...
user@IP_ADDRESS's password:

我试图通过仅按Enter并尝试输入root来跳过密码提示,但仍然无济于事。尽管我过去常常ssh -Tv git@IP_ADDRESS一步一步地看发生了什么,但是我意识到publickey身份验证被跳过了,过程进入了passwordauth方法。

阿里雷扎·基亚尼(Alireza Kiani)

实际上,问题出在服务器上当前用户组的特权上。就我而言,该用户具有管理员特权,因此SSH会在中搜索%PROGRAMDATA%/ssh/administrator_authorized_keys公用密钥。对于Windows中的普通用户帐户,SSH会自动将/users/{username}/.ssh/authorized_keys文件复制到我在其中复制计算机公用SSH密钥的位置。所以我将我的公钥移到了administrator_authorized_keys文件上,现在一切正常。感谢@EdKenbers的回复。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

是否存在“如果用户不使用pubkey / SSH密钥身份验证,请执行x”的SSHD“匹配”参数吗?

在其他应用程序中使用ssh密钥进行身份验证?

使用SSH密钥向GitLab.com进行身份验证时出现问题

当使用SSH密钥进行git身份验证,然后使用HTTP进行克隆时,会发生什么情况?

Boto3-使用Amazon Cognito进行身份验证而不使用访问密钥

不使用身份验证即可进行Hangfire

使用API密钥对Google Directory进行身份验证

Mailkit不使用凭据进行身份验证

Sendgrid使用API密钥进行身份验证

TFVC的ssh密钥身份验证

在公共域上自动进行Windows身份验证?

如何在不使用密码提示的情况下不使用公共密钥身份验证而进行rsync?

基于SSH密钥的身份验证失败

使用密钥的扭曲的ssh服务器身份验证

使用密钥子集进行身份验证/解密

为什么我仍通过公共密钥身份验证通过ssh收到密码提示?

与Keepass + Putty一起使用SSH密钥身份验证时的sudo身份验证

kadmin不使用kinit进行身份验证吗?

仍然通过带有公共密钥身份验证的ssh收到密码提示?

设置与Google的两因素身份验证,但前提是不使用公共密钥

多用户使用基于ssh密钥的身份验证进行远程访问

如何确定使用哪个SSH密钥文件对登录进行身份验证?

设置SSH的公共密钥身份验证后,是否应该删除用户的密码?

限制sshd仅使用ssh-ed25519密钥进行身份验证

如何为Windows SSH设置UNIX的密钥身份验证?

ssh'-i'标志未使用提供的密钥进行身份验证

使用密钥环自动使用 wget 进行身份验证

使用 python 在 Elasticsearch 中进行 API 密钥身份验证

Git 未使用正确的 SSH 密钥进行身份验证