Skip to content
NX

NX

A multi-node VPN control panel for modern proxy protocols.

One panel, any number of nodes, 20+ protocols, and subscriptions your clients already understand.

nx-panel.org · Documentation · Install


What is NX?

NX was called Nexora until v0.1.0.

NX is a two-part system for running a fleet of VPN servers from a single place.

Component Role
NX Panel The control plane: a Go service with an embedded Vue 3 admin UI. It is the single source of truth (SQLite or PostgreSQL) for users, protocols, templates and nodes, hands subscription links to end-users, and drives every node.
NX Node The data plane: a stateless agent running its own proxy engine. It has no database — the Panel pushes all configuration to it over HTTPS with mutual TLS.

Highlights

Fleet management

  • Nodes are stateless. Register one in the Panel, then bring it up with a single command copied from there: it installs the agent, fetches the Panel's client certificate with a one-time install token, generates its own server certificate and comes up under mTLS with trust-on-first-use pinning.
  • Global pools of inbounds, outbounds and endpoints, composed into templates (pool items + routing + core settings) that are assigned to nodes.
  • Live, incremental updates: adding a user or an inbound reaches running nodes without a restart, and every operation falls back to a full resync if anything goes wrong.
  • Heartbeats, per-node traffic accounting, per-node traffic caps (weekly, monthly or yearly) that take a node offline until the next period starts, live log streaming, host metrics and a pinnable tile dashboard.

Users & subscriptions

  • Volume quotas, expiry dates, scheduled resets and automatic enforcement.
  • One subscription URL per user, rendered on the fly as v2ray share links, Clash / mihomo YAML, sing-box JSON, Xray JSON or plain text. Clash / mihomo and sing-box clients are detected from their User-Agent; everyone else gets the operator-chosen default format unless one is named in the URL, and the Clash, sing-box and Xray base templates are editable.
  • Ready-to-import profiles for WireGuard (.conf) and OpenVPN (.ovpn), plus connection details (server URL and credentials) for OpenConnect / AnyConnect clients.

Operations

  • Three roles: sudo (owner), admin (operators) and resellers, who see only the users they own and work within their own volume and expiry allowance.
  • Bearer API tokens for integrations, signed event deliveries to webhooks and addons, an opt-in audit log of admin changes (who created, updated or deleted what), and an OpenAPI 3 specification served by the Panel itself.
  • Certificates: self-signed (generated by the Panel and pinned in subscriptions) or ACME obtained by the node itself (HTTP-01, TLS-ALPN-01, or DNS-01 via Cloudflare, AliDNS or ACME-DNS), both renewed automatically — or bring your own. REALITY and ECH key generation built in.
  • Admin UI in English, Persian (RTL), Chinese and Russian, with light, dark and high-contrast themes.

Protocols

Everything the node engine supports is configurable from the Panel.

Inbounds (user-carrying) VLESS · VMess · Trojan · Shadowsocks · SOCKS · HTTP · Mixed · NaïveProxy · Hysteria · Hysteria2 · TUIC · ShadowTLS · AnyTLS · Mieru · SSH · Snell · MTProxy · TrustTunnel
Inbounds (shared key) Sudoku — one key per inbound, no per-user accounting
Inbounds (transparent) TUN · Redirect · TProxy · Direct
Outbounds Direct · Block · SOCKS · HTTP · Shadowsocks · VMess · VLESS · Trojan · Hysteria · Hysteria2 · TUIC · ShadowTLS · AnyTLS · SSH · NaïveProxy · Mieru · Snell · Sudoku · TrustTunnel · MASQUE · Tor · Selector · URLTest
Endpoints WireGuard (multi-user) · Tailscale · OpenVPN server / client · OpenConnect server / client
Transports TCP · WebSocket · gRPC · HTTP · HTTPUpgrade · QUIC · XHTTP · mKCP
Security TLS · REALITY · ECH · uTLS · Your own certificates · node-managed certificates · self-signed

Per-user traffic accounting covers every user-carrying inbound and the WireGuard, OpenVPN and OpenConnect server endpoints.

Deployment

Panel Node
Binary nx-panel — Linux (amd64, arm64, armv5/v6/v7, 386, s390x, riscv64) nx-node — Linux (amd64, arm64, armv5/v6/v7, 386, s390x, riscv64)
Docker ghcr.io/nx-panel/panel (amd64, arm64) ghcr.io/nx-panel/node (amd64, arm64)
Service systemd unit included · web UI and API on a port picked at install systemd unit included · control API on port 62050, mTLS only — the Node accepts the Panel's client certificate and nothing else; firewall the port to the Panel's address
State SQLite file by default, PostgreSQL optional No database — only its certificates and a small cache on disk

