Ansluta till holger-konsolen över Tailscale
Konsolen körs på Henriks ThinkPad och exponeras bara inom tailnätet (tailscale serve, inte Funnel) — den är alltså inte nåbar från internet, och det finns ingen publik URL. För att nå den måste din maskin vara en nod i samma tailnet.
URL: https://henrik-thinkpad-t14s-gen-6.tail4eceda.ts.net
Steg 1 — Henrik ger åtkomst (görs en gång)
Välj en av två vägar i Tailscale-admin (https://login.tailscale.com/admin):
A. Dela bara den här maskinen (minst behörighet, rekommenderas)
- Machines →
henrik-thinkpad-t14s-gen-6→ Share… - Ange Rickards e-post → skicka delningslänken.
- Rickard öppnar länken och accepterar; maskinen dyker upp i hans egen tailnet-lista som en delad nod. Han får åtkomst till den maskinen, inget annat i tailnätet.
B. Bjuda in till tailnätet (om Rickard ska nå fler tjänster)
- Users → Invite external user → Rickards e-post.
- Kontrollera att tailnätets ACL släpper fram hans nod till port 443 på
henrik-thinkpad-t14s-gen-6.
Steg 2 — Rickard installerar och loggar in
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up
(macOS/Windows: hämta klienten från https://tailscale.com/download och logga in i appen.) Logga in med det konto inbjudan/delningen gick till.
Kontrollera att maskinen syns:
tailscale status | grep henrik-thinkpad
Steg 3 — Öppna konsolen
https://henrik-thinkpad-t14s-gen-6.tail4eceda.ts.net
Certifikatet är utfärdat av Tailscale för .ts.net — inga varningar ska dyka upp. Använd värdnamnet, inte IP-adressen: certifikatet gäller namnet, så https://100.121.38.43 ger en certvarning.
Du bör se en topbar med ok · holger v0.6.9 (…) och en översikt med fyra kort.
Steg 4 — Logga in för att kunna skriva
Läsning (bläddra, söka, ladda ner, se SBOM/properties) fungerar utan inloggning — topbaren visar då anonymous · reader. Skrivning (upload, promote, properties, SBOM-attach) kräver en bearer-token:
- Gå till Account i menyn.
- Klistra in token i fältet Bearer token → Log in.
- Topbaren ska nu visa ditt subject och din roll, t.ex.
console-admin · admin— det är serverns svar, inte klientens gissning.
Henrik skickar token separat (den ligger i en 0600-fil på maskinen och står aldrig i det här dokumentet). Token lever bara i fliken (sessionStorage) och försvinner när du stänger den eller trycker Log out.
Om det inte funkar
| Symptom | Trolig orsak | Åtgärd |
| Namnet slår inte upp | MagicDNS av, eller noden inte accepterad | tailscale status — syns maskinen? Acceptera delningen. |
| Timeout / ingen kontakt | Laptopen sover eller är offline | Den är en bärbar dator — be Henrik väcka den. tailscale ping henrik-thinkpad-t14s-gen-6 visar om noden svarar. |
| Sidan laddar men är tom | WASM-bundeln blockeras eller är halvladdad | Hårdladda (Ctrl+Shift+R). Kvarstår det: be Henrik köra cargo xtask verify-chain. |
503 eller 502 |
nginx uppe men holger-servern nere | Henrik: systemctl --user status holger-server holger-console |
| Certifikatvarning | Du använde IP i stället för värdnamnet | Använd https://henrik-thinkpad-t14s-gen-6.tail4eceda.ts.net |
| Skrivningar nekas med "authentication required" | Ingen token, eller fel roll | Logga in på Account. Rollen sätts av servern (RBAC), inte av konsolen. |
Henrik kan verifiera hela kedjan utifrån med:
cd ~/holger-ui && cargo xtask verify-chain
Den kontrollerar båda tjänsterna, tailscale-konfigurationen, SPA-fallbacken, gRPC-dörren, skrivgrinden och CSP-headern — nio kontroller, alla ska vara OK.