解决windows11下SSH不能连接远端服务器-Permission denied (publickey)-Permissions for ‘xxx‘ are too open-管道不存在等问题

可能出现的报错

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'xxx' are too open.
Permission denied (publickey)
Bad configuration option: permitrootlogin
connect to host port 22: Connection refused
过程试图写入的管道不存在

问题解决

按照下面的步骤做一遍。我也搞不清哪些解决方式和哪些问题对应,多试一试就好了。

config文件配置

Host xxx
  HostName xxx.xx.xx.xxx
  User xxx
  Port 22
  IdentityFile "xxx"
  PasswordAuthentication yes

HostName和User换成对应的名字。
IdentityFile换成对应的密匙文件。

确认服务安装情况

在搜索栏搜索服务:
在这里插入图片描述
确认电脑上有这两个服务:

在这里插入图片描述
状态和我上面设置的一样。(记得更改运行状态。我设置成正在启动/自动延迟是可以用的)
如果没有,需要安装对应的服务。
可以选择在下面的网址安装:OpenSSH安装链接

https://github.com/PowerShell/Win32-OpenSSH/releases

或者在设置->可选功能里安装。(我的电脑不知道为什么只有一个服务,很奇怪,最后网上安装的)
在这里插入图片描述
在这里插入图片描述
最终要达到这个状态:(这两个都要有)
在这里插入图片描述
检验是否安装成功:
输入:

ssh localhost

如果输出:

ssh: connect to host localhost port 22: Connection refused

那就是要么没安装成功,要么没有启动服务。

密钥访问权限控制

如果出现类似这样的信息:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'xxx' are too open.

那就是权限的问题。打开你的密匙文件->属性->安全,点击高级。
在这里插入图片描述

禁用继承,变成这样:
在这里插入图片描述
直接点击第二步:(其实第一步应该也行,我是直接后面再添加一个回来)
在这里插入图片描述
然后应用确定都点一点
在这里插入图片描述

点击编辑:在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
注意选择第二个(Administrators)。我选了第一个之后就不对了,也不知道为什么。
点击确定->确定->确定(应用也可以点一下)
之后应该就不再会出现这种类型的报错。
如果你显示了无权更改的报错,那可能是因为现在在以管理员权限访问。

密钥访问端口加入

管理员权限打开powershell(不用这个权限可能会报错),输入:

ssh-add -L

应该会返回

The agent has no identities.

之后输入

ssh-add "xxx"   

xxx是你的密匙文件对应的路径
如果返回:

Permission denied

那可能是权限的问题(我就是这样),返回第三步调整权限。(这个在我的设备上是因为分配的那一个用户错了,我最后分配给Administrators成功了)
如果返回:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'xxx' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.

那应该是权限的问题(我就是这样),返回第三步调整权限。(这个可能是分配的用户太多了,正常情况应该只剩下一个用户)

如果出现:

Identity added: xxx (yyy)

说明这一步成功了。

最终测试

显示连接正常!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值