Before you install the server
What the portal and relay are, what servers, names, certificates and ports they need, and what is in the server download.
- For
- Administrators
- Applies to
- Billet 1.0
- Updated
The server side of Billet is two programs you run on your own Linux servers:
- the portal, which signs people in, holds every tenant, desktop and assignment, and hands out sessions. Administrators use its console.
- the relay, which carries sessions between people and desktops that cannot reach each other directly.
They can share one server or have one each. A relay on its own server, close to the people using it, is the usual choice once a deployment grows.
Servers
| Operating system | 64-bit x86 Linux with glibc 2.39 or later. Ubuntu 24.04 LTS is recommended, and is what these guides use. |
| Portal packages | nginx (or another reverse proxy), OpenSSL, CA certificates, and the xmlsec1 OpenSSL library. On Ubuntu 24.04: nginx openssl ca-certificates libxmlsec1t64-openssl, plus postgresql if the database runs on the same server. |
| Database | PostgreSQL, on the portal server or a server of its own. Ubuntu 24.04's postgresql package is fine. SQLite works for a lab or test deployment only. |
| Clock | Kept accurate by NTP. The license check refuses answers more than five minutes off. |
Names and certificates
Decide these before you start, because the portal, the proxy and the relay are each configured with them:
| Name | Example | Certificate |
|---|---|---|
| The portal | portal.example.com |
A publicly trusted certificate (Let's Encrypt is fine), held by the reverse proxy |
| Each relay | relay.example.com |
A publicly trusted certificate, held by the relay, for browser sessions |
People's browsers and the Billet app reach both names, so both need public DNS records and certificates every browser trusts. Never name a host (a desktop machine) in a public certificate: issued certificates are published for good, in Certificate Transparency logs.
The portal also runs its own certificate authority, which issues certificates to hosts and relays for the connections between them. You create it once, after the portal is installed. See Create the certificate authority.
Network
See Network ports for the full table. In short:
- The portal's reverse proxy takes HTTPS on 443 from everyone: people, the Billet app, hosts and relays.
- The relay takes its media port and its browser WebSocket port from everyone.
- The portal makes outbound HTTPS to
license.billetstream.com. - Hosts need nothing inbound unless you allow direct connections.
What is in the download
The server release is one file, Billet-Server-<version>-linux-x64.tar.gz, with a checksum file beside it:
Billet-Server-<version>-linux-x64/
portal/billet_portal-cli the portal
portal/assets/ its pages, scripts, styles and the browser session page
portal/config/production.yaml.example the configuration it starts from
relay/billet-relay the relay
agent/billet-stats-agent the agent a relay runs beside it