VSCode设置SSH免密登录

发布于:2025-05-17 ⋅ 阅读:(13) ⋅ 点赞:(0)

引言

2025年05月13日20:21:14

原来一直用的PyCharn来完成代码在远程服务器上的运行,但是PyCharm时不时同步代码会有问题。因此,尝试用VSCode来完成代码SSH远程运行。由于VSCode每次进行SSH连接的时候都要手动输入密码,为了解决这个问题在本机上设置SSH密钥来进行免密登录。


本机 Macbook Pro

服务器 Ubuntu20.04


打开Mac的终端Terminal,输入:

cd ~/.ssh
ls -al

可以看见输出,包含你已有的私钥和公钥:

id_rsa
id_rsa.pub
known_hosts
config

你可以用已有的私钥,然后把公钥.pub结尾的文件配置到服务器中就行。下面我们重新创建一个全新的SSH私钥:

ssh-keygen -t rsa -b 4096 -C "yida@macbook" -f ~/.ssh/id_rsa_remote_ubuntu

解释

  • -t rsa: 使用 RSA 加密算法
  • -b 4096: 密钥长度为 4096 位(更安全)
  • -C: 注释信息,便于识别
  • -f: 指定密钥文件名(避免覆盖已有密钥)

一直按回车即可!不用输入密码。

执行完后,会生成两个文件:

~/.ssh/id_rsa_remote_ubuntu(私钥)
~/.ssh/id_rsa_remote_ubuntu.pub(公钥)

查看公钥,并复制:

# 查看文件
ls -al
# 输出公钥内容
cat id_rsa_remote_ubuntu.pub
# 复制下面内容
ssh-rsa AAAAB3NzaC1yc2EAAssasQCsTslpupZrQqpr1MGbLRysc6g2dO3wDWZiewCnxFdRY15XlfOsD7Y5qkO1fOIFaT4XIQUAz0VsaHDgHZmUQVd14xBtHKliqhNwAynxdgv15lPdWefeqKrYzaGLLXK/ICx6h5xn3uOamyLJaKGEn/ZWWRXtCU2Oqo/BsNK5u5bb1wpgLO+lOSwfYod52VteCwParS0I0Mca3ILeefp4EWypTQRmki0EsBS6pO4k3rlT1Y3yF0ssRp9VXA2GUCJLU1GkdhHxF+fadx5DzJnOVwFdRdxOn5HCNjIgYeBECkwEStcijwAMxHjc5Jtse8JF4kHVismuZWTDt/MhMosJB3JrbbOu+3PaPVqmPQ== yida@macbook

用命令行登录你的远程服务器

拷贝公钥后,在远程 Ubuntu 上执行:

mkdir -p ~/.ssh
vim ~/.ssh/authorized_keys
# 把你复制的公钥放到authorized_keys里面
# 保存退出
# 查看是否复制成功,能输出你的公钥就OK了。
cat ~/.ssh/authorized_keys

然后,设置权限:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

切换到本机在VSCode的~/.ssh/config 中添加配置项,就是告诉机器远程连接的时候用我的私钥去和服务器的公钥匹配,实现免密登录

# 打开SSH配置文件
vim ~/.ssh/config
# 编辑已有的ssh连接信息
Host ubuntu@4090
  HostName 222.xxx.xxx.xxx
  User ps123
  Port 123
  # 新增链接到私钥
  IdentityFile ~/.ssh/id_rsa_remote_ubuntu

配置完成,即可通过VSCode免密登录SSH服务器!


网站公告

今日签到

点亮在社区的每一天
去签到