Files
vps/hosts/ubnt.md
T

1.8 KiB

ubnt — UniFi Network Controller

Role and access

Item Value
Role UniFi Network Controller host
IPv4 192.168.66.46
SSH ssh -4 windy@192.168.66.46
Hostname ubnt
Privilege windy has passwordless sudo and is in the docker group

The current SSH ED25519 host-key fingerprint is SHA256:TTZtonJnnnNS6vk4xqo+CJPuZGXwwkf46wR1SLmqc10 (verified 2026-08-03). Verify a changed key out of band before accepting it.

UniFi stack

Item Value
Compose directory /home/windy/unifi-9
Compose file /home/windy/unifi-9/compose.yml
Compose service unifi
Container unifi-controller
Image jacobalberty/unifi:v9.5.21
Network mode host
HTTPS UI https://192.168.66.46:8443

The controller binds *:8443. A local HTTPS request to https://127.0.0.1:8443/ is the primary quick health check.

Proxy contract

The container has HTTP/HTTPS proxy environment variables. Its Compose environment list must keep both NO_PROXY and no_proxy enabled and include at least:

localhost,127.0.0.1,::1,192.168.0.0/16,10.0.0.0/8,172.16.0.0/12

Without this bypass, a controller request to localhost:8443 can be sent to the OpenClash gateway instead of remaining local. Details and verification are in the UniFi localhost proxy note.

Safe reconciliation and verification

cd /home/windy/unifi-9
docker compose config -q
docker compose up -d --force-recreate unifi
docker inspect --format '{{.State.Health.Status}}' unifi-controller
curl -k -sS -o /dev/null -w '%{http_code}\n' https://127.0.0.1:8443/

Recreating the service briefly interrupts the controller. Do not use docker compose down -v; it can remove persistent data.