VS Code 跳板机登录服务器(手打密码+秘钥登录)

2024-03-23 00:36

本文主要是介绍VS Code 跳板机登录服务器(手打密码+秘钥登录),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

0.为什么要用跳班机登陆服务器?

1.VS Code插件安装及ssh安装

2.密码链接方式

1)添加ssh设置,设置主机

2)设置跳板机

Tips:可以直接通过窗口连接文件管理

3.密钥连接方式(更安全更方便)

1)mac版本

2)windows版本

3)问题排除


0.为什么要用跳板机登陆服务器?

因为这样可以使用vscode的file管理器,可以直接查看和修改files非常方便,登陆起来也只用输入跳板机的密码和目标机的密码。

1.VS Code插件安装及ssh安装

在左边栏点击像俄罗斯方块的logo,进行Remote SSH安装,安装完成后会出现俄罗斯方块下面的那个图标:一个电脑一个链接符号

Mac系统中默认是带有ssh的,windows需要打开cmd,输入

ssh -V

查看,如果没有安装,则需要安装OpenSSH:可以通过Windows设置安装。打开“设置”,选择“应用”,点击“应用和功能”,进入“可选功能”。在列表中找到“OpenSSH 客户端”并选中其旁边的复选框,点击“安装”按钮。

2.密码链接方式

这一点mac和win系统都一样

1)添加ssh设置,设置主机

点击新添加的那个图标,之后右边会出现变化,点击齿轮进行配置

上搜索栏会自动弹出提示,选择默认的第一个即可。

输入如下,host是你自己起的名字会显示在左边作为这个机器的代名,随便起即可,只要方便自己记忆,hostname就是你的服务器的ip了,可以是内外网,port默认是ssh的端口22(看情况,我的有公网路由就不一样),User就是你在服务登陆的用户名。

Host 50002HostName xxx.xxx.xxx.xxxPort 22User xxxxxx

设置好了如下,这是你的直连主机。设置完了进行保存。

之后就出现了,点击后可以输入密码登陆,密码输入的地方在上面搜索栏,也有可能因为安装的vscode版本不同在交互终端。

2)设置跳板机

如果你不需要登陆主机,可以直接来这一步,参考如上操作。输入如下:注意要改的地方是Usernamexxx和(跳板)主机的ip,-p 后是输入的端口,如果是默认端口22则不需要添加,  ProxyCommand上面的user是你目标机器的用户名,ip和端口信息。

Host 3090via50002HostName 192.168.5.37Port 22User zhfProxyCommand ssh -p 50002 UserNamexxx@xxx.xxx.xxx.xxx -W %h:%p 2> /dev/null

设置完成后保存,刷新后远程栏出现3090via50002,这就是你通过跳板机连接的按钮。点击后输入两次密码:第一次密码是跳板机的密码,第二次密码是目标机的密码。

连接成功后点击左下角后出现终端命令行,点击终端即出现交互命令行

Tips:可以直接通过窗口连接文件管理

点击左边栏的资源管理器,又需要输入两遍密码才可以。第一次是要这样的。

后面在你的host出现了下拉框可以点击“在新窗口中连接”,即可实现输入一遍(2次)密码进行连接

3.密钥连接方式(更安全更方便)

1)mac版本

打开mac的本地命令行:Command+空格 输入终端/terminal

输入命令生成密钥对,一路回车执行

ssh-keygen -t rsa

将公钥复制到目标服务器上,其实这句话就是在你服务器的用户名下的.ssh文件夹内建立authorized_keys文件,并把id-rsa.pub里的内容复制到authorized_keys中

ssh-copy-id -i ~/.ssh/id_rsa.pub -p 50002 UserName@xxx.xxx.xxx.xxx

拷贝时候需要输入服务器的用户username的密码

修改.ssh/config文件内容,如下(增加了认证文件一行)

Host 50002HostName xxx.xxx.xxx.xxxPort 50002User zhfIdentityFile ~/.ssh/id_rsa

连接第一次需要输入密码

重点:跳板机设置,在有以上50002设置的基础上

Host 3090via50002HostName 192.168.5.37Port 22User zhfIdentityFile ~/.ssh/id_rsaProxyCommand ssh -W %h:%p 50002

在目标机上拷贝authorized_keys文件,或者创建文件后复制跳板机的authorized_keys文件内容。

2)windows版本

参考mac直接把公钥复制到服务器的anthorized_keys下。其实也可以通过在服务器上使用生成公私钥,把服务器上的id_rsa的内容复制到本地的.ssh/id_rsa下即可。在windows下不需要添加IdentityFile,使用上面的密钥登录跳板机的ProxyCommand即可。

