【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日志文件,查找相关错误信息进行排查。

相关推荐
羑悻的小杀马特17 小时前
零成本搞定!异地访问 OpenClaw 最简方案:SSH 端口映射组网!
运维·服务器·人工智能·docker·自动化·ssh·openclaw
-星空下无敌20 小时前
IDEA 2025.3.1最新最全下载、安装、配置及使用教程(保姆级教程)
java·ide·intellij-idea
Gene_202220 小时前
ubuntu22.04安装Claude Code及其在vscode跑通
ide·vscode·arcgis
isaac.easy20 小时前
实战指南:CodeBuddy IDE × GLM-4.7 × Spec-Kit 构建智能化开发工作流
ide
shuangrenlong20 小时前
android studio突然一直importing卡住
android·ide·android studio
想躺平的小羊21 小时前
IDEA 如何显示或关闭项目类的结构(类的方法)
java·ide·intellij-idea
YaBingSec1 天前
玄机网络安全靶场:GeoServer XXE 任意文件读取(CVE-2025-58360)
java·运维·网络·安全·web安全·tomcat·ssh
西门吹牛1 天前
Pycharm编译器中部署了pyqt5,Qtdesigner无法打开了,解决方案
ide·qt·pycharm
#君君#1 天前
ros2 下VSCode 中显示波浪线(找不到定义)原因
ide·vscode·编辑器