Self-Hosted
In a self-hosted deployment, you can run the Web UI, API server, and database on a single server or distribute them across multiple servers. Each component can be run natively or in a Docker container.
Web UI
The Web UI is a Vue.js application compiled as a static site. It can be served from any standard web server, such as NGINX. The web server does not need to communicate with the API server or database directly, but must be reachable from any devices that need to access the Web UI. The Web UI runs in a modern browser and communicates with the API server over HTTPS. To function correctly, it must be configured to point to the API server’s public URL.
API Server
The API server’s HTTPS port must be directly accessible (or exposed via an HTTP reverse proxy) to all endpoints you want to secure, as well as to any devices that will access the Web UI. The API server must also be able to connect to the database on its listening port. The API server requires 250 MB of free memory, and 150 MB of free disk space to install.
Database
The database is a PostgreSQL database, version 13 or newer. No special extensions are required. You must set up a database and user to which the API server can connect. For testing, 100 MB of memory and 100 MB of disk space is sufficient. For production, we recommend at least 1 GB of memory and 3 GB of disk space.
Agents
Just like the SaaS version, the self-hosted version lets you configure and deploy agents on your endpoints through the Web UI. Other than the network-specific configuration data, these agents will be identical to the ones accessible for SaaS users.
Getting Started
Once you have access to the relevant images, setting up a self-hosted instance of Crux VPN is a simple four-step process:
- Provision one or more servers for the core components (Web UI, API server, database).
- Install the Web UI, API server and database.
- Run the Web UI, API server and database.
- Use the Web UI to add hosts, users, and to configure your network.
To get started with a self-hosted Crux VPN environment, reach out to us by contacting support [at] sirius [dot] computer
.