在 VS Code 里做“远程免密登录”只有两件事:
让远程服务器只认密钥不认密码;
让 VS Code 能找到这把私钥。
下面给出最简流程,并一次性把.ssh目录和密钥的chown/chmod权限写清楚,直接复制即可用。
一、本地(Windows / macOS / Linux 通用)
生成密钥
# 一路回车,不设置 passphrase ssh-keygen -t ed25519 -C "vscode" -f ~/.ssh/id_vscode把公钥复制到远程机
# 远程机若是 Linux,可直接用 ssh-copy-id ssh-copy-id -i ~/.ssh/id_vscode.pub user@host # 若本机是 Windows 且没装 ssh-copy-id,可手动: type ~/.ssh/id_vscode.pub | ssh user@host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
二、远程机(Linux)——权限一次到位
用 root 或 sudo 执行,把所属者和权限写死,避免 SSH 拒绝登录。
# 假设普通用户名为 user
chown -R user:user /home/user/.ssh # 所属者必须是登录用户
chmod 700 /home/user/.ssh # 目录 700
chmod 600 /home/user/.ssh/authorized_keys # 文件 600如果 root 也要免密,同理:
chown -R root:root /root/.ssh
chmod 700 /root/.ssh
chmod 600 /root/.ssh/authorized_keys权限不对,SSH 会直接拒掉 key,VS Code 就会退回密码框。
评论区