ubuntu 20.04 设置 authorized_keys 让 VS Code ssh 远程免密连接

相关文章

前言

  • 前面记录了 VS Code 可以通过 SSH 远程连接 ubuntu Linux 主机,比如代码放在远程 ubuntu 主机上, windows 端 VS Code 通过 ssh 远程连接 ubuntu,并打开 远程主机上的 代码

  • 如果不设置 authorized_keys,每次切换目录都需要输入一次密码,比较的麻烦

ssh 生成密钥

  • 也就是 VS Code 通过 ssh 远程连接 ubuntu 主机时,不需要再输入 ssh 登录密码

  • 首先 当前主机 windows 与 远程主机 ubuntu 上都安装 Git 软件

  • windows 上 打开 git 的 控制台,生成 ssh 密钥,如果使用过 git,应该密钥已经生成过了,不需要再次生成。

  • windows 上生成密钥:ssh-keygen.exe ,然后一直回车即可生成

  • ubuntu 上 如果 Git 第一次安装,需要生成 ssh 密钥,如果使用过 Git ,应该 ssh 密钥也生成过,就不需要再次生成

  • ubuntu Linux 上生成 ssh 密钥: ssh-keygen,然后一直回车即可生成

  • 备注: ssh 的密钥默认是 RSA 加密,分为【公钥】与【私钥】

ssh 远程免密登录

  • 当前的需求: windows 上 VS Code ssh 远程 免密登录 远程 ubuntu Linux 主机,如打开 ubuntu 上的 软件代码。

操作步骤

  • ubuntu Linux 主机生成 ssh 密钥后,一般存放在 /home/xxx/.ssh 目录下,xxx 使用 ubuntu 登录的用户名,如果没有这个目录,需要确认当前的用户是否 生成过 ssh 密钥

  • /home/xxx/.ssh 目录下,创建一个 authorized_keys 的文件

  • windows 上,可以打开 git 的 控制台,获取 ssh 的 【公钥】内容,默认存在放在 ~/.ssh/id_rsa.pub

  • 然后复制 windows 上的 ~/.ssh/id_rsa.pub ssh 公钥内容 到 ubuntu 的 /home/xxx/.ssh/authorized_keys 文件中,注意复制的是 ~/.ssh/id_rsa.pub 文件的内容,不是文件

重启 ssh 服务

  • sudo service ssh restart 可以重启 ssh 服务,然后 windows 上的 VS Code 可以重新 ssh 连接远程 ubuntu,确认是否每次还需要输入密码

小结

  • 本篇注意记录 windows 端 VS Code 远程 ssh 连接 ubuntu 免密码登录的方法,通过在 ubuntu 中创建 ssh authorized_keys 的方式

  • 注意 windows 端 把 ssh 生成的【公钥】文件内容复制到 ubuntu ssh 的 authorized_keys 文件中,不是【私钥】。复制的是文件内容,而不是文件传到 ubuntu 中。

  • ssh 密钥默认为 RSA 加密,【私钥】不要对外公开,可以认为是【密码】,【公钥】可以公开,传到远程的服务器上

  • 在 github、gitee 等 代码提交时,可以通过 设置 git ssh 【公钥】,让提交代码时不需要每次都输入用户名与密码

  • windows VS Code 通过 ssh 远程登录到 ubuntu Linux 主机,就可以打开查看 ubuntu 上的代码工程了,比较的方便

相关推荐
程序员yt1 小时前
双非一本电子信息专业自学嵌入式,学完 Linux 后咋走?单片机 & FreeRTOS 要补吗?
linux·运维·单片机
安於宿命5 小时前
【Linux】进程间通信——进程池
linux·c++
新兴ICT项目支撑6 小时前
天翼云910B部署DeepSeek蒸馏70B LLaMA模型实践总结
linux·运维·服务器·910b·天翼云·deepseek r1
Spike()8 小时前
HaProxy源码安装(Rocky8)
linux·负载均衡
网硕互联的小客服8 小时前
如何提高网站在百度中的权重?
linux·运维·服务器·windows·安全
魔希达8 小时前
windows在wsl ubuntu环境中启用cuda加速AI推理和训练
人工智能·windows·ubuntu
守望时空3310 小时前
Linux内核升级指南
linux·操作系统
Aphelios38010 小时前
Linux 下 VIM 编辑器学习记录:从基础到进阶(上)
java·linux·编辑器·vim
chde2Wang10 小时前
yum下载报错Could not resolve host: mirrorlist.centos.org; Unknown error
linux·运维·centos
zyx没烦恼11 小时前
Linux 进程控制(进程创建,进程等待)
linux·运维·服务器