Skip to content

内网穿透-中微子

中微子代理官网:https://neutrino-proxy.dromara.org/neutrino-proxy/

服务端

用户名:admin

密码默认为:123456

docker run -d --name neutrino-proxy-server \
--net=host --restart unless-stopped \
-v ~/neutrino-proxy-server/config:/root/neutrino-proxy/config \
-v ~/neutrino-proxy-server/data:/root/neutrino-proxy/data \
-v ~/neutrino-proxy-server/logs:/root/neutrino-proxy/logs \
aoshiguchen/neutrino-proxy-server:latest

服务端配置文件-app.yml

server:
  # 服务端web端口,用于支持HTTP接口,管理后台页面访问
  port: ${WEB_PORT:8888}
# 日志级别
solon.logging.logger:
  "root":
    level: info

neutrino:
  proxy:
    # 隧道相关配置-用于维持服务端与客户端的通信
    tunnel:
      # 线程池相关配置,用于技术调优,可忽略
      boss-thread-count: 2
      work-thread-count: 10
      # 隧道非SSL端口
      port: ${OPEN_PORT:9001}
      # 隧道SSL端口
      ssl-port: ${SSL_PORT:9002}
      # 隧道SSL证书配置
      key-store-password: ${STORE_PASS:123456}
      key-manager-password: ${MGR_PASS:123456}
      jks-path: ${JKS_PATH:classpath:/test.jks}
      # 是否开启隧道传输报文日志(日志级别为debug时开启才有效)
      transfer-log-enable: ${TUNNEL_LOG:false}
      # 是否开启心跳日志
      heartbeat-log-enable: ${HEARTBEAT_LOG:false}
    server:
      tcp:
        # 线程池相关配置,用于技术调优,可忽略
        boss-thread-count: 5
        work-thread-count: 20
        # http代理端口,默认80
        http-proxy-port: ${HTTP_PROXY_PORT:}
        # https代理端口,默认443 (需要配置域名、证书)
        https-proxy-port: ${HTTPS_PROXY_PORT:}
        # 如果不配置,则不支持域名映射
        domain-name: ${DOMAIN_NAME:}
        # https证书配置
        key-store-password: ${HTTPS_STORE_PASS:}
        jks-path: ${HTTPS_JKS_PATH:}
        # 是否开启代理服务报文日志(日志级别为debug时开启才有效)
        transfer-log-enable: ${SERVER_LOG:false}
      udp:
        # 线程池相关配置,用于技术调优,可忽略
        boss-thread-count: 5
        work-thread-count: 20
        # 是否开启代理服务报文日志(日志级别为debug时开启才有效)
        transfer-log-enable: ${SERVER_LOG:false}
  data:
    db:
      # 数据库类型,目前支持h2、mysql、mariadb
      type: mysql
      # 数据库连接URL
      url: jdbc:mysql://localhost:3306/neutrino-proxy?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useAffectedRows=true&useSSL=false
      # 数据库用户名
      username: neutrino
      # 数据库密码
      password: EeQGiS6DENKXAWda

客户端-无配置文件

docker run -d --name neutrino-proxy-client \
--net=host --restart=unless-stopped \
-e TZ="Asia/Shanghai" \
-e SERVER_IP=192.168.0.1 \
-e LICENSE_KEY=85af14ed2a7046d893b142e2b28ff67b \
aoshiguchen/neutrino-proxy-client:latest

客户端-使用配置文件

docker run -d --name neutrino-proxy-client \
--net=host --restart unless-stopped \
-v ~/neutrino-proxy-client/config:/root/neutrino-proxy/config \
-v ~/neutrino-proxy-client/logs:/root/neutrino-proxy/logs \
aoshiguchen/neutrino-proxy-client:latest

客户端配置文件-app.yml

# 日志级别
solon.logging.logger:
  "root":
    level: info

neutrino:
  proxy:
    tunnel:
      # 线程池相关配置,用于技术调优,可忽略
      thread-count: 50
      # 隧道SSL证书配置
      key-store-password: ${STORE_PASS:123456}
      jks-path: ${JKS_PATH:classpath:/test.jks}
      # 服务端IP
      server-ip: 8.130.36.102
      # 服务端端口(对应服务端app.yml中的tunnel.port、tunnel.ssl-port)
      server-port: ${SERVER_PORT:9002}
      # 是否启用SSL(注意:该配置必须和server-port对应上)
      ssl-enable: ${SSL_ENABLE:true}
      # 客户端连接唯一凭证
      license-key: 85af14ed2a7046d893b142e2b28ff67b
      # 客户端唯一身份标识(可忽略,若不设置首次启动会自动生成)
      client-id: ${CLIENT_ID:}
      # 是否开启隧道传输报文日志(日志级别为debug时开启才有效)
      transfer-log-enable: ${CLIENT_LOG:false}
      # 是否开启心跳日志
      heartbeat-log-enable: ${HEARTBEAT_LOG:false}
      # 重连设置
      reconnection:
        # 重连间隔(秒)
        interval-seconds: 10
        # 是否开启无限重连(未开启时,客户端license不合法会自动停止应用,开启了则不会,请谨慎开启)
        unlimited: false
    client:
      udp:
        # 线程池相关配置,用于技术调优,可忽略
        boss-thread-count: 5
        work-thread-count: 20
        # udp傀儡端口范围
        puppet-port-range: 10000-10500
        # 是否开启隧道传输报文日志(日志级别为debug时开启才有效)
        transfer-log-enable: ${CLIENT_LOG:false}