SSTEALTHNETSOFTWARE
open source · runs on your own server

A panel for people
who sell VPN

Nodes, subscriptions, plans, payments and a Telegram bot in one place. Nothing leaves your machines: the panel, the database and the subscription service all run on your own hardware.

Quick start Source code

Rust and PostgreSQL. One command to install, one to attach a node.

What you get

Not a checklist — the things you actually end up using every day.

Nodes

The agent keeps in touch with the panel, applies the profile and reports traffic, who is online and how loaded the box is. Attaching a node is one command; geo databases keep themselves up to date.

Protocols

VLESS, VMess, Trojan, Shadowsocks 2022, Hysteria2. Transports: Reality, WebSocket, gRPC, XHTTP, HTTPUpgrade, mKCP. Eleven ready-made configuration presets.

Subscriptions

Xray JSON, Clash, sing-box, base64 — the format follows the client's app. The subscription service moves to its own domain, so blocking the panel does not cut people off.

Payments

Plans with periods, promo codes, an affiliate programme, auto-renewal. Payment providers are wired up with keys inside the panel, with no file editing.

Telegram bot

Selling and renewal happen in the bot; its texts and buttons are edited in the panel. Broadcasts by segment, with scheduled sending.

Accounting

Traffic per client and per node, limits and scheduled resets, devices by HWID, what the servers cost you and what is left after them.

Installing

You need a Debian or Ubuntu server, a domain for the panel and a domain for subscriptions.

git clone https://github.com/STEALTHNET-APP/stealthnet-software.git
cd stealthnet-software
cp .env.example .env    # addresses, bot token, database access
docker compose up -d

Then head to the quick start: first administrator, configuration profile, first node and first client.

Honest about the limits

So you don't find out after installing.

One currency

Prices and reports use a single currency for the whole service. Several at once would mean exchange rates, conversion and figures that disagree. The one exception is Telegram Stars: they have their own unit and their own price.

No node plugins

There is no extension catalogue. Blocking and bypassing are done with routing rules inside the configuration profile — enough for nearly every case.

Changing who has access

The engine reads its client list at start-up, so a purchase or a revoked subscription means restarting it on the node. The window is up to 15 seconds.

What's new

Every change to the panel has its own page, newest first.

In progress — 0.1.0

The first public release has not happened yet: the code opens together with it. Below is what already works and has been checked on a live installation.

The full list of changes