admin管理员组

文章数量:1530842

目录

  • 引言
  • 安装Remote-SSH插件
  • 配置SSH连接参数
  • SSH密钥连接服务器
  • 远程操作服务器文件

引言

最近,开始学习使用VS Code,之前远程调试后端习惯了,换了新环境,首先还得先连上我可爱的服务器才行。VS Code这点还是挺方便的,利用Remote - SSH插件,简单配置下就可以了。不过其中也遇到了一点问题,这里给大家简单聊下。

安装Remote-SSH插件

Extensions项中搜索Remote - SSH插件,点击install,安装即可,安装后,在VS Code软件最右侧,也就是Extensions项下面出现一个新的图标,就是SSH连接图标,如下图所示。通过点击该图标,可以连接运行有SSH服务的服务器,简化开发和管理。

配置SSH连接参数

点击上图中,SSH TARGETS后面的+号,在主界面弹出的框中输入ssh 服务器网址或IP地址,如ssh 192.168.1.1·等,回车后,弹出配置文件保存位置,默认选择第一项即可,确认后,右下角会有提示,同时左侧SSH TARGETS下面会出现刚才的服务器网址或IP列表。


这时,不要急于点击左侧列表进行连接,因为还没有将我们的服务器密钥信息写入配置文件。我们点击SSH TARGETS后面的设置图标,打开刚才的配置文件,即C:\Users\用户名\.ssh\config文件。

config文件中配置以下代码,需要添加User、Port、IdentityFile字段,添加完成后保存。

Host 服务器IP或网址
  HostName 服务器IP或网址
  User 服务器用户名
  Port SSH服务端口,默认为22
  IdentityFile "替换为你的服务器SSH密钥路径"

SSH密钥连接服务器

之后点击左侧列表主机名后面带+号的文件夹图标进行服务器连接,在弹出的新窗口中选择远程服务器的操作系统类型,如Linux、Windows或macOS,之后开始建立连接。正常情况下连接成功后,界面如下图所示,左下角显示绿色,主机列表图标也加了个绿色的对号。

这里特别说明下我遇到的问题。可能有些朋友会和我一样,各项参数配置没有问题,但依然连接不上,如下图所示。这里我们分析下错误信息:

Permissions for 'F:/...' are too open. 
It is required that your private key files are NOT accessible by others. 
This private key will be ignored.

原来是我的服务器密钥文件权限过于开放,系统认为不安全,终止了连接。使用SSH密钥登录,需赋予私钥文件仅本人可读权限。 所以我们这里需要做的事情就是重新给密钥文件分配权限。

怎么分配权限呢?其实很简单,以我使用的WIN10为例,分为两步:

  • 清空文件所有用户权限
    在密钥文件右键,依次点击 属性 -> 安全 -> 高级 -> 禁用继承 -> 从此对象中删除所有已继承的权限,最后点击应用确定
  • 设置特定用户访问权限
    针对我们当前用户,设置对该文件的访问权限,在密钥文件右键,依次点击 属性 -> 安全 -> 高级 -> 添加 -> 选择主体 -> 高级 -> 立即查找,选择当前用户后,一路确定即可。最终文件权限如图所示。

    具体过程可参考这篇文章,写得很详细,有动图。 win10 通过 ssh 连接云服务器失败 are too open. bad permissions.

远程操作服务器文件

连接成功后,打开左侧Explorer项,点击Open Folder按钮,即可通过路径选择远程服务器上的相应文件夹,像本地一样进行操作。

本文标签: 密钥过大权限解决方案服务器