【Cursor/Vscode】SSH免密登录

SSH免密

在日常开发和运维工作中,频繁连接远程服务器登录并输入密码,不仅繁琐,还存在安全隐患。配置免密登录,能极大提升工作效率与安全性。本文将详细介绍如何在 Windows 主机(本地)与 Ubuntu 主机(远程)之间,通过 SSH 实现 Cursor / Vscode 的免密登录。

SSH插件安装

通过Extensions安装Romote - SSH插件

添加 SSH 主机,Ctrl + Shift + P,输入ssh,选择:Remote-SSH: Connect to Host,第一次选择:Add New SSH Host,使用 SSH 命令连接到 Ubuntu 远程主机,命令格式为ssh username@remote_host_ip,将username替换为你的远程主机用户名,remote_host_ip替换为远程主机的 IP 地址:

bash 复制代码
ssh username@remote_host_ip

输入密码,登录成功,第二次登录可以直接选择连接过的host进行连接。

设置免密登录

1.本地生成密钥对

使用 rsa生成密钥对:

bash 复制代码
ssh-keygen -t rsa -b 4096  
bash 复制代码
Generating public/private rsa key pair.
Enter file in which to save the key (C:\Users\24/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

全部回车,会在C:\Users\你的用户名下/.ssh/生成私钥id_rsa,公钥id_rsa.pub。

2.上传公钥到服务器

cmd查看密钥:

bash 复制代码
type %USERPROFILE%\.ssh\id_rsa.pub

powershell查看密钥:

bash 复制代码
Get-Content $env:USERPROFILE\.ssh\id_rsa.pub

复制显示的公钥内容,服务器上运行:

bash 复制代码
vim ~/.ssh/authorized_keys

粘贴公钥内容,保存退出。接着设置authorized_keys文件的权限,确保只有当前用户可读可写:

bash 复制代码
chmod 600 ~/.ssh/authorized_keys

设置.ssh目录权限:为保证安全,还需设置.ssh目录的权限:

bash 复制代码
chmod 700 ~/.ssh

3.配置config文件

Ctrl + Shift + P,输入ssh,选择:Remote-SSH: Connect to Host,再选择Configure SSH Hosts

bash 复制代码
Host 192.168.254.129
  HostName 192.168.254.129
  User fakerth
  Port 22
  IdentityFile C:\Users\你的用户名\.ssh\id_rsa

4.测试是否成功

Ctrl + Shift + P,输入ssh,选择:Remote-SSH: Connect to Host,选择之前添加的主机192.168.254.129,不需要再次输入密码即设置免密登录成功。

5.常见问题及解决方法​

权限问题:如果出现 "Permissions 0644 for '/home/username/.ssh/authorized_keys' are too open." 的错误提示,说明authorized_keys文件权限过大,可使用chmod 600 ~/.ssh/authorized_keys命令将权限修改为正确值。​

密钥未生效:若仍然需要输入密码登录,可检查公钥是否正确添加到authorized_keys文件中,确保文件中没有多余的空格或换行。也可以在 Ubuntu 远程主机上查看/var/log/auth.log日志文件,查找相关错误信息进行排查。

相关推荐
Asuicao1 小时前
centos7.9版本升级ssh OpenSSH 9.8p1 源码 OpenSSL 1.1.1w 源码包以及安装升级回滚文档
运维·ssh
love530love5 小时前
用自然语言让 AI Agent 卸载软件 —— 以卸载 Visual Studio 2026 为例
ide·人工智能·windows·agent·visual studio·ai agent·marvis
落寞的电源10 小时前
使用Visual Studio SDK制作GLSL词法着色插件
ide·visual studio
AlfredZhao10 小时前
Win7老系统登录报错怎么解?PuTTY这次真能救急
ssh·putty·win7
fenghx25812 小时前
仅用于个人记录:火狐有网,Vscode的codex连不上
vscode·编辑器
LL34363812 小时前
2026最新5款AI编程工具平替实测|终端与IDE vibe coding迭代优缺点深度对比
ide·ai编程
00后程序员张13 小时前
iOS 打包方式汇总 从 Xcode Archive 到轻量级工具链的 IPA 构建
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
Balabala噗13 小时前
VScode接入MiniMax流程
ide·vscode·编辑器
Tian_Hang2 天前
Eclipse Ditto 的权限策略
java·服务器·前端·网络·ide·ubuntu·eclipse
单位圆的日常2 天前
FRP反向隧道实现异地SSH家用Linux
linux·运维·ssh·frp