Tre rapporter om den samme VPN kan være uenige, uden at nogen af dem er forkerte, fordi hver især mener noget forskelligt med et vellykket login. Den ene tæller forbindelser, der nåede serveren, en anden tæller identiteter, som godkendelsestrinet accepterede, og en tredje tæller sessioner, der færdiggjorde initialiseringen. At vælge én, før man indsamler data, er forskellen mellem en metrik og en diskussion.

Det nyttige spørgsmål er ikke, hvilken definition der er korrekt i almindelighed, men hvilket udfald læseren vil handle på.

Tre forskellige hændelser bærer samme etiket

En server accepterer en transportforbindelse, så snart håndtrykket er færdigt, og det sker, før nogen legitimationsoplysning er præsenteret. Den hændelse fortæller, at porten kan nås, og at netværksvejen virker, og den fortæller intet om, hvem der oprettede forbindelsen. Godkendelse er et senere trin, som kan mislykkes, og det kan også lykkes for en identitet, der aldrig tillades adgang til netværket.

Initialisering kommer efter godkendelse, og en tunnel, der er færdiginitialiseret, kan stå ledig resten af dagen. En anmodning fra en applikation er den eneste hændelse, der viser, at en bruger nåede noget, vedkommende ville. Disse trin ligger indeni hinanden, så en optælling af det bredeste vil altid overstige en optælling af det smalleste. Intet i hændelsesrækkefølgen beviser, at brugeren var produktiv, kun at hver port åbnede sig efter tur.

Produktdokumentation navngiver normalt tilstandene udtrykkeligt. OpenVPN noterne til administrationsgrænsefladen adskiller TCP-forbindelsen, godkendelsesresultatet og den fuldførte initialisering, og det er præcis den skelnen, en rapport har brug for. En tilstand mærket connected bekræfter ikke, at en filudveksling eller en databaseoperation senere lykkedes.

Tæl sessioner, identiteter eller anmodninger

Vælg enheden, før du vælger tallet. En sessionstælling svarer på, hvor mange gange tjenesten blev brugt, en identitetstælling svarer på, hvor mange forskellige konti der dukkede op, og en anmodningstælling svarer på, hvor meget arbejde der blev udført. Leverandører tæller også disse forskelligt, og en rettighed målt i brugere kan ikke sammenlignes med en graf målt i sessioner. At vælge den forkerte er, hvordan en kapacitetsplan ender med at blive dimensioneret til den forkerte mængde.

Genopkoblinger er der, hvor sessionstællinger stille puster sig op. En klient, der falder hvert par minutter og kobler op igen, producerer snesevis af sessionsposter for én person, så en rapport, der tæller sessioner som mennesker, vil overdrive brugen netop under de forhold, hvor pålideligheden er værst. Skriv reglen ned: en ny session efter en genopkobling tæller særskilt, eller den fortsætter den forrige inden for et defineret tidsvindue.

Adresser er den svageste identitet, der findes. En tunneladresse kan tildeles en anden bruger få minutter senere, og to brugere kan dele én adresse gennem oversættelse. Knyt kontoidentifikatoren fra godkendelseshændelsen på i stedet for at udlede en person af en adresse i en log.

Prøv definitionen af på én rigtig dag

Tag en enkelt dags logfiler og tæl den samme trafik på tre måder. Hvis de tre tal ligger tæt på hinanden, betyder definitionen måske ikke så meget for dit formål; hvis de afviger med en stor faktor, skal rapporten sige, hvilken den bruger.

journalctl -u openvpn-server@server --since "2026-10-01" --until "2026-10-02" | grep -c "Initialization Sequence Completed"
journalctl -u openvpn-server@server --since "2026-10-01" --until "2026-10-02" | grep -c "Peer Connection Initiated"
awk '/VERIFY OK/ {print $NF}' /var/log/openvpn-server.log | sort -u | wc -l

Kør den samme udtrækning på en dag med et kendt udfald og sammenlign formen i stedet for totalen. En dag, hvor uplinket flimrede, bør vise en spids i forbindelseshændelser med en beskeden stigning i forskellige konti, og hvis den ikke gør det, måler tælleren sandsynligvis noget andet, end rapporten påstår.

Gem selve forespørgslen ved siden af resultatet. Alle kan genskabe et dokumenteret filter, og et tal uden sit filter kan ikke revideres.

Rapporter, hvad hændelsen fastslår

Et mislykket forsøg fortjener sin egen kategori i stedet for at blive foldet ind i en af siderne. Fejl omfatter forkert indtastede adgangskoder, klienter med en forældet profil og bevidst scanning, og de tre har forskellige svar. En fejl er ikke bevis på et vellykket indbrud, og den er heller ikke bevis på uskadelighed.

Skriv konklusionen med den styrke, hændelsen understøtter: denne konto godkendte sig over for denne tjeneste i dette vindue, fra denne kilde, og sessionen nåede initialisering. Alt om, hvad brugeren derefter gjorde, kræver en post på applikationssiden i stedet for flere tunnedata.

Når rapporten går til nogen, der skal træffe en beslutning om licensering, kapacitet eller sikkerhed, så sæt definitionen i første linje i stedet for i en fodnote. Definitionen er fundet, og tallet giver kun mening indeni den.

Relaterede artikler