VSCode Remote-SSH 的使用以及连接失败(Bad permissions)完整排错指南

文章目录

  • [1. 通过ssh连接服务器](#1. 通过ssh连接服务器)
  • [2. 故障排查(Bad permissions)](#2. 故障排查(Bad permissions))
    • [2.1 文件权限错误 (Bad permissions)](#2.1 文件权限错误 (Bad permissions))
    • [2.2 解决方法:修改文件权限](#2.2 解决方法:修改文件权限)
      • [windows通过 GUI 图形界面修改(推荐)](#windows通过 GUI 图形界面修改(推荐))
  • 结语

我们经常会使用VSCode Remote-SSH来进行链接ubuntu服务器进行开发,可能在连接过程中总是会遇到连接失败的问题,本文将带你系统化排查,直达问题根源。

1. 通过ssh连接服务器

1、打开vscode,进入拓展(Ctrl+Shift+X),安装插件Remote - SSH。

安装成功后,在vscode的左下角会出现图标:

点击图标,依次点击Connet to host --> Configure SSH Hosts --> C:\Users<用户名>.ssh\config,最终进入配置页面,填入:

bash 复制代码
Host <显示的服务器名称>
  HostName <服务器IP>
  User <ssh登录的用户名>
  Port <端口号,默认端口22可以不配置>

配置成功后,再次点击图标,然后点击Connet to host就能看到看看配置的服务器名称,点击名称就可能进行ssh连接。随后选择ubuntu,输入密码,就能进行正常连接了。

如果一切正常,那恭喜你,成功连接。可是往往都会有些波折,下面分享一个我遇到的问题,已经排查思路

2. 故障排查(Bad permissions)

2.1 文件权限错误 (Bad permissions)

当连接终端打印如下信息时,所以你的config文件权限不对,导致无法修改:

复制代码
Bad permissions. Try removing permissions for user: \\Everyone (S-1-1-0) on file C:/Users/pmc/.ssh/config.

其根本原因是在Windows 系统上,SSH 客户端对安全要求严格,如果 config 文件或私钥文件的权限设置过宽(如包含了 "Everyone" 用户组的访问权限),它会拒绝使用这些文件。

2.2 解决方法:修改文件权限

如果在ubuntu上修改的话,只需要对文件施加chmod 600权限即可.

下面主要分享windows的解决方法

windows通过 GUI 图形界面修改(推荐)

  1. 定位文件
  • 打开文件资源管理器,导航到 C:\Users你的用户名.ssh\
  • 找到 config 文件
  1. 打开属性对话框
  • 右键点击 config 文件 → 选择"属性"
  • 切换到"安全"选项卡
  1. 移除继承权限
  • 点击"高级"按钮
  • 点击"禁用继承"
  • 选择"从此对象中删除所有已继承的权限"
  • 点击"应用"
  1. 添加专用权限
  • 点击"添加"按钮
  • 点击"选择主体"
  • 输入你的 Windows 用户名,点击"检查名称"
  • 设置"基本权限"为"完全控制"
  • 点击"确定"保存
  1. 验证最终权限
  • 返回高级安全设置窗口
  • 确认权限条目中只有一条记录:你的用户拥有"完全控制"
  • 不应有"Everyone"、"Users"等其他条目

结语

好了,大家有没有遇到过其他问题,评论区告诉我

相关推荐
如若12314 小时前
Windows SSH + Headscale/Tailscale 组网及免密登录完整配置教程
运维·windows·ubuntu·ssh·内网穿透
lwx91485214 小时前
Docker-安装SSH服务
docker·容器·ssh
snysy20 小时前
服务器安全加固与入侵检测实战:从SSH加固、防火墙策略到挖矿木马排查
服务器·安全·ssh
2501_9160074720 小时前
Windows OpenSSL 生成 iOS 证书,制作 p12 与描述文件,KXBuild 签名实操
windows·vscode·ios·objective-c·个人开发·swift·敏捷流程
菌菌的快乐生活1 天前
Rufus + Ubuntu 24.04 Server(中山大学镜像)通用安装教程
ubuntu
Linux_cy1 天前
nginx 502 排查手册:九种原因分类、定位命令与检查顺序
linux·运维·服务器·网络·数据库·nginx·ssh
我要见SA姐11 天前
Chrome 内存泄漏诊断指南:从现象定位到根因排查
ide·vscode·python·自动化·编辑器
垆边人似月.1 天前
Ubuntu 配置 Samba 共享文件夹并映射到 Windows 完整指南
linux·windows·ubuntu
00后程序员张1 天前
Windows 开发 iOS App 入门,用 SwiftUI 写第一个 iOS App 装到 iPhone
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
瓶 盖1 天前
你的 IDE 插件改了 authorized_keys:Claude Code 扩展投毒链路拆解
ide·ssh·vs code·安全分析·供应链安全·claude code