Both install with one command: nx-panel/panel for the panel, and the command the panel shows for each node. Both are single self-contained binaries. The Node's NaïveProxy outbound links Chromium's cronet, which the release builds bundle for amd64, arm64, armv7 and 386. Container images are published with each tagged release.

Licensing

  • NX Panel is proprietary software, licensed per installation. Without a licence it runs on a free tier of 25 users and 1 node with every protocol and feature, so you can evaluate everything before buying. The Node needs no key of its own; the Panel's licence caps how many users it serves and how many nodes it drives.
  • A license is a signed token bound to the Panel host's hardware fingerprint (HWID) that raises the per-resource limits. A licence is bought, renewed or moved from the License page in the admin UI (visible to the main admin), and installs itself once the payment is confirmed; a key received by hand is pasted on the same page. Licensed installations verify the key online periodically. See Licence.
  • A key that is invalid, expired or issued for another machine is refused at activation with a clear error. If an installed key later expires or the hardware changes, the Panel does not go down — it falls back to the free tier.

Pinned Loading

  1. panel panel Public

    Nexora Panel — the control plane. Install script, Docker stacks, releases and documentation.

    Shell 265 32

  2. nx-migrate nx-migrate Public

    Migrate users, inbounds and settings from other VPN panels into Nexora

    Go 66 13

  3. node node Public

    Nexora Node — the data plane. Releases, container image and documentation.

    5

  4. shop shop Public

    Nexora Shop — the official addon that sells a panel's plans. Install script, compose stack, releases and docs.

    Shell

  5. notif notif Public

    Nexora notifier: tells a panel's users about their accounts — expiry, traffic, renewals and the admin's own messages — over Telegram, Bale, SMS, email and any HTTP API. An official open Nexora addon.

    Go

  6. sub-themes sub-themes Public

    Subscription page themes for the NX panel: a commented starter, the built-in pages, and a parse check

    HTML

Repositories

Showing 10 of 11 repositories
  • panel Public

    Nexora Panel — the control plane. Install script, Docker stacks, releases and documentation.

    nx-panel/panel's past year of commit activity
    Shell 265 32 3 0 Updated Nov 1, 2026
  • sub-themes Public

    Subscription page themes for the NX panel: a commented starter, the built-in pages, and a parse check

    nx-panel/sub-themes's past year of commit activity
    HTML 0 MIT 0 0 0 Updated Nov 1, 2026
  • nx-openvpn Public

    Fork of sagernet/sing-openvpn adding Server.SourceUser for per-user openvpn-server accounting in nexora-node

    nx-panel/nx-openvpn's past year of commit activity
    Go 4 1 0 0 Updated Oct 31, 2026
  • nx-panel.github.io Public

    Nexora documentation — the source of docs.nexora-panel.org

    nx-panel/nx-panel.github.io's past year of commit activity
    TypeScript 2 3 0 0 Updated Oct 31, 2026
  • notif Public

    Nexora notifier: tells a panel's users about their accounts — expiry, traffic, renewals and the admin's own messages — over Telegram, Bale, SMS, email and any HTTP API. An official open Nexora addon.

    nx-panel/notif's past year of commit activity
    Go 0 AGPL-3.0 0 0 0 Updated Oct 31, 2026
  • nx-migrate Public

    Migrate users, inbounds and settings from other VPN panels into Nexora

    nx-panel/nx-migrate's past year of commit activity
    Go 66 GPL-3.0 13 0 0 Updated Oct 31, 2026
  • shop Public

    Nexora Shop — the official addon that sells a panel's plans. Install script, compose stack, releases and docs.

    nx-panel/shop's past year of commit activity
    Shell 0 0 0 0 Updated Oct 30, 2026
  • .github Public
    nx-panel/.github's past year of commit activity
    3 1 0 0 Updated Oct 30, 2026
  • node Public

    Nexora Node — the data plane. Releases, container image and documentation.

    nx-panel/node's past year of commit activity
    5 0 0 0 Updated Oct 30, 2026
  • addon-template Public template

    A minimal Nexora addon to start from: registration, signed events, health, install by script or docker

    nx-panel/addon-template's past year of commit activity
    Shell 2 Apache-2.0 0 0 0 Updated Oct 30, 2026

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Most used topics