3)问题排除

权限问题:有可能是服务器上文件或文件夹不能正常访问,更改访问权限:

chmod 700 .ssh
chmod 600 .ssh/authorized_keys

sshd设置问题:需要用sudo用户修改

sudo vim /etc/ssh/sshd_config

在文件中添加(有关键字的话去掉#)

PubkeyAuthentication yes
RSAAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys .ssh/authorized_keys2

然后重启服务

sudo service sshd restart

这篇关于VS Code 跳板机登录服务器(手打密码+秘钥登录)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/836589

相关文章

数据库oracle用户密码过期查询及解决方案

《数据库oracle用户密码过期查询及解决方案》:本文主要介绍如何处理ORACLE数据库用户密码过期和修改密码期限的问题,包括创建用户、赋予权限、修改密码、解锁用户和设置密码期限,文中通过代码介绍... 目录前言一、创建用户、赋予权限、修改密码、解锁用户和设置期限二、查询用户密码期限和过期后的修改1.查询用

Window Server创建2台服务器的故障转移群集的图文教程

《WindowServer创建2台服务器的故障转移群集的图文教程》本文主要介绍了在WindowsServer系统上创建一个包含两台成员服务器的故障转移群集,文中通过图文示例介绍的非常详细,对大家的... 目录一、 准备条件二、在ServerB安装故障转移群集三、在ServerC安装故障转移群集,操作与Ser

NFS实现多服务器文件的共享的方法步骤

《NFS实现多服务器文件的共享的方法步骤》NFS允许网络中的计算机之间共享资源,客户端可以透明地读写远端NFS服务器上的文件,本文就来介绍一下NFS实现多服务器文件的共享的方法步骤,感兴趣的可以了解一... 目录一、简介二、部署1、准备1、服务端和客户端:安装nfs-utils2、服务端:创建共享目录3、服

Python项目打包部署到服务器的实现

《Python项目打包部署到服务器的实现》本文主要介绍了PyCharm和Ubuntu服务器部署Python项目,包括打包、上传、安装和设置自启动服务的步骤,具有一定的参考价值,感兴趣的可以了解一下... 目录一、准备工作二、项目打包三、部署到服务器四、设置服务自启动一、准备工作开发环境:本文以PyChar

Java中的密码加密方式

《Java中的密码加密方式》文章介绍了Java中使用MD5算法对密码进行加密的方法,以及如何通过加盐和多重加密来提高密码的安全性,MD5是一种不可逆的哈希算法,适合用于存储密码,因为其输出的摘要长度固... 目录Java的密码加密方式密码加密一般的应用方式是总结Java的密码加密方式密码加密【这里采用的

Apache Tomcat服务器版本号隐藏的几种方法

《ApacheTomcat服务器版本号隐藏的几种方法》本文主要介绍了ApacheTomcat服务器版本号隐藏的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1. 隐藏HTTP响应头中的Server信息编辑 server.XML 文件2. 修China编程改错误

python实现自动登录12306自动抢票功能

《python实现自动登录12306自动抢票功能》随着互联网技术的发展,越来越多的人选择通过网络平台购票,特别是在中国,12306作为官方火车票预订平台,承担了巨大的访问量,对于热门线路或者节假日出行... 目录一、遇到的问题?二、改进三、进阶–展望总结一、遇到的问题?1.url-正确的表头:就是首先ur

如何在一台服务器上使用docker运行kafka集群

《如何在一台服务器上使用docker运行kafka集群》文章详细介绍了如何在一台服务器上使用Docker运行Kafka集群,包括拉取镜像、创建网络、启动Kafka容器、检查运行状态、编写启动和关闭脚本... 目录1.拉取镜像2.创建集群之间通信的网络3.将zookeeper加入到网络中4.启动kafka集群

mysql重置root密码的完整步骤(适用于5.7和8.0)

《mysql重置root密码的完整步骤(适用于5.7和8.0)》:本文主要介绍mysql重置root密码的完整步骤,文中描述了如何停止MySQL服务、以管理员身份打开命令行、替换配置文件路径、修改... 目录第一步:先停止mysql服务,一定要停止!方式一:通过命令行关闭mysql服务方式二:通过服务项关闭

Python如何实现 HTTP echo 服务器

《Python如何实现HTTPecho服务器》本文介绍了如何使用Python实现一个简单的HTTPecho服务器,该服务器支持GET和POST请求,并返回JSON格式的响应,GET请求返回请求路... 一个用来做测试的简单的 HTTP echo 服务器。from http.server import HT