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

相关推荐
洛兮银儿1 小时前
VScode注释快捷键的修改
ide·vscode·编辑器
如若1237 小时前
Ubuntu 无 sudo 安装花生壳并实现 SSH 内网穿透:Conda 环境部署、冲突排查与自动启动
linux·运维·ubuntu·ssh·内网穿透
优信电子7 小时前
Raspberry Pi Pico(RP2040)快速入门:Arduino IDE环境搭建与第一个程序
ide
小肝一下7 小时前
多态(上)
android·开发语言·c++·vscode·多态·面向对象·伊蕾娜
2501_915921431 天前
iOS开发环境搭建详解 Xcode 配置与快蝎轻量级工具选择
ide·vscode·macos·ios·个人开发·xcode·敏捷流程
wardenlzr1 天前
VSCode 运行 Live Server 提示「Windows 找不到文件 Chrome」问题全解析
chrome·windows·vscode
程序员more1 天前
我用 AI,20 分钟做了一个 VSCode 股票摸鱼插件
人工智能·vscode
减瓦1 天前
告别Postman——用VSCode优雅地发起Http请求
vscode·http·postman
芳草萋萋鹦鹉洲哦1 天前
【git】重新生成并添加 SSH Key(Mac)
git·macos·ssh
午安~婉1 天前
git中http与ssh连接
git·http·ssh