Setup & installation
Lighthouse installs natively on Ubuntu and Windows from the same codebase. On install the DHCP engine is registered but stopped — it never serves DHCP until you explicitly arm it.
Ubuntu
Install the .deb. It:
- installs
/usr/bin/lighthousedand the/usr/bin/lighthouseCLI; - creates an unprivileged
lighthousesystem user; - registers the
lighthousedsystemd service disabled.
| Path | Purpose |
|---|---|
/etc/lighthouse/lighthouse.toml | Config (0640, root:lighthouse). |
/var/lib/lighthouse/ | State — leases.db, reservations.json, tftp/. |
/var/log/lighthouse/lighthouse.log | Log. |
The service runs sandboxed as the lighthouse user, binding privileged ports (67 / 547) via
CAP_NET_BIND_SERVICE — no root. Arm it with sudo systemctl enable --now lighthoused. The
optional lighthouse-ddnsd (dynamic DNS) and lighthouse-tftpd (PXE) services install alongside.
Windows
Run the MSI. It installs lighthoused.exe and lighthouse.exe to C:\Program Files\Lighthouse\,
registers a native Windows Service lighthoused (stopped), and adds a firewall rule for UDP 67.
| Path | Purpose |
|---|---|
C:\ProgramData\Lighthouse\lighthouse.toml | Config. |
C:\ProgramData\Lighthouse\ | State — leases.db, reservations.json, mgmt.db, certs, lighthouse.log. |
On Windows the service discards stderr — the log file is your only durable log. Make sure
[logging] file is set.
The web UI (Management feature) is not installed by default; add it with
ADDLOCAL=Management. Optional MSI features: Management, DynamicDNS, TftpServer. Silent
install example:
msiexec /i lighthouse.msi /qn ADDLOCAL=Management ADMIN_EMAIL=admin@corp.example ADMIN_PASSWORD=...
Start the engine with sc start lighthoused.
The admin UI
lighthouse-mgmtd serves the web UI on 127.0.0.1:31074 (loopback only), over HTTPS with an
auto-generated self-signed certificate. On Windows the installer adds a hosts entry so you can
browse https://lighthouse.local:31074. Override the port with MGMT_PORT (Windows) or the
LH_MGMT_LISTEN environment variable.
First-run login
On first start an admin account is seeded into the management database. Defaults are
admin@lighthouse.local / changeme (overridable with LH_ADMIN_EMAIL / LH_ADMIN_PASSWORD), and
a password change is forced at first login. If you're locked out, reset from the host:
lighthouse-mgmtd --reset-admin --email admin@lighthouse.local
Accounts are local (argon2), with admin / operator / viewer roles; AD/LDAP sign-in is also supported.
Next
Define your networks in the Configuration reference, then arm the engine.