解决方案

vscode+Linux服务器

解决连接问题

vscode商店下载remote-ssh工具,然后进行配置。

这个网上依旧有很多详细的教程了,这里就不过多赘述。

配置免密登录

这一部分是我要重点介绍的,因为我就在这里卡了很长时间。

在已经能够连接的基础上,我们要使用“密钥”来实现免密登录连接,这样我们就不用每次都输入密码进行登录。

(1)在本地机器上生成密钥对(如果你已经生成过密钥对,可以跳过此步骤)

  在这里,我们的本地机器就是Windows机器,要生成密钥对,我们要借助一个具备SSH功能的工具(比如OpenSSH,gitbash之类的)。因为之前安装过git,所以我就使用gitbash来操作。

  在SSH工具下执行 ssh -keygen -t rsa,然后就不用管他,一路回车,我们就会在我们本地 C/Users/用户名/.ssh文件夹下看到生成的 id_rsa(私钥)和id_rsa_pub(公钥)两个钥匙

(2)把公钥的内容复制到Linux服务器的 home/用户名/.ssh/authorized_keys文件中

  这个内容复制过程,你手动复制黏贴也行,你用命令行操作也是OK,反正把刚刚Windows机器生成的id_rsa_pub内容弄到这个authorized_keys文件中即可(如果没有这个authorized_keys文件,你就手动创建就行)。

基本上,很多人完成到这里就已经能够实现免密登录了,试一试行不行,不行我们就往下继续解决无法免密登录的问题。

无法免密登录解决指南

(1)Linux服务器中的文件权限问题

  .ssh和authorized_keys这两个文件(目录)是有权限要求的,.ssh需要700,authorized_keys需要600或644

  用两个命令实现:chmod 700 ~/.ssh    和     chmod 600 ~/.ssh/authorized_keys

(2)sshd_config配置文件需要修改

  • 一是确保Linux服务器中 /etc/ssh/sshd_config文件中的 StrictModes 是处于 no 状态,一般StrictModes默认是yes状态,所以我们要找到#StrictModes yes这一行,然后改成 StrictModes no
  • 二是确保Linux服务器中 /etc/ssh/sshd_config文件中的 PubkeyAuthentication 处于yes 状态,一般默认就是yes ,如果不是yes,就改成PubkeyAuthentication yes即可
  • 全部改完后,一定要重启sshd服务:systemctl restart sshd.service

(3)如果到这里还是不行,并且你使用的是很久之前就已经生成的密钥,我的建议是重新生成密钥,我就是重新生成密钥后成功的

Windows连接Linux服务器远程开发解决方案的更多相关文章

  1. Windows连接Linux服务器中MySQL数据库-权限配置

    问题描述 在Windows系统中安装了监控MySQL数据库服务器性能的工具Spotlight on MySQL,利用Spotlight连接Linux服务器中的MySQL,进行相关配置如下:   点击& ...

  2. 使用VSCode的Remote-SSH连接Linux进行远程开发

    安装Remote-SSH并配置 首先打开你的VSCode,找到Extensions,搜索Remote,下载Remote-Developoment插件,会自动安装其他的Remote插件,其中会包含Rem ...

  3. .Net Core 在Linux服务器下部署程序--(1). Windows 连接 Linux服务器

    下载Linux服务器连接软件,市面上有Putty,FinalShell等,我以FinalShell为例,下载地址为 :http://www.hostbuf.com/t/988.html,软件安装结束后 ...

  4. vscode远程连接linux服务器,可视化绘图

    vscode远程连接linux服务器 想要实现的功能和解决方案 实现的功能: windows下直接使用远程linux服务器的python环境和文件来编写和运行py文件, 实时的编写py文件,和可视化绘 ...

  5. Linux - Windows10连接linux服务器

    当我们通过windows连接服务器时,大多数用的是ssh客户端软件,推荐使用ssh,安全系数比较高.下面介绍用telnet连接服务器. 客户端:C:\Users\dell>systeminfo主 ...

  6. 【转】使用vnc连接linux服务器方便hadoop开发调试

    VNC(Virtual Network Computing)它能将完整的窗口界面通过网络,传输到另一台计算机的屏幕上. 类似的软件在Windows服务器中包含的"Terminal Serve ...

  7. Sublime 远程连接 Linux服务器

    Sublime是一款强大的编辑器,它的强大体现在它强大的插件. 要实现Sublime 远程连接 Linux服务器,需要使用插件SFTP. 一. 插件安装 用Package Control安装插件按下C ...

  8. widows本地-xshell实现远程连接linux服务器图形界面

    本地环境远程连接linux图形界面,常用的实现工具有,VNC.Puty.Xshell等,这里我们用的xshell manager: Xmanager简介:Xmanager是一个运行于 Windows平 ...

  9. 如何在Windows系统上利用Telnet协议连接Linux服务器

    Telnet协议是Internet远程登录服务的标准协议,它为用户提供了在本地计算机上完成远程主机工作的能力.很多终端使用者都习惯在计算机上利用Telnet会话来远程控制服务器.这里小编就分两步为大家 ...

随机推荐

  1. [LeetCode] 375. Guess Number Higher or Lower II 猜数字大小 II

    We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You have to gues ...

  2. Exsi6.6主机网络不通解决办法

    Exsi虚拟机网络偶尔不通,防火墙性能不足 解决办法,断开网络连接再重连

  3. layoutSubviews在什么情况下调用

    可以使用layoutSubviews修改UI: 1.init初始化不会触发layoutSubviews 但是是用initWithFrame 进行初始化时,当rect的值不为CGRectZero时,也会 ...

  4. html5+springboot+websocket的简单实现

    环境 window7,IntelliJ IDEA 2019.2 x64 背景:利用IntelliJ来搭建springboot框架,之后来实现websocket的功能.websocket只是实现了画面上 ...

  5. DHCP、DHCP Snooping及DHCP relay工作原理入门及实践(转)

    原文https://blog.51cto.com/5167020/2312718 序:DHCP服务相对简单,写本文的目的是为了讲一些DHCP安全方面的技术. 1.DHCP基础 DHCP 全称动态主机配 ...

  6. torch7安装的坑

    https://github.com/torch/torch7/issues/1086 sudo su export TORCH_NVCC_FLAGS="-D__CUDA_NO_HALF_O ...

  7. ORACLE数据库实现自增的两种方式

    Mysql数据库因为其有自动+1,故一般我们不需要花费太多时间,直接用关键字auto_increment即可,但是Oracle不行,它没有自动增长机制.顾我们需要自己去实现.一般有两种方式,但是这两种 ...

  8. 【1】BIO与NIO、AIO的区别

    一.BIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要对每个请求 ...

  9. 【洛谷 P4248】 [AHOI2013]差异(后缀自动机)

    题目链接 \[ans=\sum_{1<=i<j<=n}len(T_i)+len(T_j)-2*lcp(T_i,T_j)\] 观察这个式子可以发现,前面两个\(len\)是常数,后面的 ...

  10. js 移动端之监听软键盘弹出收起

    js 移动端关于页面布局,如果底部有position:fixed的盒子,又有input,当软键盘弹出收起都会影响页面布局.这时候Android可以监听resize事件,代码如下,而ios没有相关事件. ...