Skip to main content

Host Your Own Node

Deploy a QuicProxy node on a VPS and generate a subscription link for your clients. No domain, no certificate.

One-Line Setup​

curl -fsSL https://raw.githubusercontent.com/RealBikiniBottom/QuicProxy/master/server_install.sh | sudo bash

The script interactively asks which protocols to enable, then finishes the installation automatically.

Available Protocols​

ProtocolTransportBest for
shadowquic (QUIC + JLS)UDPLowest latency, ideal for gaming and video
anytls (insecure TLS)TCPTLS camouflage, resistant to blocking
trojan (TLS)TCPStandard Trojan, broadly compatible

What the Script Does​

  1. Downloads the latest quicproxy binary.
  2. Generates random credentials.
  3. Detects the port and public IP automatically (IPv4 / IPv6).
  4. Writes the server configuration to server.json5 (including observe / api / subscription).
  5. Registers and starts a systemd service.
  6. Prints the subscription link (Core API subscription + direct nodes) and a QR code.
# Show the subscription link
cat /opt/quicproxy/subscription.txt

# Service management
systemctl status quicproxy
systemctl restart quicproxy
journalctl -u quicproxy -f

Subscription​

The script enables the core API and observe, then prints a Core API subscription URL:

http://<public-ip>:<api-port>/sub?username=<user>&password=<password>

Import this URL directly into the client; the script also renders a QR code through the Core API. Node links are generated dynamically by each inbound, and the subscription-userinfo response header reports the user's used traffic in real time. Traffic and time are unlimited by default, while consumption keeps being counted.

For multiple users, a custom public host, or dual-stack IPv4 / IPv6 links, see Provider API.

Server Configuration​

After installation the configuration is generated at /opt/quicproxy/server.json5. Edit it and restart the service:

vim /opt/quicproxy/server.json5
systemctl restart quicproxy

Key settings: inbound usernames and passwords, ports, TLS / SNI options, and the public host under subscription.

Directory Layout​

/opt/quicproxy/
├── quicproxy # Binary
├── server.json5 # Core configuration
├── subscription.txt # Subscription link
└── .core_api # Core API password and port

Uninstall​

systemctl stop quicproxy
systemctl disable quicproxy
rm -f /etc/systemd/system/quicproxy.service
systemctl daemon-reload
rm -rf /opt/quicproxy