从局域网到全球访问:GoLand+cpolar 让开发协作无距离

文章目录

    • 前言
    • [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 作为 Go 语言开发工具,能提供精准的代码建议和实时错误提示,还支持 SSH 远程连接服务器,方便直接在 IDE 里操作远程文件。

作为经常需要远程调试的开发者,我觉得 GoLand 的界面简洁直观,远程编辑文件时同步速度很快,用起来很顺手。

以前受限于局域网,只能在公司或家里固定网络下使用 GoLand 连接服务器,出差时想改代码都不行。用了 cpolar 后,随时随地都能通过公网地址连接,在高铁上也能紧急处理代码问题,和客户远程联调时直接分享公网链接就能协同测试,工作效率提高了不少。

本文主要介绍使用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 地址

shell 复制代码
ip addr show

开启SSH服务,执行

shell 复制代码
sudo apt-get install openssh-server

启动SSH服务

shell 复制代码
sudo service ssh start

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

shell 复制代码
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

  • 使用一键脚本安装命令
shell 复制代码
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务
shell 复制代码
sudo systemctl enable cpolar
  • 启动cpolar服务
shell 复制代码
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生成的固定的公网地址远程连接服务器端成功

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

GoLand 结合 cpolar,解决了远程开发的网络限制,让开发工作摆脱地域束缚,为灵活办公提供了实用的解决方案。

相关推荐
孔令飞18 小时前
1024程序员节,OneX平台送3套免费Go实战项目
云原生·go·ai编程
我不会起名字3221 天前
gRPC 拦截器写错:metadata 透传与超时注入的 3 个坑
微服务·go·grpc·拦截器
用户4015823324622 天前
对话一长,AI 就忘了你说过的话?Claude Code、Codex、Aider、WES Code 怎么压缩上下文
人工智能·go·ai编程
我的div丢了肿么办2 天前
go语言抽离路由文件以及对路由进行分组
后端·go
cpolar技术支持2 天前
磁盘明明没满,服务却写不进去?做个 inode 与分区占用只读报表页,cpolar 给异地同事看
linux·内网穿透·cpolar·inode·运维排障
孔令飞2 天前
【OneX】OneX AI 工具安装、配置及功能介绍
云原生·go·ai编程
小满zs2 天前
Go语言第十四章(文件操作)
后端·go
vipxieliang2 天前
Go 1.24 工具链改进实战:工具依赖管理与 go vet 新分析器
后端·go
程序员爱钓鱼2 天前
Go 编程实战:Benchmark——基准测试、testing.B、benchmem、性能对比与代码优化实战
go·排序算法
Thinker QAQ3 天前
并发编程(十一):Shared Memory 与 Message Passing——关系与组合使用
java·python·go·并发编程·shared memory·message passing