Neutrino proxy (neutrino-proxy) is a netty-based intranet penetration artifact. This project adopts the most permissive MIT agreement, so you can copy, modify, distribute and use it for any personal or commercial activities.

Screenshot of the server management background:

main feature:

  • 1. Traffic monitoring: multi-dimensional traffic monitoring with charts and reports on the home page. Fully grasp real-time and historical proxy data.
  • 2. User/License: Support multi-user and multi-client use. The background disable takes effect in real time.
  • 3. Port pool: Unified management of external ports, support for exclusive ports by users and licenses.
  • 4. Port mapping: adding, editing, deleting, and disabling will take effect in real time.
  • 5. Docker: The server supports Docker one-click deployment.
  • 6. SSL Certificate: Support SSL to protect your information security.
  • 7. Domain name mapping: support binding sub-domain names, which is convenient for local debugging and three-party callback
  • 8. Adopt the most lenient MIT protocol to avoid your worries

quick use

For more usage posture and details, please add me to the official website or the WeChat QR code at the end to add “Neutrino Agent” to join the group communication.

1. Deploy the server

1.1. Docker one-click deployment

The latest version is 1.8.0, the following script can be used:registry.cn-hangzhou.aliyuncs.com/asgc/neutrino-proxy:1.8.0 Install the specified version, it is recommended to uselatestInstall the latest version directly.

Use the default sqlite database


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:latest

Specify your own mysql database

  • Create a directory on the server: /root/neutrino-proxy/config
  • Create in this directoryapp.ymltext file, and configure the following content:

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: xxx

  • Then execute the following command:

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:latest

1.2. Use the jar package to deploy by yourself

  • First make sure that the java8 runtime environment has been installed on the server
  • OpenRelease pagedownload the latest release package:neutrino-proxy-server.jar,neutrino-proxy-admin.zip
  • Create a new deployment directory on the server:/work/projects/neutrino-proxy-server
  • Willneutrino-proxy-server.jar,neutrino-proxy-admin.zipUpload to the server deployment directory.
  • decompressneutrino-proxy-admin.zipdocument
  • Excuting an orderjava -jar neutrino-proxy-server.jarStart the server to complete the deployment, and use the sqlite database by default.
  • If you need to specify your own mysql database, you also need to create a new one in the current directoryapp.ymlfile, the content of the file is the same as above.Excuting an orderjava -jar neutrino-proxy-server.jar config=app.ymlStart the server to complete the deployment
  • Can refer to https://gitee.com/dromara/neutrino-proxy/blob/master/bin/server_start.sh Start the server using a shell script.

2. Management background configuration

  • After the server is deployed successfully, visithttp://{服务端IP}:8888Open the background management page.
  • Log in with the default administrator account: admin/123456
  • Open代理配置>License管理page, you can see that the system has automatically initialized a License record for the administrator, copy theLicenseKeyBackup, required for subsequent client configuration.
  • Open代理配置>端口映射page, you can see that the system has automatically initialized several port mappings. It can be added and modified as needed.Here we take9101 -> 127.0.0.1:8080Mapping as an example

3. Start the client

  • First make sure that the java8 runtime environment has been installed locally
  • OpenRelease pagedownload the latest release package:neutrino-proxy-client.jar
  • locallyneutrino-proxy-client.jarNewly created under the same level directoryapp.ymlfile and configure the following:

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

  • Excuting an orderjava -jar neutrino-proxy-client.jarstart the client
  • View the server license management, refresh the page, the corresponding online status of the license is在线it indicates that the client is connected normally.

4. Proxy verification

  • Start proxy services locally, such as: redis, local web projects, local mysql, etc.
  • First make sure that the local can access the proxied service normally. If the local cannot access it, it is even more impossible to use the proxy! ! !
  • Access the local proxied service through the server IP+9101 (the port mapped to the server port configured in the license above)

contact us

The author’s time and ability are limited, and open source projects do not happen overnight, and it is inevitable that there will be many problems. If you have any questions during use and learning, please contact me.

If you have any ideas or suggestions for the project, you can add me to WeChat to pull the exchange group, or createissuesimprove the project together

#NeutrinoProxy #Homepage #Documentation #Downloads #Nettybased #Intranet #Penetration #Tool #News Fast Delivery

Leave a Comment

Your email address will not be published. Required fields are marked *