ssh 免密登录服务器(vscode +ssh 免密登录)

每次打开vscode连接服务器都需要输入密码,特别繁琐。

然后自己在网上翻阅了一下教程,发现说的内容比较啰嗦,而且个人感觉非常有误导性倾向。

因此自己直接干脆写一个简便易懂的教程算了。

(以经过本人亲测,真实可靠)

windows 免密连接远程服务器

1. 生成 SSH 密钥

== 这一步一定是在自己本地生成,还不是在服务器中去生成。 == 比如我本地是windows,然后通过cmd去ssh连接远程服务器,那么我首先需要在本地创建一个密钥(包含一个私钥和一个公钥)。

shell 复制代码
ssh-keygen -t rsa -C "your_email@example.com"
  • 一路回车即可
  • 然后这个存在公钥我本地的路径为:C:\Users\heroh/.ssh/id_rsa.pub
    • 这个路径在上述生成过程中可以查看

2. 将密钥中的公钥传到服务器

  1. 如果你的windows安装了git bash,那么在git bash中运行以下命令
shell 复制代码
ssh-copy-id -i C:\Users\heroh/.ssh/id_rsa.pub -p 22 user@serverIp
  • 第一个参数就是我本地公钥的路径地址
  • -p:指定端口号,默认为22
  1. 也可以通过 PowerShell 命令一键完成
shell 复制代码
# 直接通过管道将公钥写入服务器(需输入密码)
type $env:USERPROFILE\.ssh\id_rsa.pub | ssh user@serverIp "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

过程说明

  1. 首次运行 ssh-copy-id 时,需要输入服务器的密码来完成公钥的传输
  2. 输入密码后,ssh-copy-id 会将公钥上传到服务器的 ~/.ssh/authorized_keys 文件中
  3. 如果成功,你会看到类似以下输出:
shell 复制代码
Number of key(s) added: 1

Now try logging into the machine, with:   "ssh -p 12803 root@xxxx.com"
and check to make sure that only the key(s) you wanted were added.

3. 验证免密登录

shell 复制代码
ssh -p 22 user@serverIp

如果不需要密码,那就说明你已经成功了。

vs code 免密登录

完成上述操作后,你已经完成80%的操作了。

  1. 在vs coder 扩展市场中下载 Remote-SSH 扩展

  2. 进入扩展配置

  3. 配置你服务器的ip和port即可

    Host 111.111.111.111
    HostName 111.111.111.111
    User root
    Port 60022

  4. 然后回到上面第二步,选择你的服务器连接即可

相关推荐
樂油36 分钟前
Claude Code的安装并连接VScode(使用CC Switch或ollama连接)
vscode·ollama·claude code·cc switch
亚空间仓鼠1 小时前
OpenEuler系统常用服务(五)
linux·运维·服务器·网络
AI成长日志2 小时前
【AI原生开发实战】1.2 传统开发 vs AI原生开发:思维转变与架构差异
服务器·架构·ai-native
2301_780789662 小时前
零信任架构在云安全落地过程中的最佳实践
服务器·人工智能·游戏·架构·零信任
the sun342 小时前
从 QEMU 直接启动到 U-Boot 引导:嵌入式 Linux 启动流程的本质差异
linux·运维·服务器
三思守心2 小时前
从 0 到 1 搭建自动化内容工厂:深度测评楼兰AI及其在全平台发帖中的表现
运维·服务器·自动化
草莓熊Lotso2 小时前
【Linux 线程进阶】进程 vs 线程资源划分 + 线程控制全详解
java·linux·运维·服务器·数据库·c++·mysql
ZKNOW甄知科技2 小时前
数智同行:甄知科技2026年Q1季度回顾
运维·服务器·人工智能·科技·程序人生·安全·自动化
-SGlow-2 小时前
Linux相关概念和易错知识点(52)(基于System V的信号量和消息队列)
linux·运维·服务器
江畔何人初2 小时前
TCP的三次握手与四次挥手
linux·服务器·网络·网络协议·tcp/ip