1. 为什么你需要密钥登录?告别密码的烦恼
如果你还在用用户名和密码登录你的云服务器,每次打开VSCode想远程写点代码,都得手动敲一长串密码,那感觉就像每次回家都要掏钥匙开门一样麻烦。更别提密码可能被暴力破解的安全隐患了。而密钥对登录,就像是给你的服务器大门装上了指纹锁或者人脸识别。你本地机器上的私钥就是你的“生物特征”,服务器上的公钥就是识别器。匹配上了,门自动打开,安全又便捷。
我刚开始用云服务器那会儿,也是老老实实输密码,直到有一次在高铁上网络不稳,连着输错几次密码导致IP被临时锁定,耽误了正事。从那以后,我就彻底转向了密钥登录。用上VSCode的Remote-SSH插件配合密钥,体验提升不止一个档次——点击连接,几乎秒进远程环境,文件浏览、终端操作、代码调试,都和本地开发一样流畅。这套组合拳,尤其适合需要频繁在多个云服务器(比如开发、测试、生产环境)之间切换的开发者,或者像我一样,主力开发机是Windows或Mac,但需要在Linux服务器上部署和调试的“混合”开发者。
简单来说,这套流程的核心就是:本地生成一对密钥(公钥和私钥),把公钥“扔”到服务器上,然后告诉VSCode用本地的私钥去连接。一旦配好,就是一劳永逸的免密登录。下面,我就手把手带你走一遍全流程,从零开始,直到你在VSCode里优雅地打开远程文件夹。
2. 准备工作:安装必备的“工具包”
工欲善其事,必先利其器。在开始配置密钥之前,我们需要确保手上有两样核心工具:VSCode的Remote-SSH插件,以及用于生成和管理密钥的Git(或者系统自带的OpenSSH)。
2.1 安装VSCode Remote-SSH扩展
打开你的VSCode,侧边栏找到那个方块形状的“扩展”图标,或者直接用快捷键 Ctrl+Shift+X (Windows/Linux) / Cmd+Shift+X (Mac) 呼出扩展市场。
在搜索框里输入“Remote-SSH”。你会看到微软官方发布的 Remote - SSH 扩展,它通常带有“Microsoft”官方认证的标记。直接点击“安装”即可。

(示意图:VSCode扩展市场中的Remote-SSH插件)
这里有个小技巧:如果你打算深度使用VSCode的远程开发功能,我强烈建议你直接安装 Remote Development 扩展包。这个扩展包是一个“全家桶”,里面包含了Remote-SSH(连接SSH服务器)、Remote-Containers(连接Docker容器)和Remote-WSL(连接Windows Subsystem for Linux)三个子扩展。一次安装,全部搞定,而且它们之间的协作也更无缝。安装扩展包和安装单个扩展的操作是一样的,搜索“Remote Development”安装即可。安装完成后,你会在侧边栏看到一个全新的“远程资源管理器”图标(看起来像两台显示器),我们后续的操作主要就在这里进行。
2.2 安装或确认OpenSSH客户端
生成SSH密钥需要用到 ssh-keygen 这个命令。在macOS和大多数Linux发行版上,这个工具是系统自带的,你可以直接打开终端(Terminal)使用。
对于Windows用户,最推荐的方式是安装 Git for Windows,它会自带一个叫 Git Bash 的终端环境,完美提供了完整的OpenSSH工具链(包括ssh-keygen, ssh-copy-id等),而且用起来和Linux终端体验几乎一致。去Git官网(https://git-scm.com/)下载安装程序,安装过程中,在“Choosing the default editor used by Git”这一步,你可以选择“Use Visual Studio Code as Git's default editor”,这样就把VSCode设为Git的默认编辑器了,非常方便。其他选项基本一路默认下一步就行。
安装完成后,你可以在开始菜单找到“Git Bash”并打开它。你会看到一个黑底绿字的命令行窗口,这就说明你的“武器”已经就位了。当然,如果你使用的是Windows 10 1809版本以上或Windows 11,系统也内置了OpenSSH客户端。你可以在PowerShell里输入 ssh 看看有没有输出。但我个人还是更喜欢Git Bash的环境,因为更统一,很多Linux下的习惯操作可以直接沿用。
3. 生成你的专属数字密钥对
这是最关键的一步,我们要创建一对独一无二的密钥。你可以把私钥想象成一把极其复杂、无法复制的物理钥匙,而公钥就是这把钥匙对应的锁芯。锁芯(公钥)可以公开安装在无数道门上(服务器),但只有你手里这把唯一的钥匙(私钥)能打开它们。
3.1 打开终端并运行密钥生成命令
打开你准备好的终端(Linux/macOS的Terminal,或Windows的Git Bash)。我们将使用 ssh-keygen 命令来生成密钥。
目前最主流、也最被推荐的算法是 Ed25519,它比传统的RSA算法更快、更安全,并且生成的密钥更短。输入以下命令:
ssh-keygen -t ed25519 -C "your_email@example.com"
把 your_email@example.com 替换成你的邮箱地址。这个邮箱主要是作为一个标识符,注释在公钥


352

被折叠的 条评论
为什么被折叠?



