核心配置一句话就是:把本地的公钥(.ssh/id_xxxx.pub)存入远程Linux主机的信任列表(.ssh/authorized_keys)
Ps: Windows 下 .ssh 文件夹在 %USERPROFILE%/.ssh/ , Linux 下 .ssh 文件夹在 ~/.ssh/ 。
1. 安装扩展
首先确保VSCode中已安装Remote Development扩展
VS Marketplace 链接: https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack
2. 在本地生成SSH key
如何生成公钥可以查看这篇帮助文档的前几步:https://gitee.com/help/articles/4181
下面简单复述一下上面这篇帮助文档的核心步骤:
ssh-keygen -t ed25519 -C "xxxxx@xxxxx.com" # Generating public/private ed25519 key pair...
注意:这里的 xxxxx@xxxxx.com 只是生成的 sshkey 的名称,并不约束或要求具体命名为某个邮箱。
现网的大部分教程均讲解的使用邮箱生成,其一开始的初衷仅仅是为了便于辨识所以使用了邮箱。
按照提示完成三次回车,即可生成 ssh key。通过查看 ~/.ssh/id_ed25519.pub 文件内容,获取到你的 public key
cat ~/.ssh/id_ed25519.pub # ssh-ed25519 AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....
ps: 网上也有很多教程说使用rsa算法生成,其实都大同小异,只是上面这个算法生成的文件是.ssh/id_ed25519.pub,而rsa算法生成的文件是.ssh/id_rsa.pub,敲命令的时候注意一下就好了。
3. 添加authorized_keys
查看本地生成的 id_ed25519.pub 文件,将里面的内容复制,并粘贴到远程Linux的~/.ssh/目录下的 authorized_keys 文件中(没有就创建这个文件)
4. 修改文件权限
sudo chmod 600 authorized_keys sudo chmod 700 ~/.ssh
文件权限不正确可能导致链接的时候报错
读者可参考这篇文章:https://blog.csdn.net/u010417914/article/details/96918562
这篇文章的步骤讲的比本文清晰一些,不过这篇文章中说的是在服务端生成这个密钥,然后将私钥拷贝到本地,这个做其实并不好,因为本地和远端共用了同一套公私钥。正常来说应该是每个主机都使用独立的公私钥。
本站文章除注明转载/出处外,均为原创,若要转载请务必注明出处。转载后请将转载链接通过邮件告知我站,谢谢合作。本站邮箱:admin@only4.work
尊重他人劳动成果,共创和谐网络环境。点击版权声明查看本站相关条款。