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 问题)

修复权限即可正常连接 ✅


相关推荐
Web3探索者6 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
开发者联盟league12 天前
安装pnpm
ssh
摇滚侠12 天前
IDEA 创建 Java 项目 手动整合 SSM 框架
java·ide·intellij-idea
霸道流氓气质13 天前
Trae IDE 新手入门指南
ide
2601_9618752413 天前
决战申论100题2026|最新|范文
linux·容器·centos·debian·ssh·fabric·vagrant
爱就是恒久忍耐13 天前
VSCode里如何比较2个branch
ide·vscode·编辑器
意法半导体STM3213 天前
【官方原创】如何为STM32CubeMX2配置Visual Studio Code配置方案
vscode·stm32·单片机·嵌入式硬件·策略模式·stm32cubemx·嵌入式开发
bloglin9999913 天前
vscode中可视化的合并分支,在“合并编辑器中解析”中“与基线进行比较”是什么意思
ide·vscode·编辑器
终将老去的穷苦程序员13 天前
IntelliJ IDEA 的安装教程
java·ide·intellij-idea
天疆说13 天前
在 Ubuntu 的 VSCode 中配置 MATLAB
vscode·ubuntu·matlab