IDEA通过内网穿透实现固定公网地址远程SSH连接本地Linux服务器

简介: IDEA通过内网穿透实现固定公网地址远程SSH连接本地Linux服务器

本文主要介绍如何在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进行远程连接服务器环境进行开发了!



相关文章
|
15天前
|
安全 Linux 调度
在Linux中,如何实现,每星期天早8点服务器定时重启?
在Linux中,如何实现,每星期天早8点服务器定时重启?
|
15天前
|
网络协议 Linux Docker
在Linux中,如何指定dns服务器,来解析某个域名?
在Linux中,如何指定dns服务器,来解析某个域名?
|
10天前
|
Linux
Linux 服务器下载百度网盘文件
本教程指导如何使用 `bypy` 库从百度网盘下载文件。首先通过 `pip install bypy` 安装库,接着运行 `bypy info` 获取登录链接并完成授权,最后将文件置于指定目录并通过 `bypy downdir /Ziya-13b-v1` 命令下载至本地。
17 1
Linux 服务器下载百度网盘文件
|
2天前
|
存储 安全 Linux
离线Linux服务器环境搭建
【9月更文挑战第3天】在离线环境下搭建Linux服务器需按以下步骤进行:首先确定服务器用途及需求,准备安装介质与所需软件包;接着安装Linux系统并配置网络;然后设置系统基础参数,如主机名与时区;安装必要软件并配置服务;最后进行安全设置,包括关闭非必要服务、配置防火墙、强化用户认证及定期备份数据。整个过程需确保软件包的完整性和兼容性。
|
4天前
|
存储 监控 Linux
监控Linux服务器
详细介绍了如何监控Linux服务器,包括监控CPU、内存、磁盘存储和带宽的使用情况,以及使用各种系统监控工具如vmstat、iostat、sar、top和dstat来分析系统性能,并推荐了一些开源监控系统。
16 0
监控Linux服务器
|
10天前
|
Shell Linux Perl
linux服务器自动生成本地快照
【8月更文挑战第28天】本文介绍了在Linux服务器上通过两种常见方式创建本地快照的方法:Btrfs文件系统与LVM。Btrfs原生支持快照功能,操作简单快捷;LVM则提供了灵活的逻辑卷管理,可在不影响原始数据的情况下创建快照。文章详细列出了创建、查看、挂载及清理快照的具体步骤,并提供了一个自动化的Shell脚本示例,便于用户根据需求定期创建快照并清理过期快照。
14 3
|
15天前
|
监控 数据挖掘 Linux
Linux服务器PBS任务队列作业提交脚本的使用方法
【8月更文挑战第21天】在Linux服务器环境中,PBS任务队列能高效管理及调度计算任务。首先需理解基本概念:作业是在服务器上执行的任务;队列则是等待执行任务的列表,具有不同的资源限制与优先级;节点指分配给作业的计算资源。
|
15天前
|
Ubuntu Linux 测试技术
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
|
15天前
|
负载均衡 网络协议 Linux
在Linux中,常用WEB服务器负载架构有哪些?
在Linux中,常用WEB服务器负载架构有哪些?
|
15天前
|
安全 Linux 文件存储
在Linux中,服务器开不了机怎么解决⼀步步的排查?
在Linux中,服务器开不了机怎么解决⼀步步的排查?
下一篇
DDNS