Install Server | Docs Firezone Link Search Menu Expand Document

Install Server


Important: Ensure you’ve satisfied the prerequisites before following this guide.

Installation Instructions

Assuming you’re running a supported Linux kernel on one of the supported platforms, use one of the methods below to get started:

Automatic Install

The easiest way to get started using Firezone is via the automatic installation script:

bash <(curl -Ls https://github.com/firezone/firezone/raw/master/scripts/install.sh)

This will ask you a few questions regarding your install, download the latest release for your platform, then create an administrator user and print to the console instructions for logging in to the web UI.

If that fails, try the manual installation method below.

Manual Install

If the Automatic Install fails, try these steps to install Firezone manually.

  1. Install WireGuard for your distro. If using Linux kernel 5.6 or higher, skip this step.
  2. Download the relevant package for your distribution from the releases page.
  3. Install with sudo rpm -i firezone*.rpm or sudo dpkg -i firezone*.deb depending on your distro.
  4. Bootstrap the application with sudo firezone-ctl reconfigure. This will initialize config files, set up needed services and generate the default configuration.
  5. Edit the default configuration located at /etc/firezone/firezone.rb. We’ve chosen sensible defaults that should be a good starting point for most installations. For production installations, you’ll want to specify your FQDN and SSL certificate paths:

    # Auto-generated based on the server's hostname.
    # Set this to the URL used to access the Firezone Web UI.
    default['firezone']['external_url'] = 'https://firezone.example.com'
    
    # Specify the path to your SSL cert and private key.
    # If set to nil (default), a self-signed cert will be generated for you.
    default['firezone']['ssl']['certificate'] = '/path/to/cert.pem'
    default['firezone']['ssl']['certificate_key'] = '/path/to/key.pem'
    

    See the complete configuration file reference for more details.

  6. Reconfigure the application to pick up the new changes: sudo firezone-ctl reconfigure.
  7. Finally, create an admin user with sudo firezone-ctl create-or-reset-admin. The login credentials will be printed to the console output.
  8. Now you should be able to sign in to the web UI at the URL you specified in step 5 above, e.g. https://firezone.example.com

Find solutions to common issues during deployment in Troubleshoot.