目录
[1. 安装配置GoLand](#1. 安装配置GoLand)
[2. 服务器开启SSH服务](#2. 服务器开启SSH服务)
[3. GoLand本地服务器远程连接测试](#3. GoLand本地服务器远程连接测试)
[4. 安装cpolar内网穿透远程访问服务器端](#4. 安装cpolar内网穿透远程访问服务器端)
[4.1 服务器端安装cpolar](#4.1 服务器端安装cpolar)
[4.2 创建远程连接公网地址](#4.2 创建远程连接公网地址)
[5. 使用固定TCP地址远程开发](#5. 使用固定TCP地址远程开发)
⛳️推荐
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站
本文主要介绍使用GoLand通过SSH远程连接服务器,并结合cpolar内网穿透工具实现远程办公。
GoLand 是由JetBrains 推出的一款专为Go语言开发设计的集成开发环境(IDE)。它集成了多种高级功能,包括但不限于智能代码补全、代码分析和高级调试功能。可以帮助编写Go语言更加便捷,支持各种高级IDE功能和各种Go语言框架。
接下来教大家如何配置GoLand并且远程公司服务器进行编程开发。

1. 安装配置GoLand
GoLand下载地址:https://www.jetbrains.com.cn/go/
进入官网后,点击下载

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

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

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

运行GoLand,选择SSH

点击New Project

2. 服务器开启SSH服务
在服务器端获取IPv4 地址
ip addr show

开启SSH服务,执行
sudo apt-get install openssh-server
启动SSH服务
sudo service ssh start
执行下方命令,active表示已开通
sudo systemctl status sshd

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

点击Check Connection and Continue进行连接
输入服务器端密码,点击Authenticate

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

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

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

我们在本地测试成功,但是我们如果需要长期异地办公,需要结合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 管理界面配置即可

4.2 创建远程连接公网地址
登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理------创建隧道:
- 隧道名称:可自定义,注意不要与已有的隧道名称重复
- 协议:tcp
- 本地地址:22 (本地ssh默认端口)
- 域名类型:临时随机TCP端口
- 地区:选择China Top
点击创建

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

我们点击back回到SSH界面,重新点击New Project。
Username不变,Host填写刚才cpolar生成的公网地址,Port:cpolar生成的公网地址端口号

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

继续输入服务器端密码

连接服务器端成功

小结
为了方便演示,我们在前述过程中使用了Cpolar生成的TCP地址隧道,其公网地址是随机生成的。
这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。
我一般会使用固定TCP域名,原因是我希望每天打开开发工具直接上手工作,无需重新配置TCP地址直接进行开发操作,接下来我教大家如何固定TCP地址:
5. 使用固定TCP地址远程开发
接下来保留一个固定tcp地址,登录cpolar官网,点击左侧的预留,找到保留的tcp地址,为远程服务器连接保留一个固定tcp地址:
- 地区:选择China VIP
- 描述:即备注,可自定义
点击保留

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

修改隧道信息,将保留成功的固定tcp地址配置到隧道中
- 端口类型:修改为固定TCP端口
- 预留的tcp地址:复制粘贴官网保留成功的地址
点击更新

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

我们仍然重复之前的操作,将原来的随机TCP地址替换为固定TCP地址,一直点击back
返回到SSH界面。
Username不变,Host填写刚才使用cpolar生成的固定的公网地址,
Port:生成的固定端口号,点击Check Connection and Continue
进行连接

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

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

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