Linux搭建NeutrinoProxy(中微子代理) 内网穿透教程-技术论坛-官方板块-主机吧
Linux搭建NeutrinoProxy(中微子代理) 内网穿透教程-技术论坛-官方板块-主机吧

Linux搭建NeutrinoProxy(中微子代理) 内网穿透教程

中微子代理(neutrino-proxy)是一个基于netty的、开源的java内网穿透项目。

Linux搭建NeutrinoProxy(中微子代理) 内网穿透教程-主机吧

 

开源地址:https://gitee.com/dromara/neutrino-proxy

服务端部署

本文演示为原生部署方式

1、安装包下载

  • 打开发行版页面 (opens new window),下载所需的最新的release包:
  • 比如服务器为linux则可下载neutrino-proxy-server-linux-2.0.1-native.zip文件,客户端为windows则可下载neutrino-proxy-client-windows-2.0.1-native.zip

2、部署服务端

  • 将服务端安装包上传至服务器,并解压
  • 服务端默认使用h2数据库,若需要改为mysql,则可修改安装包app.yml内的数据库配置,如下:
neutrino:
data:
db:
type: mysql
# 自己的数据库实例,创建一个空的名为'neutrino-proxy'的数据库即可,首次启动服务端会自动初始化
url: jdbc:mysql://xxxx:3306/neutrino-proxy?useUnicode=true&allowMultiQueries=true&useAffectedRows=true&useSSL=false
driver-class: com.mysql.jdbc.Driver
# 数据库帐号
username: xxx
# 数据库密码
password: xxx
neutrino:
  data:
    db:
      type: mysql
      # 自己的数据库实例,创建一个空的名为'neutrino-proxy'的数据库即可,首次启动服务端会自动初始化
      url: jdbc:mysql://xxxx:3306/neutrino-proxy?useUnicode=true&allowMultiQueries=true&useAffectedRows=true&useSSL=false
      driver-class: com.mysql.jdbc.Driver
      # 数据库帐号
      username: xxx
      # 数据库密码
      password: xxx
neutrino: data: db: type: mysql # 自己的数据库实例,创建一个空的名为'neutrino-proxy'的数据库即可,首次启动服务端会自动初始化 url: jdbc:mysql://xxxx:3306/neutrino-proxy?useUnicode=true&allowMultiQueries=true&useAffectedRows=true&useSSL=false driver-class: com.mysql.jdbc.Driver # 数据库帐号 username: xxx # 数据库密码 password: xxx

给与执行权限

chmod +x neutrino-proxy-server
chmod +x neutrino-proxy-server
chmod +x neutrino-proxy-server

启动服务端可执行程序即可

./neutrino-proxy-server
./neutrino-proxy-server
./neutrino-proxy-server

客户的部署

  • 本地解压客户端安装包
  • 修改app.yml文件中的server-ip为服务器公网ip,并配置license-key,以下是相关的部分配置:
  • neutrino:
    proxy:
    tunnel:
    # ssl证书密钥(使用jjar包内自带的证书,则此处无需修改)
    key-store-password: 123456
    # ssl证书管理密钥(使用jjar包内自带的证书,则此处无需修改。自定义证书,则此处配置对应的路径)
    jks-path: classpath:/test.jks
    # 代理服务端IP
    server-ip: xxxx
    # 代理服务端IP, 若是非ssl端口,则ssl-enable需要配置为false
    server-port: 9002
    # 是否启用ssl
    ssl-enable: true
    # licenseKey,客户端凭证。此处需要配置刚刚从管理后台复制的LicenseKey
    license-key: xxxx
    neutrino:
      proxy:
        tunnel:
          # ssl证书密钥(使用jjar包内自带的证书,则此处无需修改)
          key-store-password: 123456
          # ssl证书管理密钥(使用jjar包内自带的证书,则此处无需修改。自定义证书,则此处配置对应的路径)
          jks-path: classpath:/test.jks
          # 代理服务端IP
          server-ip: xxxx
          # 代理服务端IP, 若是非ssl端口,则ssl-enable需要配置为false
          server-port: 9002
          # 是否启用ssl
          ssl-enable: true
          # licenseKey,客户端凭证。此处需要配置刚刚从管理后台复制的LicenseKey
          license-key: xxxx
    neutrino: proxy: tunnel: # ssl证书密钥(使用jjar包内自带的证书,则此处无需修改) key-store-password: 123456 # ssl证书管理密钥(使用jjar包内自带的证书,则此处无需修改。自定义证书,则此处配置对应的路径) jks-path: classpath:/test.jks # 代理服务端IP server-ip: xxxx # 代理服务端IP, 若是非ssl端口,则ssl-enable需要配置为false server-port: 9002 # 是否启用ssl ssl-enable: true # licenseKey,客户端凭证。此处需要配置刚刚从管理后台复制的LicenseKey license-key: xxxx

     

