Windows连接Linux服务器远程开发解决方案
解决方案
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服务器远程开发解决方案的更多相关文章
- Windows连接Linux服务器中MySQL数据库-权限配置
问题描述 在Windows系统中安装了监控MySQL数据库服务器性能的工具Spotlight on MySQL,利用Spotlight连接Linux服务器中的MySQL,进行相关配置如下: 点击& ...
- 使用VSCode的Remote-SSH连接Linux进行远程开发
安装Remote-SSH并配置 首先打开你的VSCode,找到Extensions,搜索Remote,下载Remote-Developoment插件,会自动安装其他的Remote插件,其中会包含Rem ...
- .Net Core 在Linux服务器下部署程序--(1). Windows 连接 Linux服务器
下载Linux服务器连接软件,市面上有Putty,FinalShell等,我以FinalShell为例,下载地址为 :http://www.hostbuf.com/t/988.html,软件安装结束后 ...
- vscode远程连接linux服务器,可视化绘图
vscode远程连接linux服务器 想要实现的功能和解决方案 实现的功能: windows下直接使用远程linux服务器的python环境和文件来编写和运行py文件, 实时的编写py文件,和可视化绘 ...
- Linux - Windows10连接linux服务器
当我们通过windows连接服务器时,大多数用的是ssh客户端软件,推荐使用ssh,安全系数比较高.下面介绍用telnet连接服务器. 客户端:C:\Users\dell>systeminfo主 ...
- 【转】使用vnc连接linux服务器方便hadoop开发调试
VNC(Virtual Network Computing)它能将完整的窗口界面通过网络,传输到另一台计算机的屏幕上. 类似的软件在Windows服务器中包含的"Terminal Serve ...
- Sublime 远程连接 Linux服务器
Sublime是一款强大的编辑器,它的强大体现在它强大的插件. 要实现Sublime 远程连接 Linux服务器,需要使用插件SFTP. 一. 插件安装 用Package Control安装插件按下C ...
- widows本地-xshell实现远程连接linux服务器图形界面
本地环境远程连接linux图形界面,常用的实现工具有,VNC.Puty.Xshell等,这里我们用的xshell manager: Xmanager简介:Xmanager是一个运行于 Windows平 ...
- 如何在Windows系统上利用Telnet协议连接Linux服务器
Telnet协议是Internet远程登录服务的标准协议,它为用户提供了在本地计算机上完成远程主机工作的能力.很多终端使用者都习惯在计算机上利用Telnet会话来远程控制服务器.这里小编就分两步为大家 ...
随机推荐
- web应用中实现同一个账号,后面登录的会把前面登录的挤下线
在web应用中假如没有做会话控制,会出现这样的情况,A登录了账号,B也登录了账号,都是同样的账号,A修改了信息,B会看到修改的信息,这样的用户体验不好,B会觉得我没有修改啊,为什么信息会改变.而做会话 ...
- [转帖]Redis性能解析--Redis为什么那么快?
Redis性能解析--Redis为什么那么快? https://www.cnblogs.com/xlecho/p/11832118.html echo编辑整理,欢迎转载,转载请声明文章来源.欢迎添加e ...
- Delphi 将视频 Base64 字符串转换为视频二进制文件
var Bytes: TBytes; Stream: TBytesStream; begin with System.NetEncoding.TBase64Encoding.Create do try ...
- centos将nginx服务设置为开机自动启动
centos将nginx服务设置为开机自动启动 1.在/etc/init.d下创建文件nginx 发现原来就有并且配置就是默认的,而且是正确的 命令为: vim /etc/init.d/nginx 需 ...
- python学习-68 反射
反射 1.什么是反射? 反射的概念是有Smith在1982年首次提出的,主要是指程序可以访问.检测和修正它本身状态或行为的一种能力(自省). 2.以下四个方法可以实现自省 hasattr(object ...
- 34 多线程(六)——线程安全 synchronized
关键字synchronized可以写在方法和代码块中 写在普通方法中:锁住的对象是this,即类的实例.也就是说锁住的是类下面的类变量(成员变量),而不是方法中的变量. 写在静态方法中:锁住的对象时c ...
- 16 IO流(十三)——Object流 序列化与反序列化
Object流.序列化与反序列化 Object流是将 可序列化的对象 进行序列化与反序列化的流. 可序列化的对象:使用关键字Serializable修饰,表示这个对象可以进行序列化与反序列化. 序列化 ...
- GIT讲解
一.什么是Git: Git是目前世界上最先进的分布式版本控制系统. 二.为什么要用版本控制系统: 1.更方便的存储版本 2.恢复之前的版本 3.更方便的进行对比 4.协同合作 三.如何安装GIT: 1 ...
- 使用PHP开发HR系统(1)
本文通过笔者的实践,讲述如何以PHP+CI+Postgres构建一套人力资源管理系统. ======================================================== ...
- linux BufferedImage.createGraphics()卡住不动
项目应用服务器tomcat7,在开发(windows).测试环境(linux 64bit)均正常.在生产环境(linux 64bit)一直启动不起来,也没有报错. 最终定位问题:执行到buffered ...