如何避免每次 ssh 输入密码?密钥 ssh 配置指南

本文介绍了如何通过创建和配置公钥和私钥实现VSCode远程连接服务器时免密码登录。首先使用ssh-keygen生成密钥对,然后将公钥上传至服务器的authorized_keys文件中,最后编辑本地SSH配置文件(.ssh/config),设置IdentityFile。完成这些步骤后,即可无密码连接远程服务器。

通过 VSCode 远程连接服务器时,每次目录切换或者连接远程服务器实在是太麻烦了,而通过搭建密钥连接便能够避免每次登录时都输入密码,同时相比密码登录更加安全。

话不多说,关于密钥连接的原理网上有很多介绍的文章,这里我们就不过多赘述原理了。直入主题:

  1. 创建公钥和私钥

在这一步你需要通过 OpenSSL 之类的工具去生成公钥和私钥

ssh-keygen -q -b 2048 -P "" -f /Users/<localuser>/.ssh/keys/<myhost>_rsa -t rsa

然后,把私钥(<myhost>_rsa)存放在你本地的 .ssh 文件夹

公钥(<myhost>_rsa.pub)存放在你的服务器上

  1. 在服务器的授权密钥中添加刚创建的公钥

在你的服务器上会有一个文件存放公钥列表,也就是下面的文件

 <remoteuserhome>/.ssh/authorized_keys

如果这个文件已经存在了,那么只要把你的公钥 <myhost>_rsa.pub 的内容添加到文件的末尾即可

如果这个文件不存在,那你就需要创建这个文件并将 <myhost>_rsa.pub 的内容复制到这个文件中

  1. 编辑本地 ssh 配置信息

编辑:

/Users/<localuser>/.ssh/config

添加:

Host <myhost>
  HostName <myhost>
  User <remoteuser>
  Port 22
  PreferredAuthentications publickey
  IdentityFile "/Users/<localuser>/.ssh/<myhost>_rsa"

做完这一切后,你就能够直接通过下面的命令连接服务器而不需要输入密码了

ssh <remoteuser>@<myhost>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值