问题
起因是vscode连接我的云服务器报错
] Resolver error: Error: 已取消连接 at g.Canceled (c:\Users\19733\.vscode\extensions\ms-vscode-remote.remote-ssh-0.112.0\out\extension.js:2:500114) at c:\Users\19733\.vscode\extensions\ms-vscode-remote.remote-ssh-0.112.0\out\extension.js:2:580668 at async t.withShowDetailsEvent (c:\Users\19733\.vscode\extensions\ms-vscode-remote.remote-ssh-0.112.0\out\extension.js:2:584036) at async k (c:\Users\19733\.vscode\extensions\ms-vscode-remote.remote-ssh-0.112.0\out\extension.js:2:577649) at async t.resolve (c:\Users\19733\.vscode\extensions\ms-vscode-remote.remote-ssh-0.112.0\out\extension.js:2:581407) at async c:\Users\19733\.vscode\extensions\ms-vscode-remote.remote-ssh-0.112.0\out\extension.js:2:848023
没有提示输入密码
公钥在服务器配置了(公钥内容添加到远程服务器的 ~/.ssh/authorized_keys
文件)
但是还报错xxxx>ssh xxx Bad permissions. Try removing permissions for user: \\Everyone (S-1-1-0) on file C:/Users/.ssh/config. Bad owner or permissions on C:\\Users\/.ssh/config
解决方案
步骤 1:检查并修改文件权限
你需要确保只有当前用户对 C:\Users\.ssh\config
文件有读写权限。以下是具体步骤:
1.1 打开 PowerShell 或命令提示符
按 Win + X
,选择 Windows PowerShell
或 命令提示符
。
1.2 修改文件权限
使用 icacls
命令修改文件权限:
icacls C:\Users\.ssh\config /inheritance:r icacls C:\Users\19733\.ssh\config /grant:r %username%:F
解释:
icacls C:\Users\19733\.ssh\config /inheritance:r
:移除文件的继承权限。icacls C:\Users\19733\.ssh\config /grant:r %username%:F
:授予当前用户对文件的完全控制权限。
步骤 2:验证文件权限
你可以使用以下命令验证文件权限是否正确:
icacls C:\Users\.ssh\config
输出应该类似于
C:\Users\.ssh\config NT AUTHORITY\SYSTEM:(I)(F) BUILTIN\Administrators:(I)(F) YOUR_USERNAME:(F)
确保只有 SYSTEM
、Administrators
和你的用户名有权限。
步骤 3:重新尝试连接
修改权限后,重新尝试使用 SSH 连接:
ssh xxx