selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

NetsGo logo

Self-host NetsGo

v0.1.17

Intranet tunneling platform with built-in web console

BetaOpen SourceApache-2.0
Updated3 weeks ago
LanguageGo
Setup difficultyModerate
Stars
245
Port
9527 (Web console, API, client control channel, and data channel)
Docker
zsio/netsgo
Install with Docker Compose
NetsGo Web console overview showing dashboard with client status and tunnels

What is NetsGo?

NetsGo packages a web dashboard, REST API, client access, and network tunnels into one executable. It lets you publish private web services, remote shell access, databases, game servers, and additional TCP or UDP services from behind NAT or firewalls. The server runs on a public host while clients connect from internal networks using a generated key. Tunnels are created and managed through the web console, supporting HTTP with custom domains, TCP, UDP, and client-to-client topologies. Deployment options include Docker Compose, a Linux systemd service via an install script, or running the binary directly. The default console port is 9527, with additional ports mapped for TCP and UDP tunnels as needed. Authentication uses an admin username and password for the console plus client keys for node connections. The project is licensed under Apache-2.0 and written in Go with a React frontend.

Should you self-host NetsGo?

NetsGo scores 46/100 on selfhost.directory (how scoring works) and ranks #23 of 31 in Networking. It has 245 GitHub stars.

It shipped 2 stable releases in the past year. The latest, v0.1.17, came out on 7 September 2026. New versions land roughly every 3 weeks.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is Apache-2.0-licensed and written mostly in Go.

Its closest alternative on selfhost.directory is Webhook.site (66/100, 6 786 stars). It scores higher overall, so compare the two before you pick. See NetsGo vs Webhook.site side by side.

Features

  • Activity timelineAdded in v0.1.16
  • Auto Reconnect
  • Client Management
  • Client-to-Client Tunnels
  • HTTP Tunnels
  • Multi-user supportAdded in v0.1.16
  • Rate Limiting
  • REST API
  • Single Port Access
  • TCP Tunnels
  • Traffic statistics
  • Tunnel CRUD via Web/API
  • UDP Tunnels
  • Web Console

NetsGo README

How to install NetsGo

Install NetsGo with Docker Compose

Environment variables
NETSGO_DATA_DIR, NETSGO_INIT_ADMIN_USERNAME, NETSGO_INIT_ADMIN_PASSWORD, NETSGO_INIT_SERVER_ADDR

services: netsgo-server: image: zsio/netsgo:latest # China users can use docker.cnb.cool/zsio/netsgo:latest restart: unless-stopped ports: - "9527:9527" # Map extra public ports for TCP/UDP tunnels when needed: # - "10000:10000/tcp" # - "10001:10001/udp" environment: NETSGO_DATA_DIR: "/var/lib/netsgo" NETSGO_INIT_ADMIN_USERNAME: "admin" NETSGO_INIT_ADMIN_PASSWORD: "" NETSGO_INIT_SERVER_ADDR: "https://netsgo.example.com" volumes: - netsgo-data:/var/lib/netsgo

volumes: netsgo-data:

For server. Client uses similar compose with command: ["client"]

How to configure NetsGo

  • NETSGO_DATA_DIR/var/lib/netsgoData root directory

    Data root directory

  • NETSGO_INIT_ADMIN_PASSWORDInitial admin password

    Initial admin password

  • NETSGO_INIT_ADMIN_USERNAMEInitial admin username

    Initial admin username

  • NETSGO_INIT_SERVER_ADDRInitial server address

    Initial server address

  • NETSGO_KEYClient key

    Client key

  • NETSGO_LOG_FORMATLog format: text or json

    Log format: text or json

    values: text, json

  • NETSGO_PORT9527Server listen port

    Server listen port

  • NETSGO_SERVERServer address

    Server address

  • NETSGO_SERVER_ADDRForce the external server address

    Force the external server address

  • NETSGO_TLS_CERTCustom certificate path

    Custom certificate path

  • NETSGO_TLS_FINGERPRINTServer certificate SHA-256 fingerprint

    Server certificate SHA-256 fingerprint

  • NETSGO_TLS_KEYCustom private key path

    Custom private key path

  • NETSGO_TLS_MODETLS mode: off, auto, or custom

    TLS mode: off, auto, or custom

    values: off, auto, custom

  • NETSGO_TLS_SKIP_VERIFYSkip TLS verification, testing only

    Skip TLS verification, testing only

  • NETSGO_TRUSTED_PROXIESTrusted reverse proxy CIDRs

    Trusted reverse proxy CIDRs

NetsGo releases & version history

More in Proxy

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…