VSCode Remote-SSH 连接失败修复(权限问题)

🧰 VSCode Remote-SSH 连接失败修复(权限问题)

❗ 问题现象

在使用 VSCode Remote-SSH 连接远程服务器时出现报错:

bash 复制代码
Bad owner or permissions on ~/.ssh/config

导致 SSH 连接直接失败。


🔍 问题原因

OpenSSH 对 SSH 配置文件有严格的安全限制:

  • .ssh/config、私钥等文件必须是私有权限
  • 如果权限过于开放(如 644 / 777),会被认为存在安全风险
  • SSH 会直接拒绝连接(防止密钥泄露或被篡改)

✅ 一键修复命令

bash 复制代码
# 设置 .ssh 目录权限(仅自己可访问)
chmod 700 ~/.ssh

# 设置 config 文件权限(仅自己可读写)
chmod 600 ~/.ssh/config

# 设置公钥权限(允许读取)
chmod 644 ~/.ssh/*.pub

📌 权限说明

命令 含义 权限解释
chmod 700 ~/.ssh 目录权限 rwx------(仅 owner 可访问)
chmod 600 ~/.ssh/config 配置文件 rw-------(仅 owner 可读写)
chmod 644 ~/.ssh/*.pub 公钥文件 rw-r--r--(所有人可读)

🧠 权限规则速记

  • 目录:700
  • 私密文件(config / 私钥):600
  • 公钥:644

👉 口诀:

目录 700,私密 600,公钥 644


🔧 补充排查(如果仍失败)

1️⃣ 检查文件归属

bash 复制代码
ls -l ~/.ssh

如果 owner 不是当前用户:

bash 复制代码
sudo chown -R $(whoami):$(whoami) ~/.ssh

2️⃣ 手动测试 SSH

bash 复制代码
ssh -v <your_ip>

🎯 本质原理(面试加分点)

  • SSH 配置文件涉及:

    • 私钥
    • 登录规则
    • 代理配置
  • 若权限过宽:

    • 可能被其他用户读取或篡改
  • OpenSSH 采用强制安全策略:

    • 不安全 → 直接拒绝连接

✅ 结论

该问题属于:

🔐 SSH 安全权限限制问题(非网络 / 非 OpenSSL 问题)

修复权限即可正常连接 ✅


相关推荐
golang学习记1 小时前
最新版VS Code开发Spring Boot项目保姆级教程
java·spring boot·vscode·后端
小白的码BUG之路8 小时前
Jenkins -- 配置ssh
运维·ssh·jenkins
T0uken21 小时前
Colab:SSH 访问免费 GPU Server
运维·ssh
GPU实战笔记1 天前
PyCharm 接云 GPU:远端项目连接与远程解释器别混为一谈
python·pycharm·ssh·远程开发·云gpu
A心有千千结1 天前
通过 SSH 反向代理让服务器借用本机网络访问 GitHub 的最佳实践
linux·服务器·网络·git·ssh·github
2501_915918411 天前
在 Xcode 中运行和调试单元测试的完整指南
ide·vscode·macos·ios·单元测试·个人开发·xcode
面壁的熊猫1 天前
工作和学习中的高效工具
vscode
暖核1 天前
从零搭建 Ubuntu24.04 服务器:虚拟机安装 + Netplan 静态 IP+SSH 远程登录
服务器·tcp/ip·ssh
I'm Jie1 天前
Rhost v2.0.0 版本发布!!!不止 SSH 终端,内置 AI Agent 支持自然语言操作远程服务器
运维·服务器·rust·开源·ssh·tauri·finalshell
不爱吃鱼的蔓热莓2 天前
释放VSCode插件占用系统盘垃圾
ide·vscode·编辑器