Windows系统部署GoLand结合内网穿透实现SSH远程Linux服务器开发调试

](https://img-home.csdnimg.cn/images/20220524100510.png#pic_center)

🌈个人主页: Aileen_0v0
🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法|MySQL|
💫个人格言:“没有罗马,那就自己创造罗马~”

be tied up with忙于

文章目录

    • 1. 安装配置GoLand
    • 2. 服务器开启SSH服务
    • 3. GoLand本地服务器远程连接测试
    • 4. 安装cpolar内网穿透远程访问服务器端
      • 4.1 服务器端安装cpolar
      • 4.2 创建远程连接公网地址
    • 5. 使用固定TCP地址远程开发

本文主要介绍使用GoLand通过SSH远程连接服务器,并结合cpolar内网穿透工具实现远程办公。

GoLand是由JetBrains推出的一款专为Go语言开发设计的集成开发环境(IDE)。它集成了多种高级功能,包括但不限于智能代码补全、代码分析和高级调试功能。可以帮助编写Go语言更加便捷,支持各种高级IDE功能和各种Go语言框架。

接下来教大家如何配置GoLand并且远程公司服务器进行编程开发。

6d9efaed23dda7ecfad3ec36d7a02b7

1. 安装配置GoLand

GoLand下载地址:https://www.jetbrains.com.cn/go/

进入官网后,点击下载

917320ec4152e85e6f078fb9b8ca0b5

下载完GoLand安装包后,点击安装,下一步

f070c15c3a97ec96dec151c749f17a2

选择安装路径,点击下一步

ee65bf1e0bbb9a6d89e92ffbdedc9b3

安装中,完成后点击下一步

02ff6275e552fd6b2de9de14deb7d94

运行GoLand,选择SSH

image-20240103113825914

点击New Project

image-20240103113920083

2. 服务器开启SSH服务

在服务器端获取IPv4 地址

ip addr show

903fd99ba9fd349b7eeb47573f67563

开启SSH服务,执行

sudo apt-get install openssh-server

启动SSH服务

sudo service ssh start

执行下方命令,active表示已开通

sudo systemctl status sshd 

image-20240103114948853

3. GoLand本地服务器远程连接测试

在GoLand中点击New Project,填写Username和Host(Username指服务器端用户名,Host为刚才获取的服务器本地IP地址)

548b06b0838b1eb6b0ac045aa95e53b

点击Check Connection and Continue进行连接

输入服务器端密码,点击Authenticate

image-20240103115630942

可以看到在本地连接成功,可以看到服务器端文件,点击open an SSH terminal

20c90d1e9c2e1a50fb29d8845c32bde

测试一下修改文件里的内容,改为"Hello World!"服务器端是否同步

e4fc914e0c8b88d87e8aa58c3fdba7c

在服务器端查看文件内容,可以看到修改后“Hello World!"

8764afe897c3d8466814c36c308437f

我们在本地测试成功,但是我们如果需要长期异地办公,需要结合cpolar内网穿透实现公网远程使用服务器,这里我们需要将SSH使用的本地IP映射为公网TCP地址,才能实现异地开发。

4. 安装cpolar内网穿透远程访问服务器端

4.1 服务器端安装cpolar

本地测试完成后,我们需要在服务器上安装cpolar内网穿透工具,通过cpolar 转发本地端口映射的公网地址,我们可以很容易实现远程访问。下面是安装cpolar步骤:

cpolar官网地址: https://www.cpolar.com

  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://服务器的局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可

image-20230831171159175

4.2 创建远程连接公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,注意不要与已有的隧道名称重复
  • 协议:tcp
  • 本地地址:22 (本地ssh默认端口)
  • 域名类型:临时随机TCP端口
  • 地区:选择China Top

点击创建

9fdc6cda7fe4161b5c0e2adb6554717

创建成功后,打开左侧在线隧道列表,查看刚刚创建隧道后生成的tcp地址,这个地址就是公网连接地址,接下来使用这个地址

image-20240103134924793

我们点击back回到SSH界面,重新点击New Project。

Username不变,Host填写刚才cpolar生成的公网地址,Port:cpolar生成的公网地址端口号

image-20240103135009331

点击Check Connection and Continue进行连接,点击OK

image-20240103135133221

继续输入服务器端密码

image-20240103135158016

连接服务器端成功

image-20240103135237554

小结

为了方便演示,我们在前述过程中使用了Cpolar生成的TCP地址隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

我一般会使用固定TCP域名,原因是我希望每天打开开发工具直接上手工作,无需重新配置TCP地址直接进行开发操作,接下来我教大家如何固定TCP地址:

5. 使用固定TCP地址远程开发

接下来保留一个固定tcp地址,登录cpolar官网,点击左侧的预留,找到保留的tcp地址,为远程服务器连接保留一个固定tcp地址:

  • 地区:选择China VIP
  • 描述:即备注,可自定义

点击保留

017bffba15e502d0120b3faafa9491b

地址保留成功后,复制生成的公网地址,打开cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们上面创建的TCP隧道,点击编辑

15004de8f87ac4961e6aa0745ff72eb

修改隧道信息,将保留成功的固定tcp地址配置到隧道中

  • 端口类型:修改为固定TCP端口
  • 预留的tcp地址:复制粘贴官网保留成功的地址

点击更新

c4a70d5304292c09c4a1f40b4c3531f

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新成为了固定TCP地址。

63bdf7def24bfc2c5a8c0a7e361655e

我们仍然重复之前的操作,将原来的随机TCP地址替换为固定TCP地址,一直点击back返回到SSH界面。

Username不变,Host填写刚才使用cpolar生成的固定的公网地址,

Port:生成的固定端口号,点击Check Connection and Continue进行连接

820286d536e0acf17fc69ef6294313a

输入服务器端密码,点击Authenticate

2659bd9e363e9770598132f976ba2f6

可以看到使用cpolar生成的固定的公网地址远程连接服务器端成功

e39fa297fe6b7a3783766c79cc41644

我们已经能够使用永久固定地址来远程操作服务器,这样就可以在任意地点远程使用服务器进行办公,大大提高了工作的效率!

](https://img-home.csdnimg.cn/images/20220524100510.png#pic_center)

](https://img-home.csdnimg.cn/images/20220524100510.png#pic_center)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

PTA L2-041 插松枝 代码附注释

人造松枝加工场的工人需要将各种尺寸的塑料松针插到松枝干上,做成大大小小的松枝。他们的工作流程(并不)是这样的: 每人手边有一只小盒子,初始状态为空。每人面前有用不完的松枝干和一个推送器,每次推送一…

本地项目文件夹创建python文件并配置conda环境的完整流程

1 在Pycharm中创建新项目 位置就是本地的项目文件夹 2 接着打开pycharm的终端 创建conda环境(这个过程需要保证conda.exe能够被系统路径识别) conda create --name my_environment(my_environment取自己想要的环境名字) 还可以指…

(附源码)基于Spring Boot + Vue的校园综合信息服务平台设计与实现

前言 💗博主介绍:✌专注于Java、小程序技术领域和毕业项目实战✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 2024年Java精品实战案例《100套》 🍅文末获取源码联系🍅 &#x1f31…

1.2 编译型语言和解释型语言的区别

编译型语言和解释型语言的区别 通过高级语言编写的源码,我们能够轻松理解,但对于计算机来说,它只认识二进制指令,源码就是天书,根本无法识别。源码要想执行,必须先转换成二进制指令。 所谓二进制指令&…

2024年上半年PETS5考试提醒/北语考前培训班(线上)招

PEST5考试每年进行两次,上半年和下半年各一次。目前尚未公布2024年的报考计划,但可以参考2023年度信息,上半年报名时间:4月11日-4月13日;考试时间:5月20日-5月21日。知识人网小编提醒拟申报者关注报考日期&…

聚焦两会:数字化再加速,VR全景助力制造业转型

近年来,随着信息技术、人工智能、VR虚拟现实等新兴技术的不断涌现,数字化正日益成为推动当今经济发展的新驱动力。在不久前的两会上,数字化经济和创新技术再度成为热门话题: 国务院总理李强作政府工作报告: 要深入推…

2024.3.21 QT

思维导图 自由发挥登录窗口的应用场景,实现一个登录窗口界面。(不要使用课堂上的图片和代码,自己发挥,有利于后面项目的完成) 要求: 1. 需要使用Ui界面文件进行界面设计 2. ui界面上的组件相关设置&…

如何设计一个安全的API接口详解

前言 在日常开发中,总会接触到各种接口。前后端数据传输接口,第三方业务平台接口。一个平台的前后端数据传输接口一般都会在内网环境下通信,而且会使用安全框架,所以安全性可以得到很好的保护。这篇文章重点讨论一下提供给第三方…

【ai技术】(3):树莓派4,成功安装ollama软件,内存4G,推荐使用命令行界面安装,使用raspi-config配置wifi,运行速度飞快

1,关于raspberrypi 4 项目 https://www.bilibili.com/video/BV1K2421P71h/ 【ai技术】(3):树莓派4,成功安装ollama软件,内存4G,安装命令行版本,使用raspi-config配置wifi&#xff0…

MO尺度(大气边界层)

在大气表面层( atmospheric surface layer)中,MO参数是用来决定流动是中性或者非中性的一个重要参数。其定义是 z / L z/L z/L,其中 L L L为Obukhov长度,其含义是浮力产生的湍动能和剪切产生的湍动能之比(Hj h AIP 2023)(Monin IAS,1954),具体…

C++初始化列表

本博客将讲述C初始化列表的相关内容 一.什么是初始化列表 图中红方框框的就是初始化列表 格式为: :成员变量1(参数1),成员变量2(参数2) 编译器会将初始化列表一一转换成代码,并将…

G - Find a way

题目分析 1.双重bfs,遍历两个起点求最短路再计算总和即可 2.唯一的坑点在于对于一个KFC&#xff0c;两人中可能有一个到不了&#xff0c;所以还要对到不了的点距离做处理 #include <bits/stdc.h> using namespace std; using ll long long; const int N 220;struct pos…

英伟达GTC大会看点:Blackwell芯片、推理微服务NIM、人形机器人

北京时间3月19日&#xff0c;英伟达创始人兼首席执行官黄仁勋在美国加州圣何塞SAP中心拉开了GTC大会帷幕&#xff0c;这是时隔5年重回线下的会议&#xff0c;现场吸引了11000多名与会者。大会上黄仁勋演讲了长达120分钟的主题分享《见证AI的变革时刻》&#xff0c;并发布了最新…

如何在edge上安装拓展weTab

1.点解管理拓展 2.点击获取拓展 3.搜索框输入"wetab"并搜索 4.点击获取按钮 5.点击之后跳出弹窗,点击"添加拓展" 6.回到拓展页面,找到wetab拓展,点击右侧启动拓展 7.打开新的界面,wetab已经启动 8.自定义界面 1. 右键图标可以进行删除操作 2.左下角有个设…

Vue3学习记录(七)--- 组合式API之指令和插件

一、内置指令 1、v-memo ​ 该指令是Vue3的v3.2版本之后新增的指令&#xff0c;用于实现组件模板缓存&#xff0c;优化组件更新时的性能。该指令接收一个固定长度的依赖值数组&#xff0c;在组件进行更新渲染时&#xff0c;如果数组中的每个依赖值都与上一次渲染时的值相同&a…

基于SSM的校园失物招领系统设计与实现+数据库+免费远程调试

项目介绍: 基于SSM的校园失物招领系统设计与实现。Javaee项目&#xff0c;采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xff0c;通过Spring SpringMvc Mybatis JspVuelayuiElementui来实现。MySQL数…

Python脚本:用py处理PDF的五大功能

一、代码 【第三方库】3个 【Py版本】3.9 【使用前提】关闭所有的word文档 import os from datetime import datetime from docx2pdf import convert from pdf2docx import parse from PyPDF2 import PdfMerger from PyPDF2 import PdfReader,PdfWriter#将文件夹中的所有Wo…

模板高级使用(非类型模板参数,特化,分离编译)

文章目录 模板没有实例化取内嵌类型报错问题非类型模板参数模板的特化函数模板的特化类模板的特化1.全特化2.偏特化 模板的分离编译 模板没有实例化取内嵌类型报错问题 首先在这里分享一个模板的常见报错问题。就是模板的在没有实例化的情况下去取模板类里面的内嵌类型这时候的…

算法---二分查找

二分查找 1. 简述朴素的二分模板 2. 万能模板原理解释查找左端点查找右端点 查找左边界的二分模板查找右边界的二分模板 1. 简述 二分查找算法是一种在有序数组中查找特定元素的算法。它通过将数组分成两部分&#xff0c;并重复比较目标元素与中间元素的大小关系&#xff0c;从…