Initial Setup
In this guide, we'll walk you through the essential features of the Remnawave Panel, helping you get up and running quickly.
We will cover every step, from your first login to the Panel to importing a subscription into a client application.
- This guide is written for Panel version 2.0 and newer.
- This guide also assumes that you have already installed Remnawave and its components.
- Some UI elements have changed their appearance in recent updates, but donβt worry β the functionality is largely unchanged, and this guide remains up to date.
Getting Startedβ
After you've installed the Panel and its necessary components, the admin interface will be accessible through browser β navigate to the domain you've assigned the Panel to.
First, you need to create a user. The first user to register automatically becomes the "super-admin."
If you ever forget your password, you can always recreate the super-admin account using the Rescue CLI.
To access the Rescue CLI, use the command: docker exec -it remnawave remnawave
Home Pageβ
After registration, you will be taken to the main dashboard.
Let's break down the elements on this page.
Remnawave Statisticsβ
The first two blocks, Remnawave Usage and Process Details, show you how Remnawave is currently utilizing system resources.
In Process Details, you can see which internal Remnawave processes are consuming the most resources.
Depending on your configuration, there may be more than one REST-API process.
Bandwidth Usageβ
This block displays overall traffic usage statistics for all users, with a comparison to the previous equivalent period.
For example, let's consider the Today metric. If you open the Panel at 4:00 PM, this block will show statistics from 12:00 AM to 4:00 PM today. However, the comparison will be against the entire previous calendar day (from 12:00 AM to 11:59 PM).
Currently, the screenshot shows all zeros, but after we configure everything and connect a user, this block will reflect real data.
Usersβ
SystemβTotal online on nodes- This displays the total number of online connections across all Nodes. A single user can be connected to multiple Nodes simultaneously. This figure represents the sum of all connections on all Nodes, including duplicates.
- For example: If User X is connected to Node A and Node B at the same time, this card will show 2 online connections.
Online stats- This block displays the total number of unique online users, not counting duplicates.
- For example: If User X is connected to Node A and Node B, this card will show 1 online user.
Users- This block shows general information about all users.
- For example: If you have two users β User X and User Z β the
Totalwill display 2. If User X has an active subscription and User Zβs subscription has expired, then theActiveandExpiredcounts will show 1 each.
Navigation Menuβ
On the left side you will see the navigation menu:
- Overview β Contains the
Homepage, which displays high-level statistics and system information. We covered this earlier in the guide. - Management β This is the core section of the Panel β you'll spend most of your time here. It includes:
Users- Create and manage Users.Internal Squads- Configure Internal Squads.External Squads- Configure External Squads.Config Profiles- Create and manage Xray-core configurations.Hosts- Manage entry points for users.Nodes:Management- View, edit, disable, or delete Nodes.Statistics- Review detailed usage statistics per Node.Infra Billing- Track infrastructure costs.Bandwidth- Analyze traffic consumption across Nodes.Metrics- Access live telemetry from Prometheus.
Remnawave Settings- Manage authentication methods, API access and branding of your Panel.
- Tools - the section with useful tools for reviwing data collected by the Panel about your users.
HWID Inspector- View hardware IDs reported by client apps.SRH Inspector- Analyze subscription requests sent from client apps.
- Subscription - Configure what the client app receives when fetching the subscription.
- Utilities - Tools designed to simplify and automate common tasks.
Happ Routing- A rule builder for creating and managing routing rules for Happ.Subscription Page- Customize the content of the Subscription Page.
Remnawave Settingsβ
With the 2.2.0 update, authentication methods and branding can now be managed in the dedicated Remnawave Settings section. API Tokens have been moved there too.
Branding Settingsβ
You can customize your Brand Name and use your own Logo.
Brand Name
Set any text to replace the default βRemnawaveβ brand name on the login page and navigation menu.Logo URL
Upload your custom logo image to display on the login page and navigation menu.
Authentication Methodsβ
Remnawave supports multiple authentication methods for passwordless logins. You can enable one or more options based on your needs.
Passkeyβ
Passkey authentication allows users to log in securely without passwords. You can register multiple passkeys across devices.
How to Set Up Passkey
-
Define Your Domains
Before setting up Passkey authentication, you need to define your Panel domain.Frontend DomainPublic domain of your frontend without protocol (e.g.,panel.example.com) define backand domainBackend DomainDefine the fully qualified HTTPS origin for your backend your backend (e.g.,https://panel.example.com)
-
Register a Passkey
ClickManage, thenRegister. Follow the steps your browser/device provides. -
Login Using Passkey
After registration, return to the login page to test the passkey. Once confirmed, you can disable username/password login.
GitHubβ
You can login with your GitHub account to Remnawave.
How to Set Up GitHub
-
Create a Github OAuth2 App
Visit Developer Settings page to register an app.Application nameβ choose any name.Homepage URLβhttps://panel.example.com/(replacepanel.example.comwith your Panel domain).Authorization callback URLβhttps://panel.example.com/oauth2/callback/github(replacepanel.example.comwith your Panel domain).
-
Get Client ID and Client Secret
Copy theClient IDandClient Secretfrom app page. -
Set the Variables in Remnawave
Client IDClient SecretAllowed Emailsβ specify which GitHub email addresses can log in.
-
Login Using GitHub
After registration, return to the login page to test the new authentication method. Once confirmed, you can disable username/password login.
PocketIDβ
PocketID is a self-hosted OAuth2 solution. Follow the official PocketID documentation to install it.
How to Set Up PocketID
-
Create an OIDC Client
InAdministrationβOIDC Clients, clickAdd OIDC Client.Nameβ choose any name.Callback URLsβhttps://panel.example.com/oauth2/callback/pocketid(replacepanel.example.comwith your Panel domain).
-
Get Client ID and Client Secret
Copy theClient IDandClient Secret. -
Set the Variables in Remnawave
Client IDClient SecretPlain Domainβ plain domain for PocketID instance. Do not use any paths or protocols, just a plain domain (e.g.,pocketid.example.com)Allowed Emailsβ add email addresses allowed to log in.
-
Login Using PocketID
Return to the login page to test the new authentication method. Once confirmed, you can disable username/password login.
Yandex IDβ
Yandex ID is not recommended for self-hosted Remnawave instances due to security concerns.
How to Set Up Yandex ID
-
Create a Yandex ID App
Visit Yandex ID page to create an app.Service nameβ choose any name.Platformsβ selectWeb services.Redirect URIβhttps://panel.example.com/oauth2/callback/yandex(replacepanel.example.comwith your Panel domain).Permissionsβ onlyAccess to email addressis required.
-
Get Client ID and Client Secret
Once the Yandex ID app is created, you'll see app profile where you need to copyClient IDandClient Secret. -
Set the Variables in Remnawave
Client IDClient SecretAllowed Emailsβ set the email adresses of the yandex accounts you wish to give access to. The account on yandex that logins in be registered to the email that you specified here.
-
Login Using Yandex ID
Return to the login page to test the new authentication method. Once confirmed, you can disable username/password login.
Telegram OAuthβ
You can log in with your Telegram account.
How to Set Up Telegram OAuth
-
Create a Bot
Message/newbotto @BotFather and create a new bot. Copy its token. -
Set Domain
Message/mybots. Select the bot you created. The go toBot SettingsβDomainβSet domain.
Message the domain of your Panel. E.g.https://panel.example.com. -
Get Admin IDs
Message/startto @userinfobot. Copy the ID it responded with. -
Set the Variables in Remnawave
Bot Tokenβ set the token of a bot you created earlier.Allowed Admin IDsβ set the ID you got earlier from @userinfobot.
-
Login Using Telegram Auth
Return to the login page to test the new authentication method. Once confirmed, you can disable username/password login.
If you disabled the password login and your OAuth doesn't work, you can enable it back with Remnawave Rescue CLI.
On a server hosting the Panel, run:
docker exec -it remnawave remnawave
ποΈ Nodes
Once youβve created a super-admin and explored the Home page, your next step is to set up your first Node.