一、前置条件
- 本机安装Visual Studio Code
- 打开Vscode时建议使用管理员权限打开,在这之前遇到了一些报错。
二、开始远程连接计算云
- 安装插件remote-ssh
2.点击远程资源管理器,之后在SSH这行的右侧,点击"+"号,去新建远程
3.在窗口上方弹出的命令框中输入:ssh -p name@ip
其中"-p 2222"表示指定端口号2222(填写你实际的端口号)
name:你服务器的用户名
ip:你服务器的ip地址
填写之后,回车
4.回车后会在代码编辑区上端弹出选择更新配置文件,点击第一个路径就可以,会自动生成一个config文件,如下图示是config文件内容:
其中:
Host: 这是一个用户定义的别名,用于指代远程主机。可以在在终端中执行 ssh 别名**替代 ssh name@ip*。*
HostName: 指定远程主机的实际地址或主机名。
Port: 指定 SSH 连接使用的端口号。
User: 指定连接到远程主机时使用的用户名。在这里,用户名是zwx11..... 。
5.在 config 文件配置完成并保存后,在VSCode的远程资源管理器中已经出现刚配置的远程服务器,此时点击红框按钮连接即可
- 点击vsCode左侧的远程图标,如上图第1步操作
- 之后选中SSH下你要打开的服务地址(2步)(这个是上面自己设置的HostName)
- 再点击右侧类似文件夹的图标,如上图第3步操作
- 3步操作后,Visual Studio Code 会自动弹出提示框,你根据你服务的环境,选择相应项
实例(我选择的是linux):
之后进入下图,选中"Continue"
之后根据提示语,输入密码
此时没有意外的话就可以连接上了远程服务器了
你可以按一下操作,打开服务端文件:
选择打开文件路径后,点击"OK",此时开始链接服务器,并提示再次输入密码,之后等待....
此时,已经链接并打开某目录成功。
二、如何实现免密链接,不用每次都输入密码
每次连接都需要输入密码未免有些麻烦,一台机器想要免密访问其他机器,需要把自己的公钥内容发送到别的机器的authorized_keys中去,并在本机config文件中配置私钥文件位置。如下为流程。
- 生成新的密钥对
使用命令ssh-keygen
生成新的密钥对。你可以选择在生成密钥对时为其指定不同的文件名。请注意,-f
后的id_rsa_linux
和 id_rsa_windows
只是示例文件名,你可以根据需要选择其他文件名。中间"C:\Users\YourUsername\.ssh\"是你本地.ssh所在文件夹。
# 在 Linux 和 Mac 上
ssh-keygen -t rsa -b 2048 -f ~/.ssh/id_rsa_linux
# 在 Windows 上
ssh-keygen -t rsa -b 2048 -f C:\Users\YourUsername\.ssh\id_rsa_windows
# 如果你只有单平台使用 ssh
ssh-keygen
例如我的.ssh路径:"C:\Users\zhangdm\.ssh"
**注意:**当你在多个平台上使用 SSH 连接到不同的远程服务器时,可能需要为每个平台生成和使用不同的密钥对。这是因为每个平台(例如,Windows、Linux、Mac)可能有不同的文件系统和密钥文件位置,同时在安全性的考虑下,不同平台上的密钥对最好是独立的。
在Visual Studio Code工具打开终端,输入"ssh-keygen -t rsa -b 2048 -f C:\Users\YourUsername\.ssh\id_rsa_windows"命令,执行后一直回车,最终出现方框时表示成功。
系统会在你指定的路径(本例子为 C:\Users\
YourUsername\.ssh
)下生成两个文件,分别是id_rsa_visualCode.pub和id_rsa_visualCode,前者为生成的公钥,后者为私钥 。
- 添加公钥到远程服务器
将生成的公钥( id_rsa_visualCode.pub
的内容)添加到你远程服务器的 authorized_keys
文件中,以允许连接。
- 首先打开id_rsa_visualCode
.pub文件
复制文件中公钥内容
- 然后登录到远程服务器,并将内容粘贴到
authorized_keys
文件。
如下是我生成的id_rsa_visualCode.pub
文件内容:
在远程服务器上,authorized_keys
文件通常存储在用户的 .ssh
目录中。具体路径可能为 ~/.ssh/authorized_keys
。例如我的用户名是zdm,那么 authorized_keys
文件的路径可能是 /home/zdm/.ssh/authorized_keys
。
第一次配置,你服务端是没有"authorized_keys
"文件的,需要我们自己去创建
# 创建目录
mkdir ~/.ssh
# 进入目录
cd ~/.ssh
# 创建 authorized_keys 文件
touch authorized_keys
# 使用文本编辑器打开 authorized_keys 文件,并将你的公钥内容粘贴到其中
nano authorized_keys
# 保存并关闭文本编辑器。
在"MobaXterm_Personal_23.0.exe"服务端管理器中执行"touch authorized_keys"命令(执行命令之前要进入到.ssh目录下)
用编译器麻烦,我们可以直接在上述工具中直接打开"authorized_keys"文件,将公钥粘贴后保存。
3. 配置 SSH 客户端:
将添加公钥到远程服务器后,最后一步便是配置你的主机。
打开你的 SSH 客户端(本机)配置文件(也就是前面生成的config文件,一般在C:\Users\YourUsername\.ssh\config
),添加配置(IdentityFile
私钥文件路径),以指定使用哪个私钥文件。
下图红框是我添加的内容:
这样,当你使用 ssh 连接服务器时,SSH 客户端将自动选择相应的私钥文件,就可以实现免密登录了。