Förstå vad som samordnas
Kontrollplanet hanterar nodregistrering och distribuerar nätverksinformation. Datatrafik kan använda direkta peer-anslutningar eller en relay beroende på anslutningen. Att köra koordinatorn innebär inte att varje paket passerar genom den.
Gör registreringen avsiktlig
Skydda den administrativa API och använd kortlivade eller lämpligt avgränsade registreringsmetoder. Ta bort enheter som är förlorade eller avvecklade. Möjligheten att ansluta till nätet bör inte innebära åtkomst till varje tjänst.
Granska ACL:er och rutter
Tillämpa regler för minsta behörighet mellan användare och noder. Annonserade subnätvägar och utgångsnoder utökar det nåbara nätverket och kräver explicit godkännande. Testa nekad trafik lika noggrant som tillåten trafik.
Behåll återställningsmaterialet
Säkerhetskopiera konfiguration, tillstånd och nycklar enligt den version som stöds förfarande. Behåll ett sätt att administrera VPS om meshen misslyckas. Verifiera klientkompatibilitet och uppgraderingsanteckningar innan du ändrar kontrollplanet.
Registrering, routning och policy är separata kontroller
Headscale koordinerar kompatibla Tailscale-klienter; direkta anslutningar och DERP-relävägar har olika nätverksbeteende. En subnet-router annonserar ett intervall, kontrollservern godkänner det och klienten måste acceptera rutten. Aktivera vidarebefordran på routningsnoden och håll annonserade intervall smala. En godkänd rutt behöver fortfarande en åtkomstpolicy som begränsar vem som får använda vilken destination och port.
- Kontrollera kontrollserverns ruttlista
- Testa från en tillåten enhet
- Upprepa samma test från en enhet som ska nekas
headscale nodes list-routesOfficiell dokumentation: Headscale-rutter
Lägg inte den enda återställningsvägen inuti nätet
Behåll ett andra sätt att nå serverkonsolen eller en strikt begränsad administratörsväg. Testa vad som händer när koordinatorn, reläet eller klienten är otillgänglig. Bevara kontrollplanets tillstånd och nycklar enligt den installerade versionen. Ett privat mesh kan förenkla åtkomst, men det bör inte bli ett odokumenterat beroende som hindrar sin egen reparation.
Fastställ kontrollplanets identitet och återställningsväg
Välj ett stabilt HTTPS-namn, en supportad Headscale-version och kompatibla Tailscale-klienter. Läs konfigurationsexemplet som medföljer just den versionen; en konfiguration kopierad från en annan version kan misslyckas vid validering eller tyst beskriva en annan policy. Beständiggör kontrollplansdatabasen och nödvändiga nycklar. Håll den administrativa API privat och behåll en separat konsol eller begränsad SSH-rutt, så att förlust av meshen inte gör dess koordinator omöjlig att reparera.
- Använd ett certifikat som är giltigt för det offentliga kontrollplansnamnet.
- Håll registreringsnycklar kortlivade och med lämplig omfattning.
- Behandla relaydesignen och namnrymden DNS som uttryckliga val.
Officiell dokumentation: Headscale-containerdistribution
Registrera en enhet innan du annonserar ett nätverk
Starta servern med instruktionerna från uppströmskällan och registrera en testanvändare/enhet via den dokumenterade registreringsmetoden. Bekräfta att enheten når förväntad kontroll-URL och visas under avsedd identitet. Inspektera klientstatus och testa en privat tjänst innan du lägger till exit-nod- eller subnätvägar. En DERP-väg kan bevara anslutningen där en direkt väg saknas; det indikerar inte att koordinatorn vidarebefordrar varje paket.
- Börja med en enhet och tjänst som du kan ta bort på ett säkert sätt.
- Kontrollera om peertrafiken är direkt eller vidarebefordrad.
- Skydda relay- och kontrollendpoints enligt den valda driftsättningen.
Officiell dokumentation: Referens för Headscale-distribution
Godkänn routing och auktorisering oberoende av varandra
För subnet-åtkomst, aktivera vidarebefordran på routningsnoden, annonsera ett smalt intervall, godkänn det på kontrollservern och se till att destinationsklienten accepterar det. Undvik överlappande nätverk som gör returrutten tvetydig. En godkänd rutt är inte en åtkomstpolicy: definiera vem som kan ansluta till vilken destination och port, inklusive gästenheter. Testa en tillåten anslutning och en identisk nekad anslutning innan du utökar meshen.
# Run on the control server; syntax follows the installed release:
headscale nodes list-routes
# Client-side inspection:
tailscale statusOfficiell dokumentation: Headscale-subnät och exit-rutter
Hitta det trasiga lagret innan du ändrar policyn
Om registreringen misslyckas, granska DNS, HTTPS och serverns URL. Om enheten ansluter men ett subnät inte går att nå, granska annonsering, godkännande, klientens routningsacceptans, vidarebefordran och returvägen. Om bara en tjänst misslyckas, granska dess bind-adress, värdens brandvägg och mesh-policy. Bevara en konsekvent säkerhetskopia av databas/konfiguration och testa en versionsuppgradering med en engångsklient innan du ändrar det enda kontrollplanet.