Windows终端远程登陆Linux服务器(SSH+VScode)

news2024/9/24 23:21:38

W i n d o w s 终端远程登陆 L i n u x 服务器( S S H + V S c o d e ) \huge{Windows终端远程登陆Linux服务器(SSH+VScode)} Windows终端远程登陆Linux服务器(SSH+VScode

文章目录

  • 写在前面
  • 通过SSH远程连接Linux服务器
    • 安装SSH客户端
    • 安装SSH服务端
    • 通过SSH登陆服务器
      • 正常登陆
      • 使用别名登陆
    • 免密登陆
      • 生成本地密钥
      • 复制公钥到Linux
  • 使用VScode远程连接Linux进行二次开发
    • 远程登陆
    • 优缺点

写在前面

软件开发以来Linux系统可以说是非常普遍,而远程连接Linux服务器进行开发和维护更是成为一种常态,但对于业余选手来说,通常大家使用的都是Windows系统。本文将从0开始讲解如何使用Windows系统进行远程登陆Linux服务器,以及使用VScode进行开发。

通过SSH远程连接Linux服务器

SSH(Secure Shell)是一种网络协议,用于加密方式远程登录到服务器。

安装SSH客户端

Windows 10及以上版本自带了OpenSSH客户端。

安装SSH服务端

在服务器端安装 OpenSSH,需要在服务器终端进行。

# 安装 ssh
sudo apt install openssh-server
# 安装完成后一般会自动启动,通过如下命令检查 ssh 是否已经启动
sudo systemctl status ssh
# 如果没有启动,需要启动 ssh 服务
sudo systemctl start ssh
# 如果要停止 ssh 服务
sudo systemctl stop ssh

通过SSH登陆服务器

正常登陆

ssh User@IP # User 是用户 IP 是服务器地址

使用别名登陆

通过修改Windows终端中的配置文件实现。

Windows终端中的配置文件一般都在C:\Users\UserName\.ssh目录中。然后我们用记事本打开config文件(没有就新建),或者使用命令code config打开。在文件中添加如下内容:

Host Server_1
HostName IP
User root
IdentitiesOnly yes

其中:

  1. Host 后边的是名称,以后可以根据这个名称进行访问;
  2. HostName是你的主机IP地址;
  3. User为主机登录的用户名;
  4. IdentitiesOnly yes固有配置;

然后我们在远程登陆服务器时就可以使用Server_1来代替User@IP

免密登陆

如果我们想要免密在本地Windows终端登陆服务器,需要做的事是:将本地公钥告诉给想要免密登陆的服务器。具体做法如下:

生成本地密钥

ssh keygen

这是会在本地.ssh文件中生成密钥文件,地址通常为:C:\Users\UserName\.ssh,文件夹中的id_rsa是私钥(切记不可泄露!!!),id_rsa.pub是公钥,也就是我们需要的。

复制公钥到Linux

id_rsa.pub中的内容复制到Linux的用户根目录的~/.ssh/authorized_keys,如果文件中不为空,则复制到后面即可,但要有间隔。

使用VScode远程连接Linux进行二次开发

VS Code(Visual Studio Code)是一个功能强大的编辑器,支持远程开发。以下是使用VS Code连接Linux服务器的步骤:

远程登陆

  • 步骤1: 安装 Remote-SSH 插件。第一次使用VS Code 需要在左侧插件栏搜索 Remote-SSH 并安装。

    image-20240714120456981

  • 步骤2: 左下角 Open a remote window 然后选择 Connect to Host

    image-20240714120642043

  • 步骤3: 执行 ssh 登陆。 如下图所示,这里有两种选择:

    image-20240714120901153

    • Add New SSH Host,新建一个Host :如果只是偶尔登陆这个 host ,可以选择这种方式。

    • Configure SSH Hosts,配置一个Host:如果需要经常登陆,可以新建一个配置文件,这样每次登陆直接选择对应的Host名称就可以了,这里的配置文件一般在 C 盘C:\Users\UserName\.ssh\config。在config 文件中填入如下信息:Host 就是后续登陆使用的名称,HostName是服务器的 IP 地址,一般 SSH 对应的端口号 Port 是22 ,User 是你在服务器上注册的用户名。

      Host 配置好后,再执行 SSH 登陆时,只需要终端输入Host 名称即可,比如这里的就是ssh cvlab ,等同于之前的 ssh UserName@IP

      Host Server_1
      HostName IP
      Port 22
      User root
      IdentitiesOnly yes
      
  • 步骤4: 配置好后再重新按照步骤1进行登陆,发现登陆名称中多了刚才新建的ACMserver,点击进去,首先需要选择远程服务器的类型Linux,然后输入你的账号密码。

    image-20240714134502339

  • 步骤5: 首次登陆会自动在服务器端安装 VScode server,如果账号密码都没问题的话,就可以登陆成功了,按 Ctrl + ~ 键打开终端,可以发现现在已经进入服务器的环境了,接下来的操作就和你在本地机器上一样。

    image-20240714134734162

优缺点

  • SSH命令行:适合需要执行命令行操作的场景,对于脚本编写和快速命令执行非常有效。
  • VS Code远程开发:适合需要图形界面和复杂编辑功能的场景,尤其是代码编辑、调试和版本控制。

参考文章:https://blog.csdn.net/u010522887/article/details/138187926

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1931958.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

rust + python+ libtorch

1: 环境,ubuntu 1.1 rust : rust-1.79.0 (在官方下载linux版本后,解压文件夹,内部有个install的sh文件,可安装) 安装成功测试:cargo --version 1.2 python3.10 (直接使用apt install pytho…

Redis-基础概念

目录 概念 Redis是什么 Redis 和 MySQL 的区别? Redis单线程有什么极端场景的瓶颈 Redis为什么快? 为什么Redis是单线程? Redis是单线程还是多线程 Redis为什么选择单线程做核心处理 Redis6.0之后引入了多线程,你知道为什么吗? 瓶颈是内存和I…

SAP PP学习笔记28 - 生产订单的收货及品质管理

上一章讲了生产订单的很多概念,比如确认(报工)以及报工的各种形式,反冲,自动入库等。 SAP PP学习笔记27 - Confirmation(报工/确认)(CO11,CO11N,CO15,CO12),…

IOS系统有什么好用的藏语翻译软件推荐吗?

藏语翻译通是我使用过的比较好用实用的藏语翻译软件。 藏语翻译通是一款专为藏语和汉语互译设计的智能翻译软件,它利用最新的人工智能技术,为用户提供高效、准确的翻译服务。软件界面简洁直观,易于操作,无论是藏语学习者、研究者…

C++中的变量的同名隐藏

同名隐藏是C中的一个概念,在一个类的继承关系中,子类中定义了一个与父类中同名的成员函数。当这种情况发生时,子类中的函数会隐藏掉所有父类中同名的函数,这意味着在子类中调用这个函数时,会优先调用子类中定义的版本&…

图书馆定位导航:RFID、VR与AR技术在图书馆中的应用

图书馆作为知识的宝库,承载着无数求知者的梦想与期待,随着馆藏书籍数量的激增与图书馆布局的日益复杂,读者在寻找目标书籍往往有许多困难。传统的索引号查询方式虽能提供书籍的基本信息,但在寻找过程中,因不熟悉图书馆…

智慧博物馆的“眼睛”:视频智能监控技术守护文物安全与智能化管理

近日,位于四川德阳的三星堆博物馆迎来了参观热潮。据新闻报道,三星堆博物馆的日均参观量达1.5万人次。随着暑假旅游高峰期的到来,博物馆作为重要的文化场所,也迎来了大量游客。博物馆作为文化和历史的重要载体,其安全保…

JAVA零基础学习1(CMD、JDK、环境变量、变量和键盘键入、IDEA)

JAVA零基础学习1(CMD、JDK、环境变量、变量和键盘键入、IDEA) CMD常见命令配置环境变量JDK的下载和安装变量变量的声明和初始化声明变量初始化变量 变量的类型变量的作用域变量命名规则示例代码 键盘键入使用 Scanner 类读取输入步骤示例代码 常用方法处…

网络开局 与 Underlay网络自动化

由于出口和核心设备 部署在核心机房,地理位置集中,业务复杂,开局通常需要网络工程师进站调测。 因此核心层及核心以上的设备(包含核心层设备,旁挂独立AC设备和出口设备)推荐采用WEB网管开局方式或命令行开局方式。 核心以下的设备(包含汇聚层设备、接入层设备和AP)由于数量众…

【程序大侠传】服务发布引发mq消息重复消费

前序 在编程武侠世界中,有一个门派“天机楼”,连接并协调各大门派之间的关系,确保整个江湖的运作流畅无阻。天机楼住要的业务范围主要如下: 信息传递的信使: 天机楼就像是江湖中的飞鸽传书,确保各门派之间…

学生管理系统(C语言)(Easy-x)

课 程 报 告 课 程 名 称: 程序设计实践 专 业 班 级 : XXXXX XXXXX 学 生 姓 名 : XXX 学 号 : 231040700302 任 课 教 师 &a…

电瓶车检测AI算法:视频智能分析技术助力电瓶车规范与安全管理

随着电瓶车(电动自行车)的普及,其在城市交通中扮演着越来越重要的角色。然而,电瓶车的管理、安全监控以及维护等方面也面临着诸多挑战。近年来,人工智能(AI)技术的发展为解决这些问题提供了新的…

Ubuntu安装virtualbox(win10)

virtualbox下载安装 1、下载virtualbox 下载路径:Linux_Downloads – Oracle VM VirtualBox 根据自己的Ubuntu版本选择对应的安装包下载 2、安装virtualbox 到下载路径(一般为~/Download)打开终端输入命令 sudo dpkg -i xxx.deb 继续执…

求解答word图标变白

把WPS卸载了之后就变成白色了,然后在注册表中把word的地址改成office word的地址之后图标变成这样了,怎么办

【漏洞复现】Rejetto HTTP文件服务器——远程命令执行(CVE-2024-23692)

声明:本文档或演示材料仅供教育和教学目的使用,任何个人或组织使用本文档中的信息进行非法活动,均与本文档的作者或发布者无关。 文章目录 漏洞描述漏洞复现测试工具 漏洞描述 Rejetto HTTP文件服务器是一个轻量级的HTTP服务器软件&#xff…

电源芯片MPQ3431A

一、芯片介绍 MPQ3431A是一款具有宽输入范围的固定频率为450kHz的高度集成的升压转换器,其输入电压低至2.7V,采用恒定关断时间(COT)的控制拓扑,可提供快速的瞬态响应。芯片支持通过MODE管脚配置PSM(pulse-…

redis基本类型和订阅

redis-cli -h <host> -p <port> -a <password> 其中&#xff0c;< host>是Redis服务器的主机名或IP地址&#xff0c;< port>是Redis服务器的端口号&#xff0c;< password>是Redis服务器的密码&#xff08;如果有的话&#xff09;。 set …

FPGA CFGBVS 管脚接法

说明 新设计了1个KU040 FPGA板子&#xff0c;回来之后接上JTAG FPGA不识别。做如下检查&#xff1a; 1、电源测试点均正常&#xff1b; 2、查看贴片是否有漏焊&#xff0c;检查无异常&#xff0c;设计上NC的才NC&#xff1b; 3、反复检查JTAG接线是否异常&#xff0c;贴片是…

Large Language Model系列之一:语言模型与表征学习(Language Models and Representation Learning)

语言模型与表征学习&#xff08;Language Models and Representation Learning&#xff09; 1 语言模型 N-Gram模型 from collections import defaultdictsentences [The swift fox jumps over the lazy dog.,The swift river flows under the ancient bridge.,The swift br…

C语言 ——— 编写代码,判断 整型数组 是否 有序

目录 题目要求 代码实现 题目要求 判断 整型数组 是否有序 如果 整型数组 有序输出 sorted&#xff1b;否则输出 unsorted 代码实现 #include<stdio.h> int main() {int arr[10] { 0 };int sz sizeof(arr) / sizeof(arr[0]);//输入for (int i 0; i < sz; i){s…