给与执行权限

chmod +x neutrino-proxy-client
chmod +x neutrino-proxy-client
chmod +x neutrino-proxy-client

直接启动客户端可执行程序即可

./neutrino-proxy-client
./neutrino-proxy-client
./neutrino-proxy-client

开机自启/守护程序

服务端创建 Systemd 服务文件

sudo vim /etc/systemd/system/neutrino-proxy-server.service
sudo vim /etc/systemd/system/neutrino-proxy-server.service
sudo vim /etc/systemd/system/neutrino-proxy-server.service

填入以下内容(注意修改你的可执行文件实际路径)

[Unit]
Description=Neutrino Proxy Server
After=network.target
[Service]
ExecStart=/root/neiwang/neutrino-proxy-server
Restart=always
User=root
WorkingDirectory=/root/neiwang
[Install]
WantedBy=multi-user.target
[Unit]
Description=Neutrino Proxy Server
After=network.target

[Service]
ExecStart=/root/neiwang/neutrino-proxy-server
Restart=always
User=root
WorkingDirectory=/root/neiwang

[Install]
WantedBy=multi-user.target
[Unit] Description=Neutrino Proxy Server After=network.target [Service] ExecStart=/root/neiwang/neutrino-proxy-server Restart=always User=root WorkingDirectory=/root/neiwang [Install] WantedBy=multi-user.target

服务端创建 Systemd 服务文件

sudo vim /etc/systemd/system/neutrino-proxy-client.service
sudo vim /etc/systemd/system/neutrino-proxy-client.service
sudo vim /etc/systemd/system/neutrino-proxy-client.service

填入以下内容(注意修改你的可执行文件实际路径)

[Unit]
Description=Neutrino Proxy Client
After=network.target
[Service]
ExecStart=/root/neiwang/neutrino-proxy-client
Restart=always
User=root
WorkingDirectory=/root/neiwang
[Install]
WantedBy=multi-user.target
[Unit]
Description=Neutrino Proxy Client
After=network.target

[Service]
ExecStart=/root/neiwang/neutrino-proxy-client
Restart=always
User=root
WorkingDirectory=/root/neiwang

[Install]
WantedBy=multi-user.target
[Unit] Description=Neutrino Proxy Client After=network.target [Service] ExecStart=/root/neiwang/neutrino-proxy-client Restart=always User=root WorkingDirectory=/root/neiwang [Install] WantedBy=multi-user.target

重载 Systemd 配置

sudo systemctl daemon-reload
sudo systemctl daemon-reload
sudo systemctl daemon-reload

启用并启动服务

启用并启动 neutrino-proxy-server 服务:

sudo systemctl enable neutrino-proxy-server
sudo systemctl start neutrino-proxy-server
sudo systemctl enable neutrino-proxy-server
sudo systemctl start neutrino-proxy-server
sudo systemctl enable neutrino-proxy-server sudo systemctl start neutrino-proxy-server

启用并启动 neutrino-proxy-client 服务:

sudo systemctl enable neutrino-proxy-client
sudo systemctl start neutrino-proxy-client
sudo systemctl enable neutrino-proxy-client
sudo systemctl start neutrino-proxy-client
sudo systemctl enable neutrino-proxy-client sudo systemctl start neutrino-proxy-client

检查服务状态

sudo systemctl status neutrino-proxy-server
sudo systemctl status neutrino-proxy-client
sudo systemctl status neutrino-proxy-server
sudo systemctl status neutrino-proxy-client
sudo systemctl status neutrino-proxy-server sudo systemctl status neutrino-proxy-client

这样设置后,两个服务将在系统启动时自动启动,并在出现故障时自动重启。

请登录后发表评论