Skip to main content
Version: Next

Control Server Installation

Warning

We do not recommend installing the VirtFusion control server directly on a hypervisor. While it may seem convenient, this setup comes with several limitations and potential issues:

  • Resource Contention: The control server will consume CPU, memory, and disk resources that would otherwise be available for virtual servers.
  • Scalability Limits: Hosting the control server on a hypervisor can significantly limit the number of virtual servers (100) you can create and manage efficiently on the hypervisor that contains the control server.
  • Migration Challenges: Moving the control server later (e.g., for scaling or redundancy) is more complex when it's installed directly on a hypervisor.

For best performance and long-term flexibility, we strongly recommend installing the control server on a dedicated or virtual server, separate from your hypervisors.

Requirements

Resources

  • A minimum of 2GB memory (4GB+ recommended)
  • A minimum of 20GB disk space

It's always good practice to make sure you can increase the resources of the control server. As the system grows and more users are interacting at the same time, resource usage will increase.

Operating Systems

The following operating systems are supported.

Operating Systemx86_64AArch64StatusNotes
Debian 12 (Bookworm)Fully SupportedVirtFusion is built and tested primarily on Debian based systems. This is our preferred choice of operating system.
Debian 13 (Trixie)Fully SupportedVirtFusion is built and tested primarily on Debian based systems. This is our preferred choice of operating system.
AlmaLinux 9 (RHEL 9)Fully Supported
AlmaLinux 10 (including v2) (RHEL 10)Fully Supported
Rocky Linux 9 (RHEL 9)Fully Supported
Rocky Linux 10 (RHEL 10)Fully Supported
Ubuntu 22.04Fully SupportedWe don't recommend Ubuntu unless it supports something that Debian does not (drivers etc...).
Ubuntu 24.04Fully SupportedWe don't recommend Ubuntu unless it supports something that Debian does not (drivers etc...).
Important

VirtFusion should be the only application installed on the server. Installing any other applications (i.e. Pterodactyl, cPanel etc...) at control server level is not advised, and may invalidate any support contracts included with your VirtFusion license. It is permitted to install monitoring agents (Netdata, Hetrix Tools etc...).

VirtFusion does not include an uninstaller. If you make a mistake or decide not to use it, you must re-install the operating system to remove it.

Installation

Select your operating system.

Run the following commands as a root SSH user.

Debian 12 (Bookworm) x86_64

apt install curl -y
curl https://install.virtfusion.net/install-control-debian-12.sh | sh -s -- --verbose

Debian 13 (Trixie) x86_64

apt install curl -y
curl https://install.virtfusion.net/install-control-debian-13.sh | sh -s -- --verbose

Once the installer has completed the installation process, a URL and temporary username & password will be given.

+-------------+--------------------------------------+
| URL | https://10.0.0.10 |
| Username | admin@admin.com |
| Password | sQpfY1p1nhsxqXt |
+-------------+--------------------------------------+

SSL setup

A stock installation will generate a self-signed SSL certificate but this is probably not what you need. You can generate a signed set of certificates for your domain at no cost using a free SSL service.

acme.sh

caution

You must have an A record pointing to the control server IP in your DNS records before proceeding to setup a certificate.

Install acme.sh (Official Website)

wget -O -  https://get.acme.sh | sh
. ~/.bashrc

The installer will perform 3 actions:

  1. Create and copy acme.sh to your home dir ($HOME): ~/.acme.sh/. All certs will be placed in this folder too.
  2. Create alias for: acme.sh=~/.acme.sh/acme.sh.
  3. Create daily cron job to check and renew the certs if needed.

Generate a certificate (replace DOMAIN.COM with your own domain).

acme.sh --issue \
--webroot /opt/virtfusion/nginx/acme \
--keylength 4096 \
--server letsencrypt \
-d DOMAIN.COM

Install the certificate (replace DOMAIN.COM with your own domain).

acme.sh --installcert \
--keypath /opt/virtfusion/ssl/ssl.key \
--fullchainpath /opt/virtfusion/ssl/ssl.crt \
--reloadcmd "systemctl reload vf-nginx" \
-d DOMAIN.COM

Activating a license

Login to VirtFusion with the new login details that were generated on installation.

You will be given the options to either generate an evaluation license or enter an existing license key.