Install Bindplane Server

Bindplane will run on Linux.

If you use Docker, view this guide.

Supported Operating Systems

  • Red Hat, Centos, Oracle Linux 7, 8, 9

  • Debian 11 and 12

  • Ubuntu LTS 20.04, 22.04

  • SUSE Linux 12 and 15

  • Alma and Rocky Linux

While Bindplane Server will generally run on any modern distribution of Linux, systemd is the only supported init system.

Prerequisites

Self-hosted Bindplane requires the following prerequisites:

  • A Bindplane license key

  • A PostgreSQL database

  • Verify that your system meets the recommended Resource Requirements

See the Prerequisites documentation for more information.

Download and Install Bindplane Server

The first step is to download Bindplane from the download page.

bindplane-self-hosted-download

You download and install Bindplane by following these steps:

  1. Select your platform. Choose Linux.

  2. If you don't already have a license, you can request one.

  3. Run the install command in a terminal.

The install command will look like the example below.

curl -fsSlL https://storage.googleapis.com/bindplane-op-releases/bindplane/latest/install-linux.sh -o install-linux.sh && bash install-linux.sh --init && rm install-linux.sh
Bindplane docs - Install Bindplane Server - image 2

Configure Bindplane Server

Type y to continue the installation process. This will initialize the server with some configuration parameters, which updates the fields in the config.yaml located by default at /etc/bindplane/config.yaml:

  • License Key: A license is required to initialize the server configuration. If you do not have a license, you can request one on the Download page.

  • Server Host: Set to the instance's IP address, or 0.0.0.0 to bind to all IP addresses.

  • Server Port: Set to 3001 (the default value) unless you have a reason to change it.

  • Remote URL: Set to the URL that should be used to communicate with Bindplane externally. Generally, this is your server's hostname or IP address followed by the port. If Bindplane is behind a load balancer please follow the High Availability instructions.

  • Authentication Method: Choose the authentication type you would like to configure. (Free Edition users will not be prompted, instead, basic auth is configured automatically)

    • LDAP and Active Directory (Google Edition or Enterprise)

      • Enable TLS: If enabled, TLS will be used when communicating with the directory server.

        • Enable Mutual TLS: If enabled, mutual TLS authentication will be used when communicating with the directory server.

          • TLS Certificate: Path to the X509 PEM TLS certificate to use when mutual TLS is enabled.

          • Private Key: Path to the X509 PEM TLS private key to use when mutual TLS is enabled.

        • Certificate Authority: Optional path to the X509 PEM TLS certificate authority that should be used to validate the directory server's certificate.

        • Insecure Skip Verify: Choose "n" here. It is not recommended to skip certificate verification outside of a development environment.

      • Server Address: Set to the IP address or hostname of the directory server.

      • Server Port: Set to the port of the directory server.

      • Base DN: Set to the distinguished name that should be used to search for users.

      • Search Filter: Set to the search filter that should be used to search for users.

      • Bind Username: Set to the username that should be used when authenticating with the directory server.

      • Bind Password: Set to the password that should be used when authenticating with the directory server.

    • Single User

      • Username: Set to your desired basic auth username

      • Password: Set to your desired basic auth password

  • Store Type: Choose PostgreSQL. The legacy Bbolt store is deprecated and will be removed in a future release.

    • PostgreSQL: Provide connection parameters for the PostgreSQL database to connect to.

      • Host: Set to the IP address or hostname of the PostgreSQL instance.

      • Port: Set to the port that the PostgreSQL instance is reachable on.

      • Database Name: Set to the name of the database to use for storage. Bindplane will create the database at startup if it does not already exist.

      • SSL Mode: Set to the preferred SSL Mode for connecting to the PostgreSQL instance.

      • Username: Set to the PostgreSQL user to authenticate as.

      • Password: Set to the password for the chosen PostgreSQL user.

Bindplane docs - Initialize Server Image

Restart Bindplane Server

At the end of initialization, you'll be prompted to automatically restart Bindplane to have the changes take effect. If you choose not to restart automatically, use the following command to restart the server manually.

sudo systemctl restart bindplane

That's it; you've successfully installed Bindplane. Next, we'll show you how to access the Bindplane UI in your browser.

View Bindplane Server Status

Once initialized, you can check the service.

sudo systemctl status bindplane

For upgrade, downgrade and uninstall instructions, please see Upgrade, Downgrade or Uninstall Bindplane Server

Additionally, you can download packages directly, see our Downloads.

Last updated

Was this helpful?