在IntelliJ IDEA中配置SSH服务器开发环境并实现固定地址远程连接的操作方法

 更新时间:2024年01月12日 11:00:26   作者:小沈YO.  
本文主要介绍如何在IDEA中设置远程连接服务器开发环境,并结合Cpolar内网穿透工具实现无公网远程连接,然后实现远程Linux环境进行开发,本例使用的是IDEA2023.2.5版本,感兴趣的朋友跟随小编一起看看吧

本文主要介绍如何在IDEA中设置远程连接服务器开发环境,并结合Cpolar内网穿透工具实现无公网远程连接,然后实现远程Linux环境进行开发。

IDEA的远程开发功能,可以将本地的编译、构建、调试、运行等工作都放在远程服务器上执行,而本地仅运行客户端软件进行常规的开发操作即可,旧版本IDEA目前不支持该功能,本例使用的是IDEA2023.2.5版本。

Cpolar内网穿透是一种安全的内网穿透云服务,可以将内网下的本地服务器通过安全隧道暴露至公网,使得公网用户可以正常访问内网服务。它支持HTTP、HTTPS、TCP协议端口映射。

1. 检查Linux SSH服务

远程服务器环境主要是使用ssh连接的方式,所以ssh服务需正常运行,这里以centos为例,输入:sudo systemctl status sshd 可以查看状态,active表示正常.

2. 本地连接测试

为了确保公网环境正常连接,首先进行本地连接测试,打开IDEA启动的主界面,点击SSH连接方式,点击New Project

输入用户名和Linux 局域网IP地址,后面端口号默认22端口即可,然后点击右下角连接

出现输入root用户对应的密码,输入密码后点击authenticate

稍等片刻后,出现了选择服务器中包的步骤,可以先在服务器中提前创建好文件夹,本例提前在/usr/local/javaProject创建了一个存放的文件夹,选择后,点击右下角启动连接。

再次提示输入密码验证,输入后点击authenticate

可以看到,成功打开了服务器的开发环境,接下来我们就可以使用Linux服务器环境进行开发了,本地连接测试完成,为了方便下面公网连接,这个本地连接可以先关闭,下面进行在Linux安装cpolar内网穿透工具.

3. Linux 安装Cpolar

上面本地测试完成后,下面我们在Linux安装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. 创建远程连接公网地址

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

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

点击创建

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

5. 公网远程连接测试

打开IDEA主界面,同样我们点击右上角New Project,新建一个连接

然后此时输入的是上面我们创建的cpolar公网地址和对应的公网端口,非局域网IP地址,然后点击右下角连接

出现该提示,点击OK即可

然后提示输入密码,输入后点击authenticate

同样,我们按照本地连接的方式,选择相关项目的文件夹,然后点击右下角启动和连接

接下来会出现再次输入密码进行验证,输入后点击authenticate

这样成功远程到了我们服务器的环境,不管在任意地点,都可以通过cpolar的公网地址进行远程java开发,无需公网IP.

小结

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

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

我一般会使用固定TCP域名,原因是我希望将地址发送给同事或客户时,它是一个固定、易记的公网地址,这样更显正式,便于流交协作。

6. 固定连接公网地址

要注意的是,以上步骤使用的是随机临时tcp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。我们接下来为其配置固定的远程TCP端口地址,该地址不会变化,设置后将无需每天重复修改地址。

配置固定tcp端口地址需要将cpolar升级到专业版套餐或以上。

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

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

点击保留

地址保留成功后,系统会生成相应的固定公网地址,将其复制下来

打开cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们上面创建的TCP隧道,点击右侧的编辑

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

  • 端口类型:修改为固定TCP端口
  • 预留的tcp地址:填写官网保留成功的地址,

点击更新

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

7. 固定地址连接测试

固定好了地址后,打开IDEA,点击SSH,新建一个连接New Project

输入我们设置的固定TCP地址和地址对应的端口,点击右下角连接,点击后会弹出一个提示框,点击OK即可

然后会提示输入密码,输入密码后,选择项目文件夹,点击右下角进行启动连接

然后再次会提示输入密码,输入完成后,我们可以看到成功连接了服务器的开发环境,固定地址测试连接成功。本例所有的配置就完成了,接下来就可以使用固定的公网IP进行远程连接服务器环境进行开发了!

到此这篇关于如何在IntelliJ IDEA中配置SSH服务器开发环境并实现固定地址远程连接的文章就介绍到这了,更多相关idea配置ssh服务器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • IDEA 服务器热部署图文详解(On Update action/On frame deactivation)

    IDEA 服务器热部署图文详解(On Update action/On frame deactivation)

    这篇文章主要介绍了IDEA 服务器热部署详解(On Update action/On frame deactivation),本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • Java静态代码块作用及执行顺序解析

    Java静态代码块作用及执行顺序解析

    这篇文章主要介绍了Java静态代码块作用及执行顺序解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • Java JDK的多版本共存实现方法

    Java JDK的多版本共存实现方法

    有时候系统中需要多个jdk版本共存,我们在做特定的操作时需要特定的版本,这篇文章主要给大家介绍了关于Java JDK的多版本共存实现 的相关资料,需要的朋友可以参考下
    2023-09-09
  • logback日志输出格式设置方式

    logback日志输出格式设置方式

    这篇文章主要介绍了logback日志输出格式设置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • java equals函数用法详解

    java equals函数用法详解

    java 中equals函数的使用方法是广大java爱好者所关心的一个话题,本文将详细介绍其使用方法,需要了解的朋友可以参考下
    2012-11-11
  • Java实现冒泡排序

    Java实现冒泡排序

    这篇文章主要为大家详细介绍了Java实现冒泡排序,把一列数组按从小到大或从大到小排序,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • 用Java实现24点游戏

    用Java实现24点游戏

    喜欢玩游戏的有福啦,文中有非常详细的开发框架,按着框架来实现就好啦.而且24点游戏是经典的纸牌益智游戏.,需要的朋友可以参考下
    2021-05-05
  • SpringBoot详细探究讲解默认组件扫描

    SpringBoot详细探究讲解默认组件扫描

    在项目中我们创建了Controller,这个Controller是如何被spring自动加载的呢?为什么Controller必须放在启动类的同级目录下呢
    2022-06-06
  • Spring boot 4 搞懂MyBatis-Plus的用法解析

    Spring boot 4 搞懂MyBatis-Plus的用法解析

    MyBatis-Plus是MyBatis的增强工具,提供了CRUD操作和自动填充等功能,通过继承BaseMapper接口,可以快速实现数据库操作,MyBatis-Plus提供了多种插件,如分页、乐观锁、多租户等,以增强系统的功能和性能,本文介绍Spring boot 4 搞懂MyBatis-Plus的用法,感兴趣的朋友一起看看吧
    2026-01-01
  • 详解Java volatile 内存屏障底层原理语义

    详解Java volatile 内存屏障底层原理语义

    为了保证内存可见性,java 编译器在生成指令序列的适当位置会插入内存屏障指令来禁止特定类型的处理器重排序。为了实现 volatile 内存语义,JMM 会分别限制这两种类型的重排序类型
    2021-09-09

最新评论