文章目录
- 可能出现的报错
- 问题解决
- config文件配置
- 确认服务安装情况
- 密钥访问权限控制
- 密钥访问端口加入
- 最终测试
可能出现的报错
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 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)
说明这一步成功了。
最终测试
显示连接正常!