安装脚本为交互式,需按提示选择初始化 Server 还是 Client;TCP/UDP 隧道在需要时会额外占用端口,防火墙不能只放行单端口;更多文档在官网 netsgo.zs.uy,README 未覆盖全部配置项
curl -fsSL https://netsgo.zs.uy/install.sh | shREADME 未说明
自托管内网穿透与节点管理平台,单文件部署,自带 Web 控制台统一管节点和隧道
开箱即用的自托管内网穿透与节点管理平台,用 Go 写成单文件二进制,自带 Web 面板,帮你把内网服务安全地暴露到公网。
核心能力
- 单个二进制同时提供 server 与 client 两种运行模式
- Web 控制台、控制通道和数据通道共用同一端口入口
- 内置 REST API,可通过接口增删改查隧道
- 内置节点在线状态与流量统计,无需外部监控
- 支持 HTTP、TCP、UDP 隧道并断线自动重连
容易踩的坑
- v0.1.18-beta.1pre-release2026-09-10 · 2026-09-10 04:39 UTC
查看更新说明
Quick Install / Upgrade
One-line install:
curl -fsSL https://netsgo.zs.uy/install.sh | sh -s -- --channel betaOne-line upgrade:
curl -fsSL https://netsgo.zs.uy/upgrade.sh | sh -s -- -y --channel betaWindows / macOS clients: Desktop installers are no longer published with releases; run the NetsGo client with Docker instead (image:
zsio/netsgo:0.1.18-beta.1).Changelog
- 9aca086de6d60a2d8afd3f6de49eab23fbf0cba6 Merge branch 'main' into feature/http-wildcard-domains
- e189cf1258c403351cf49d15b40cf496566ca100 Merge pull request #90 from zsio/feature/http-wildcard-domains
- d99652d825b4c264748811e8256c0913fd990222 feat: support bounded HTTP wildcard domains with durable ownership
- be73bc49e6579a4af4e6a2b9b4e91a0d79dabf04 fix(deps): bump golang.org/x/crypto to v0.55.0 for CVE-2026-56854 (#91)
- v0.1.17最新正式版2026-09-07 · 2026-09-07 15:28 UTC
Quick Install / Upgrade
One-line install:
curl -fsSL https://netsgo.zs.uy/install.sh | shOne-line upgrade:
curl -fsSL https://netsgo.zs.uy/upgrade.sh | sh -s -- -yWindows / macOS clients: Desktop installers are no longer published with releases; run the NetsGo client with Docker instead (image:
zsio/netsgo:0.1.17).Changelog
- eed96c56a02e1ba17694478bf8089aefbfcb4d51 Merge pull request #89 from zsio/feature/webhook-form-variables
- 0fb3c010e0a6ab83cf2ef2a84b107c14e0d8aa34 fix(webhook): refine form events and variables
- c3664ca39f9f7b67ab1e6477e5aaa644b1168588 test(client): wait for auth before server pushes
- v0.1.17-beta.6pre-release2026-09-04 · 2026-09-04 07:39 UTC
查看更新说明
Quick Install / Upgrade
One-line install:
curl -fsSL https://netsgo.zs.uy/install.sh | sh -s -- --channel betaOne-line upgrade:
curl -fsSL https://netsgo.zs.uy/upgrade.sh | sh -s -- -y --channel betaWindows / macOS clients: Desktop installers are no longer published with releases; run the NetsGo client with Docker instead (image:
zsio/netsgo:0.1.17-beta.6).Changelog
- eed96c56a02e1ba17694478bf8089aefbfcb4d51 Merge pull request #89 from zsio/feature/webhook-form-variables
- 0fb3c010e0a6ab83cf2ef2a84b107c14e0d8aa34 fix(webhook): refine form events and variables
- c3664ca39f9f7b67ab1e6477e5aaa644b1168588 test(client): wait for auth before server pushes
- v0.1.17-beta.5pre-release2026-08-30 · 2026-08-30 13:38 UTC
查看更新说明
Quick Install / Upgrade
One-line install:
curl -fsSL https://netsgo.zs.uy/install.sh | sh -s -- --channel betaOne-line upgrade:
curl -fsSL https://netsgo.zs.uy/upgrade.sh | sh -s -- -y --channel betaWindows / macOS clients: Desktop installers are no longer published with releases; run the NetsGo client with Docker instead (image:
zsio/netsgo:0.1.17-beta.5).Changelog
- 4067a0fb57b7931e85e38176b11eaf185a53c7f2 Merge pull request #87 from zsio/feature/webhook-page-title
- b32f023c85710b7edbacc0307f3c355c15bb81ce Merge pull request #88 from zsio/fix/legacy-dispatch-test-timeouts
- 0161824b2e2429c3190d6d30b71b643d6b5dca68 chore(web): drop the Outbound prefix from the webhooks page title
- c37edaabd8d33063ad7cf25dcf6e752bd1be6e3a fix(client): widen legacy dispatch test waits for loaded CI runners
- v0.1.17-beta.3pre-release2026-08-30 · 2026-08-30 10:07 UTC
查看更新说明
Quick Install / Upgrade
One-line install:
curl -fsSL https://netsgo.zs.uy/install.sh | sh -s -- --channel betaOne-line upgrade:
curl -fsSL https://netsgo.zs.uy/upgrade.sh | sh -s -- -y --channel betaWindows / macOS clients: Desktop installers are no longer published with releases; run the NetsGo client with Docker instead (image:
zsio/netsgo:0.1.17-beta.3).Changelog
- 1ca809ac07d1962d5c9f118c78d5847625279f5b Merge pull request #85 from zsio/feature/webhook-language-variables
- c4d406998e199e01259b33759e5c58a797c4ad3a feat(server): add per-language webhook template variables
- 3e5f99abc99626384b6e76f46186424aae03296a feat(web): pick and copy localized webhook variables
- 4da45d832f7244cbdb0c1db1cf8b696205dbfe8d fix(web): fall back to execCommand when clipboard write is denied
- d16a6d38e401acf7b4a137e0c91a1842a7ee0e0d refactor(web): restyle webhooks page as animated list card
- 79087768836a98745ee7495a72fe450e3965e337 test(e2e): assert copy-variable interaction in webhook delivery spec
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
NetsGo is an out-of-the-box intranet tunneling and node management platform. It combines the Web console, REST API, client access, and low-level network tunnels into a single-file binary, making deployment simpler, access more unified, and operations easier. You can use it to remotely access services inside private networks, or to centrally manage remote nodes distributed across different locations.
Contents
Preview
Quick Start
For more documentation and usage guides, visit the official website: https://netsgo.zs.uy.
One-line install
curl -fsSL https://netsgo.zs.uy/install.sh | sh
One-line upgrade
curl -fsSL https://netsgo.zs.uy/upgrade.sh | sh -s -- -y
After installation, follow the interactive prompts to initialize a Server or Client. Once the Client is online, you can create and manage tunnels in the Web console.
Why NetsGo
If you want to start the server quickly, connect private-network machines, and then create tunnels, NetsGo focuses on exactly that:
- One binary is enough: run
./netsgo serverto start the server, and./netsgo clientto connect a remote node. - One port is enough: the Web console, control channel, and data channel share the same entry point, so firewalls and reverse proxies only need one shared access path. TCP/UDP tunnels use additional ports only when needed.
- A console is included by default: after a client connects, manage nodes, inspect status, and configure tunnels directly in the Web console.
How It Differs From Common Alternatives
This table is a capability checklist, not a ranking. Cells intentionally use short labels:
Built-in: included in the product itselfPlatform: provided by a hosted platformPlugin: commonly implemented through a plugin or panelConfig: mainly handled through config files or commandsExternal: typically requires third-party monitoring, logging, or operations systems
| Item | NetsGo | frp | ngrok | cloudflared | rathole |
|---|---|---|---|---|---|
| Product focus | Self-hosted management platform | Self-hosted tunneling tool | Hosted platform | Cloudflare tunnel | Self-hosted lightweight tunnel |
| Self-hosted server | ✅ | ✅ | ❌ | Platform | ✅ |
| Web UI | Built-in | Built-in/plugin | Platform | Platform | External |
| API / automation | Built-in REST | Supported/plugin | Platform | Platform | Config |
| Client management | Built-in | Config/plugin | Platform | Platform | Config |
| Tunnel CRUD | Web/API | Config/plugin | Platform | Platform | Config |
| Shared Web/API/client entry | ✅ | Multiple entries | Platform | Platform | Config |
| HTTP tunnel | ✅ | ✅ | ✅ | ✅ | TCP-backed |
| TCP tunnel | ✅ | ✅ | ✅ | ✅ | ✅ |
| UDP tunnel | ✅ | ✅ | Plan/scenario-dependent | Scenario-dependent | ✅ |
| Login / key | Admin + Key | Token/OIDC | Account/Token | Account/policy | Token |
| Online status | Built-in | Built-in/plugin | Platform | Platform | Logs/external |
| Traffic statistics | Built-in | Built-in/plugin | Platform | Platform | External |
| Reconnect after disconnect | ✅ | ✅ | ✅ | ✅ | ✅ |
| Rate limiting | Built-in | Built-in | Platform/plan | Platform policy | External |
Usage Guidance
- NetsGo: for scenarios where you want to manage clients, tunnels, status, and traffic in one self-hosted Web console.
- frp / rathole: for configuration-driven, lightweight deployments where you compose your own operations tooling.
- ngrok / cloudflared: for hosted-platform scenarios where you want to use platform accounts and edge network capabilities directly.
License
First published on the linux.do forum.