Hvert tunnelnavn ligner en række i et inventar, indtil du spørger, hvem der ejer det. Et navn fortæller dig, at noget er forbundet lige nu; det kan ikke fortælle dig, hvem tjenesten tilhører, hvad de må nå, eller om den konfiguration, der skabte tunnelen, er den, du godkendte. I flådeskala er de tre spørgsmål inventaret, og tunnelen er kun den nyeste iagttagelse.

Én tjeneste, tre poster

Den tilsigtede tjeneste er det, lejeren har krav på: identiteter, præfikser, ressourcer og en livscyklustilstand. Den udrullede konfiguration er den genererede politik, der skal realisere den. Den observerede session er runtime-bevis på, at noget har forbundet sig. Behandles de som én tabel, presses tre forskellige slags sandhed sammen i en række, der er forkert på tre måder på én gang.

RecordAnswersGoes stale when
Intended serviceWho may reach whatA contract changes and nobody edits the record
Deployed configurationWhat the gateway was toldA device is edited by hand
Observed sessionWhat is running nowTelemetry stops or a session ends

Den praktiske prøve er et spørgsmål, som hver post kan besvare alene. Spørg, hvem der ejer dette præfiks, og posten for tilsigtet tjeneste svarer. Spørg, hvilken politik gatewayen har, og den udrullede post svarer. Spørg, om nogen brugte den i denne uge, og sessionsposten svarer. Den kolonne, der ikke kan besvare sit eget spørgsmål, er den, der skal rettes først.

Notér lejeren, ikke grænsefladen

Giv hver tjeneste en identifikator, der overlever en genopkobling. En midlertidig tunnelgrænseflade eller et sessionsnummer ændrer sig af grunde, der intet har med kunden at gøre, og et inventar, der er nøglet på en af dem, får en ny række, hver gang et link blafrer. Nøgl det på lejeren og tjenesten i stedet, og knyt derefter iagttagelser til den nøgle.

Posten skal have den ansvarlige lejer og operatør, den accepterede peer- eller brugeridentitet, en reference til legitimationsoplysningen i stedet for en kopi af den, de beskyttede præfikser, routingkonteksten, de tilladte ressourcer og den tilsigtede livscyklustilstand. Legitimationsmateriale hører i det understøttede hemmelighedslager; et inventar, der bærer private nøgler, er blevet en anden, dårligere beskyttet kopi af miljøet.

Genereret konfiguration har en ejer og en version

Automatisering gør dette lettere og skjuler det bedre. En generator, der kører med succes, beviser, at skabelonen blev renderet, ikke at hver enhed matcher outputtet. Nogen vil på et tidspunkt ændre en gateway manuelt under en hændelse, og den ændring er det mest værdifulde at fange, fordi det er den, ingen senere kørsel vil genskabe.

Notér hvilken revision der frembragte den udrullede politik, og bevar direkte ændringer som en forskel, der skal afstemmes i stedet for at overskrive dem i det stille. Afstemningen er produktet her: generatorens succes og enhedens faktiske tilstand er to fakta, der skal sammenlignes, ikke antages ens.

Sessioner er bevis, ikke tilladelse

Hvor udrulningen bruger RADIUS-regnskab, giver RFC 2866 konkrete felter at arbejde med. Acct-Status-Type skelner en start fra et stop, og posterne for én session deler en Acct-Session-Id. De felter lader dig rekonstruere, hvornår en session begyndte og sluttede, uden at stole på et dashboards resumé.

En regnskabsidentifikator er runtime-bevis. Den definerer ikke, hvilken lejer der ejer et subnet, og den giver ikke adgang til noget. Korrelér den med gatewayen og tjenesteidentiteten, og hold derefter indsamlingstiden ved siden af iagttagelsen. En manglende rapport kan være en telemetrifejl snarere end fravær af brug, og en gammel post er ikke bevis for, at adgangen stadig er aktiv nu.

Nedlæggelse bruger den samme sammenkobling

At fjerne en tjeneste betyder at fjerne den tilsigtede adgang, legitimationsoplysningerne og de aktive sessioner i den rækkefølge, gennem ejerne af hver af dem. Bekræft derefter, at den forældede konfiguration er væk fra enhederne, og at dens tilladte stier ikke længere slår op. En kunde, der forlod sidste kvartal, bør ikke stadig optræde i en præfikseliste, fordi tunnelnavnet blev slettet, men ruten ikke.

Intet af dette kræver én enhed per funktion eller et bestemt automatiseringsprodukt. Det driftsmæssige krav er snævrere og sværere: en kunde, dens tilsigtede adgang, den udrullede politik og det aktuelle runtime-bevis skal kunne sammenkobles uden at hvile på nogens erindring om et tunnelnavn. Byg de tre poster først, og vælg derefter de værktøjer, der vedligeholder dem.

Relaterede artikler