Panel and Node
Running the script
Section titled “Running the script”Run this command on your server:
bash <(curl -Ls https://raw.githubusercontent.com/eGamesAPI/remnawave-reverse-proxy/refs/heads/main/install_remnawave.sh)Installing the panel and node
Section titled “Installing the panel and node”What the installer does
Section titled “What the installer does”While you answer the questions, the script does all the work itself:
- Checks the server before starting: port 443 is free, neither the panel nor the node is running, so the install never lands on top of a live setup.
- Asks for three domains: the panel, the subscription page and the camouflage site (selfsteal). Each domain is validated, its DNS record is checked, and all three must be different.
- Generates every secret itself: the superadmin login and password, the
name=valuepair for the secret login link, a separate metrics login and password, andAPP_SECRET. Nothing to invent or remember: everything is shown at the end. - Deploys the services into
/opt/remnawave: the PostgreSQL database, the Valkey cache, the RemnaWave panel, a reverse proxy behind a Unix socket, the subscription page and theremnanodenode. The node’s Xray owns port 443 and hands web traffic to the proxy over the socket, with no extra TCP hops. - Issues Let’s Encrypt certificates for all domains at once, using the method you pick (DNS API, ACME HTTP-01 or your own), and sets up renewal.
- Installs the camouflage site: a random template of an ordinary website on the selfsteal domain, so the node does not stand out from regular traffic.
- Configures the panel through its API: registers the superadmin, creates the StealConfig profile, the node and the host, binds them to the default squad and issues a token for the subscription page.
- Restarts the stack cleanly (
down+up): if something did not come up, the error cannot hide behind the green “installation complete” banner.
Step-by-step installation
Section titled “Step-by-step installation”-
Select
Install Remnawave ComponentsREMNAWAVE REVERSE-PROXY by eGames Version: 3.8.4 Wiki: https://wiki.egam.es/ 1.Install Remnawave Components 2.Reinstall Panel and Components 3.Manage Panel and Components 4.Node extensions (templates, plugins, core) 5.Subscriptions: rules and page 6.WARP Native 7.Backup and restore 8.Xray Checker — subscription monitoring 9.NetBird: overlay network for nodes and panel 10.Manage IPv6 11.Manage certificates domain 12.Check for updates script 13.Remove script 0.Exit - Quick start: remnawave_reverse (or rr) Select action (0-13):
-
Then select
Install panel and node on one serverInstall Remnawave Components 1.Install panel and node on one server 2.Install panel and subscription page 3.Add node to panel 4.Install only the node 5.Install only the panel 6.Install only the subscription page 0.Exit Select action (0-6):
-
Select the web server for the panel. Both options are fully supported:
- Nginx: the classic scheme used in all previous versions.
- Caddy: automatic HTTPS certificates out of the box.
Select web server: 1.Nginx 2.Caddy 0.Exit Select action (0-2):
-
Answer the installer’s questions: enter the panel, subscription and selfsteal domains one by one, each is checked separately
Enter panel domain (e.g. panel.example.com): panel.example.com Enter subscription domain (e.g. sub.example.com): sub.example.com Enter selfsteal domain for node (e.g. node.example.com):
-
Select the panel protection method:
Cookie protection (default): the panel is hidden behind a secret link, as in previous versions.Login page (TinyAuth): an extra login page in front of the panel. The script deploys TinyAuth and creates the user itself.
Panel protection method: 1.Cookie protection (default) 2.Login page (TinyAuth) Select action (1-2):
Cookie protection (default): the panel is hidden behind a secret link, as in previous versions.Login page with MFA: a login portal with multi-factor authentication in front of the panel.
Panel protection method: 1.Cookie protection (default) 2.Login page with MFA Select action (1-2):
-
Select the certificate generation method for all domains at once:
- DNS API (Cloudflare, Gcore, Bunny.net): a wildcard certificate, DNS records are created automatically via an API key.
- ACME HTTP-01: no API key, one domain per certificate.
- Your own certificate: upload your own
fullchain.pemandprivkey.pem.
Select certificate generation method for all domains: 1.Cloudflare DNS API Wildcard, DNS records are created automatically via an API key 2.Gcore DNS API Wildcard, DNS records are created automatically via an API key 3.Bunny.net DNS API Wildcard, DNS records are created automatically via an API key 4.ACME HTTP-01 No API key, one domain per certificate 5.Install your own certificate Upload your own fullchain.pem and privkey.pem 0.Exit Select action (0-5):
-
If you chose Let’s Encrypt, enter the email for certificate notifications, or just press Enter to skip
Enter your Let's Encrypt email (or press Enter to skip): -
From here the script works on its own and marks each stage: it writes the services into
/opt/remnawave, generates certificates, installs the camouflage site, configures the panel through the API and restarts everything cleanlyInstalling panel and node [ * ] Checking containers availability... Generating certificates for panel.example.com [ * ] Stopping panel and node [ * ] Starting panel and node
-
When the installation finishes, the script prints all login data
================================================= INSTALLATION COMPLETE! ================================================= Panel URL: https://panel.example.com/auth/login?zIdejKtN=MWbLrRzx ------------------------------------------------- To log into the panel, use the following data: Username: admin Password: k7XmQ2vLpR9t ------------------------------------------------- To relaunch the manager, use the following command: remnawave_reverse ================================================= Installing random template for camouflage site Selected template: corporate-business Template copied to /var/www/html
On the final screen:
- the panel login URL with the secret parameter, like
https://panel.example.com/auth/login?NAME=VALUE(or the login portal address if TinyAuth / MFA was selected); - the superadmin username and password;
- the command to reopen the menu,
remnawave_reverse; - which random camouflage template was picked and where it was copied.
- the panel login URL with the secret parameter, like
Updating the script
Section titled “Updating the script”Make sure the script is up to date before you do anything else with it.
-
Open the script menu with the
remnawave_reversecommand (or the short aliasrr) and select item12,Check for updates script. When an update is already found, the item lights up red and readsUpdate script:REMNAWAVE REVERSE-PROXY by eGames Version: 3.8.4 script update available … 9.NetBird: overlay network for nodes and panel 13.Update script 13.Remove script 0.Exit Select action (0-13):
-
What changed in each version is on the releases page:
