97 Star 1.5K Fork 435

dromara / neutrino-proxy

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
快速使用.MD 4.18 KB
一键复制 编辑 原始数据 按行查看 历史
傲世孤尘 提交于 2023-03-29 12:35 . 更新docker部署命令

1、部署服务端

1.1、Docker一键部署

使用默认sqlite数据库

docker run -it -p 9000-9200:9000-9200/tcp -p 8888:8888 \
-d --restart=always --name neutrino-proxy \
registry.cn-hangzhou.aliyuncs.com/asgc/neutrino-proxy:1.7.1

指定自己的mysql数据库

  • 在服务器上创建目录:/root/neutrino-proxy/config
  • 在该目录下创建app.yml文本文件,并配置如下内容:
neutrino:
  data:
    db:
      type: mysql
      # 自己的数据库实例,创建一个空的名为'neutrino-proxy'的数据库即可,首次启动服务端会自动初始化
      url: jdbc:mysql://xxxx:3306/neutrino-proxy?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useAffectedRows=true&useSSL=false
      driver-class: com.mysql.jdbc.Driver
      # 数据库帐号
      username: xxx
      # 数据库密码
      password: wHCvf3@hmw^D*
  • 然后执行如下命令:
docker run -it -p 9000-9200:9000-9200/tcp -p 8888:8888 \
-v /root/neutrino-proxy/config:/root/neutrino-proxy/config \
-d --restart=always --name neutrino \
registry.cn-hangzhou.aliyuncs.com/asgc/neutrino-proxy:1.7.1

1.2、使用jar包自行部署

  • 首先确保服务器上已安装java8运行环境
  • 打开发行版页面,下载最新的release包:neutrino-proxy-server.jarneutrino-proxy-admin.zip
  • 在服务器上新建部署目录:/work/projects/neutrino-proxy-server
  • neutrino-proxy-server.jarneutrino-proxy-admin.zip上传至服务器部署目录。
  • 解压neutrino-proxy-admin.zip文件
  • 执行命令java -jar neutrino-proxy-server.jar启动服务端完成部署,默认使用sqlite数据库。
  • 若需要指定自己的mysql数据库,同样的需要在当前目录下新建app.yml文件,文件内容同上。执行命令java -jar neutrino-proxy-server.jar config=app.yml启动服务端完成部署
  • 可参照 https://gitee.com/dromara/neutrino-proxy/blob/master/bin/server_start.sh 使用shell脚本启动服务端。

2、管理后台配置

  • 服务端部署成功后,访问http://{服务端IP}:8888打开后台管理页面。
  • 使用默认的管理员帐号登录:admin/123456
  • 打开代理配置>License管理页面,可以看到系统已经自动为管理员初始化了一条License记录,复制该LicenseKey备用,后续客户端配置需要。
  • 打开代理配置>端口映射页面,可以看到系统已经自动为初始化了几条端口映射。可根据需要自行添加、修改。这里我们以9101 -> 127.0.0.1:8080映射为例

3、启动客户端

  • 首先确保本地已安装java8运行环境
  • 打开发行版页面,下载最新的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启动客户端
  • 查看服务端License管理,刷新页面,对应的License在线状态为在线,则表明客户端已正常连接。

4、代理验证

  • 本地启动被代理服务,如:redis、本地web项目、本地mysql等等
  • 先确保本地能正常访问被代理服务,如果本地都不能访问,不用想代理更不可能!!!
  • 通过服务端IP+9101(上面License配置的端口映射重的服务端端口)访问本地被代理服务

访问成功,至此首次完整的内网穿透体验完成。开源不易,请速至Gitee仓库一键三连🤝

Java
1
https://gitee.com/dromara/neutrino-proxy.git
git@gitee.com:dromara/neutrino-proxy.git
dromara
neutrino-proxy
neutrino-proxy
master

搜索帮助