This section covers how to install Boundary under the [Systemd](https://systemd.io/) init system on modern Linux distributions. In this section we'll cover an example of breaking out the controller and worker servers onto separate instances, though you can opt to run both on a single server.
`TYPE` below can be either `worker` or `controller` if you want to run them independently, e.g. for high availability. If you want to run combined nodes, modify as desired.
2. `/usr/local/bin/boundary`: The Boundary binary. Can build from [GitHub repository](https://github.com/hashicorp/boundary) or download binary from our [release pages](https://www.boundaryproject.io/downloads).
We recommend running Boundary as a non-root user, and use this user to manage the Boundary process running under systemd. The example init files here do exactly this, and our example install script below creates a user and group on Debian-like Ubuntu systems as an example.