“我报名参与金石计划1期应战——瓜分10万奖池,这是我的第4篇文章,点击查看活动概况”

以下内容为自己的作品,如需求转载,请声明原文链接 微信大众号「englyf」/post/713659…


我的需求是,在Windows桌面环境下,通过 VSCODE 长途调试在服务器(或许其它长途主机)的工程代码。其实便是提供一个方便快捷的方式,让你能够在本地的 VSCODE 环境里修改或许查看长途主机的目录文件算了。

这儿说下我的配置进程:(首先,程序猿有个习气把序号从0开始,莫要见责)

0. 装置 SSH

命令行窗口里输入 ssh 然后回车看看输出,确认一下是否现已装置了ssh。只需不是提示找不到ssh,那么就表示本机已装置了ssh。 假如很不幸本地还没装置,那就查找一下ssh的装置教程吧,估量隔壁老王就有。 实在太懒不想搜的话,这儿有条懒虫[sourceforge.net/projects/ss…

到这儿假定现已确认好装置了ssh,下面会用ssh生成密钥对,包含公钥和私钥,这会被用到绑定服务器和本地计算机便于免暗码登录。

C:\Users\我的用户名>ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (C:\Users\我的用户名/.ssh/id_rsa):

输入回车,保存密钥对到默许的目录 C:\Users\我的用户名\.ssh 中。

Enter passphrase (empty for no passphrase):

输入回车,设置密钥对保护暗码为空(假如对安全性要求比较高,建议还是输入一下暗码再回车)。

Enter same passphrase again:

这一步只是重复输入上一步输入的暗码,假如上一步设置暗码是空,这一步也直接输入回车。

Your identification has been saved in C:\Users\XXX/.ssh/id_rsa.
Your public key has been saved in C:\Users\XXX/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:XXXXXXXXXXXXXXXXXXXXXXXXX
The key's randomart image is:
+---[RSA 3072]----+
|@@==++ .         |
XXXX
+----[SHA256]-----+

此刻,公钥现已保存到 C:\Users\xxx\.ssh\id_rsa.pub 文件中,私钥现已保存到 C:\Users\xxx\.ssh\id_rsa 文件中。 而我用的是阿里云的服务器,它会要求使用后台操作界面生成私钥并自动下载到本地,保存的格式是(.pem)格式。

1. 翻开已装置的 VSCODE

假如还没装置就装一个呗,这儿边的进程没什么能够讲的。不过我有个引荐的当地如图,尤其是增加到右键菜单这儿:

VSCODE 配置远程调试环境

2. 装置 VSCODE 插件

VSCODE 自带的插件市场里查找以下插件并且装置:

插件名 用处
Remote – SSH 用SSH翻开长途机器的文件夹并且能够使用 vscode 的一切功能
Remote – SSH: Editing Configuration Files 修改 SSH 配置文件

3. 修改 SSH 配置文件

VSCODE 左侧边栏里找到 Remote Explorer 一项,点击进去。
在弹出的窗口里,下拉菜单挑选 SSH Targets (这儿的意图是链接长途服务器),再点击设置按钮,在弹出来的挑选窗口里,如图

VSCODE 配置远程调试环境

挑选第一个(自己用户目录下的 config 文件)。依照下面的提示修改内容并保存。

# Read more about SSH config files: https://linux.die.net/man/5/ssh_config
Host 自己起个姓名,你喜爱就好
    HostName 长途服务器的IP地址
    User 体系用户名
    Port 端口号,SSH一般都是22
    IdentityFile 密钥对里的私钥的本地保存方位(用双引号括起来)

然后在 VSCODE 左面的窗口里SSH TARGETS下面能够看到新增加的主机,默许是未衔接状态。

VSCODE 配置远程调试环境

4. 衔接主机

在上一步增加的主机窗口里,右键挑选 Connect to Host in Current Window 就能够在当时窗口衔接到指定的长途主机了。

既然衔接成功了(可能也会失利,后边剖析原因),那么长途主机的文件怎样阅读查看或许修改呢? 在 VSCODE 左侧边栏里找到 Explorer 一项,点击进去。
假如还没有文件被翻开,那么在左面的窗口能够看到一栏 NO FOLDER OPENED,点击翻开,再点击 Open Folder 按钮,在中心会弹出下拉菜单,在里面能够填上想要翻开的长途主机的目录。默许显示 /root/ 目录了,我这儿直接填我的一个 Django 的工程方位。

VSCODE 配置远程调试环境

说回来,上边说到衔接可能会有不成功的状况。我这儿就曾碰到这样的错误,点击衔接后弹出下面的正告窗。

VSCODE 配置远程调试环境

意思便是说 无法稳定衔接到我的长途主机xxx,然后也能够看到输出窗口会打印衔接的进程日志。细心点的话,能够从日志里看到下面的要害信息:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
[03:12:56.641] > @         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
> Permissions for 'G:\\ProjectWorkstation\\ali-cloud-key-pair\\id_rsa.pem' are too open.
> It is required that your private key files are NOT accessible by others.        
> This private key will be ignored.
> Load key "G:\\ProjectWorkstation\\ali-cloud-key-pair\\id_rsa.pem": bad permissions
> root@XXX.XXX.XXX.XXX: Permission denied (publickey).

意思便是说我这私钥文件[存放在 G:\ProjectWorkstation\ali-cloud-key-pair\id_rsa.pem]没有被保护起来,专业点的说法是文件设置的权限过分宽松了,得改,不然便是不给通过。好吧,我改!下面说下我的配置进程。

1)删掉不相关的用户一切者,只保存当时用户

找到上边说到的那个文件[G:\ProjectWorkstation\ali-cloud-key-pair\id_rsa.pem],鼠标右键挑选 属性,在弹出来的 属性 窗口挑选 安全,如图

VSCODE 配置远程调试环境

点击 `高级`,在弹出的 `高级安全设置` 窗口挑选 `禁用承继`,然后一路点击确认并退出 `高级安全设置` 的窗口。 接着在 `属性` 窗口点击 `修改`,在弹出的 `权限` 窗口里将一切的组或用户名删掉,再点击 `增加`,把自己的当时用户增加上去。 (至于怎样找到当时用户,这儿不展开了,你能够在其它当地找到这方面的信息,逃。。。)

2)仅保存读取权限

权限窗口,选中上面新建的用户,修改权限,仅保存 读取即可。如图

VSCODE 配置远程调试环境

好了,点击确定并退出。

再从头试一下衔接主机吧,相信你的问题现已解决了^_^。