前言
本地搭建了一个Tomcat服务端,只能在局域网内访问,想要在外网上访问到本地的Tomcat,要如何实现呢?
只需要做简单的内网穿透,将内网端口映射到公网上,会生成相应的公网地址,在外网环境下,访问该公网地址就可以访问到内网Tomcat项目。不需要公网IP,也不需要进入到路由器设置,在本地安装个内网穿透工具就可以。
下面推荐一款内网穿透工具,免费or付费使用,均支持http/https/tcp协议,不限制流量,可以根据实际需求选择:
- 免费套餐,有4条隧道可以用,1M带宽,随机公网地址,每24小时会变化
- 付费套餐,至少8条隧道,2M/3M/10M,支持配置固定地址,可自定义域名….
1. 注册安装cpolar客户端
- cpolar地址:https://www.cpolar.com/
1.1 windows系统
直接下载客户端到本地,解压后双击安装包一路默认安装即可。
1.2 linux系统(支持一键自动安装脚本)
- cpolar 安装(国内使用)
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- 或 cpolar短链接安装方式:(国外使用)
curl -sL https://git.io/cpolar | sudo bash
- 查看版本号,显示3.2.88.22
cpolar version
- token认证
登录后台,查看自己的认证token,之后将token贴在命令行里
cpolar authtoken xxxxxxx
- 简单穿透测试,正常生成公网地址
cpolar http 8080
按ctrl+c退出
- 向系统添加服务
sudo systemctl enable cpolar
- 启动cpolar服务
sudo systemctl start cpolar
- 查看服务状态,正常显示为
active
sudo systemctl status cpolar
2. 创建隧道映射本地端口
浏览器访问:http://localhost:9200/,登录cpolar web UI管理界面。
仪表盘——隧道管理——创建隧道,创建隧道映射8080端口(Tomcat默认端口号为8080),http协议。
- 隧道名称:自定义
- 协议:http*
- 本地地址:8080(输入所要映射的本地端口号,Tomcat默认端口号为8080)
- 域名类型:免费使用选择随机,付费套餐用户可配置固定的二级子域名,或者自定义域名
- 地区:选择合适的
3. 获取所生成公网地址
在仪表盘——状态——在线隧道列表,就可以获取到所映射的公网地址,在外网访问该公网地址,进而远程访问到内网的Tomcat项目,而无需公网IP。
需要注意的是,使用免费的cpolar所生成的公网地址为随机临时地址,24小时内会发生变化,对于日常测试开发完全足够,但是如果需要长期访问,建议为其配置固定的公网地址,同时提高带宽,实现更为流畅的访问。