基于Netty的开源内网穿透工具
每天给大家带来网站工具、安卓软件、iOS软件等黑科技!如果你们有什么好的建议,也可以在后台留言。创作不易,希望大家给一点鼓励,把公众号设置为"星标",点下文章"在看",谢谢大家!目前佛系更新,望多多支持~
🕵️软件简介
中微子代理(neutrino-proxy)是一个基于netty的、开源的Java内网穿透项目。
技术栈:Solon、MybatisPlus、Netty
遵循MIT许可,因此您可以对它进行复制、修改、传播并用于任何个人或商业行为。
✨软件优势
流量监控:首页图表、报表管理多维度流量监控,全方位掌握实时、历史代理数据。
域名映射:支持绑定子域名,方便本地调试三方回调
用户/License:支持多用户、多客户端使用。后台禁用实时生效。
端口池:对外端口统一管理,支持用户、License独占端口。
端口映射:新增、编辑、删除、禁用实时生效。
Docker:服务端支持Docker一键部署。
隧道SSL加密:隧道通信支持SSL,保护您的数据安全。
HTTPS:支持HTTPS
采用最为宽松的MIT协议,免去你的后顾之忧
可进行复制、修改、传播并用于任何个人或商业行为
🧬名字由来
因此以中微子命名,寓意着中微子代理拥有中微子"安全"、"快速"、"穿透力强"的特点。
🍪代理示意图
🚚项目体验
license管理
端口映射
端口池管理
用户管理
🚀️安装部署
1、安装服务端
使用jar包自行部署
首先确保服务器上已安装java8运行环境
打开发行版页面(opens new window),下载最新的release包:
neutrino-proxy-server.jar
neutrino-proxy-admin.zip
在服务器上新建部署目录:
/work/projects/neutrino-proxy-server
将
neutrino-proxy-server.jar
neutrino-proxy-admin.zip
上传至服务器部署目录。
解压
neutrino-proxy-admin.zip
文件执行命令
java -Dfile.encoding=utf-8 -jar neutrino-proxy-server.jar
启动服务端完成部署,默认使用sqlite数据库。
若需要指定自己的mysql数据库,同样的需要在当前目录下新建
app.yml
文件,文件内容同上。执行命令java -Dfile.encoding=utf-8 -jar neutrino-proxy-server.jar config=app.yml
启动服务端完成部署
可参照
https://gitee.com/dromara/neutrino-proxy/blob/master/scripts/unix/server_start.sh
使用shell脚本启动服务端。
2、管理后台配置
服务端部署成功后,访问
http://{服务端IP}:8888
打开后台管理页面。使用默认的管理员帐号登录:admin/123456
打开
代理配置>License管理
页面,可以看到系统已经自动为管理员初始化了一条License记录,复制该LicenseKey
备用,后续客户端配置需要。打开 代理配置>端口映射
页面,可以看到系统已经自动为初始化了几条端口映射。可根据需要自行添加、修改。这里我们以9101 -> 127.0.0.1:8080
映射为例
3、启动客户端
首先确保本地已安装java8运行环境
打开发行版页面(opens new window),下载最新的release包:
neutrino-proxy-client.jar
在本地
neutrino-proxy-client.jar
同级别目录下新建app.yml
文件,并配置如下内容:
neutrino:
proxy:
client:
# ssl证书密钥(使用jjar包内自带的证书,则此处无需修改)
key-store-password: 123456
# ssl证书管理密钥(使用jjar包内自带的证书,则此处无需修改。自定义证书,则此处配置对应的路径)
jks-path: classpath:/test.jks
# 代理服务端IP
server-ip: localhost
# 代理服务端IP, 若是非ssl端口,则ssl-enable需要配置为false
server-port: 9002
# 是否启用ssl
ssl-enable: true
# licenseKey,客户端凭证。此处需要配置刚刚从管理后台复制的LicenseKey
license-key: xxxx
执行命令
java -jar neutrino-proxy-client.jar config=app.yml
启动客户端
查看服务端License管理,刷新页面,对应的License在线状态为
在线
,则表明客户端已正常连接
4、代理验证
本地启动被代理服务,如:redis、本地web项目、本地mysql等等
先确保本地能正常访问被代理服务,如果本地都不能访问,不用想代理更不可能!!!
通过服务端IP+9101(上面License配置的端口映射重的服务端端口)访问本地被代理服务
访问成功,至此首次完整的内网穿透体验完成。
官网及安装手册:
官网:https://neutrino-proxy.dromara.org
项目开源地址:https://dromara.gitee.io/neutrino-proxy
安装手册:https://dromara.gitee.io/neutrino-proxy/pages/793dcb/
最后附上演示环境
可使用分配好的游客license试用。服务器带宽较低,仅供学习使用!
管理后台地址:http://103.163.47.16:9527
游客账号:visitor/123456
👨🎓聊一聊
公众号推送改版,务必点击【爱编程爱技术】右上角【设为星标🌟】,这样才不会错过推送。
如果侵犯了您的权益,请点击菜单栏联系公众号,一经核实,我们会在最短的时间内删除!感谢理解!
点点关注不迷路
推荐阅读: