Overvåk VPN-peers uten å logge hvor de surfer
Tilgjengelighet krever fire felt, ikke en opptak. Les handshakes og tellere med et dokumentert intervall, hold etikettene stabile og sett en oppbevaringsregel.
Overvåking av en VPN-peer krever fire fakta, og ingen av dem er en destinasjon. Om tunnelen er oppe, når den sist utvekslet trafikk, hvilke nøkler som er involvert og hvor mye som flyttet seg er nok for tilgjengelighet. Alt utover det er en registrering om en person, og det bør være en bevisst beslutning snarere enn en bivirkning av å åpne en statusside. Start med spørsmålet du må svare på, og velg deretter den minste utdataen som svarer på det.
Avgjør spørsmålet før verktøyet
Skriv først det operative spørsmålet: er denne peeren tilkoblet, og flytter den trafikk? Det spørsmålet trenger en live visning, og en live visning har ingen oppbevaringsproblematikk. Et andre spørsmål, om peeren var tilkoblet klokken 02:00 sist tirsdag, trenger en lagret serie og dermed en oppbevaringsbeslutning. Å skille de to er hele designet, fordi live visningen er billig mens den lagrede serien blir en samtale om personvern.
Hold helsesjekken også atskilt fra statusutdataen. En nylig handshake beviser at tunnelen har forhandlet, ikke at den private applikasjonen bak fungerer, så test applikasjonen gjennom en autorisert sjekk i stedet for å utlede det fra tellere. Når sjekken feiler og handshaken er nylig, ligger problemet på den andre siden av tunnelen.
Les de tre feltene som svarer på det
Den vanlige statusutdataen fra WireGuard inneholder grensesnittet, den offentlige nøkkelen, endepunktet, siste handshake og overføringstellere. Tilstedeværelse trenger den offentlige nøkkelen og siste handshake; legg til byttetellerne hvis du må, for å se bevegelse. Endepunktet er ikke nødvendig for tilstedeværelse og er det første feltet som bør droppes, fordi det identifiserer hvor en enhet kobler til fra. Manuelsiden beskriver hvert felt verktøyet skriver ut, og den er kort nok til å leses én gang:
wg show
wg show wg0 latest-handshakes
Les tallene som alder i stedet for som boolske verdier. En handshake er bare aktuell relativt til protokollens eget nøkkelfornyelsesintervall, og en teller som ikke har beveget seg kan bety en inaktiv peer i stedet for en ødelagt. Hold begge i samme visning slik at alder og bevegelse leses sammen.
Velg et intervall du kan forsvare
Hver statusprøve er en registrering, så intervallet er en oppbevaringsbeslutning med en overvåkingsetikett. En prøve hvert tiende sekund gir fin detalj og multipliserer de lagrede radene, mens en prøve hvert minutt vanligvis er nok for tilgjengelighet til en sjettedel av kostnaden. Velg intervallet ut fra responstiden du lovet, ikke ut fra hva verktøyet kan. Skriv deretter tallet ved siden av dashbordet.
For OpenVPN skriver statusfunksjonen en fil med et konfigurert intervall. I serverkonfigurasjonen ser det slik ut status /var/log/openvpn-status.log 60, der tallet til slutt er sekundene mellom omskrivingene, og filen erstattes i stedet for å legges til. Den detaljen betyr noe: en erstattet fil har ingen historikk, mens en innsamler som legger til, skaper en.
Bekreft at innsamleren også respekterer intervallet. Et verktøy som sampler hvert sekund og lagrer én rad i minuttet, leser fortsatt hvert sekund.
Hold etikettene stabile og kartleggingen begrenset
En offentlig nøkkel identifiserer en enhetsrelasjon selv når ingen navn er festet, så behandle nøkkelen som personopplysning i stedet for som en ugjennomsiktig identifikator. Merk peers med stabile interne identifikatorer som overlever gjentilkoblinger, og hold kartleggingen fra identifikator til person på et begrenset sted. Et dashbord som skriver en tidsserie er en lagret registrering selv når VPN-et ikke fører sin egen fil. Når dashbordet er det eneste lageret, er det der oppbevaringsregelen gjelder.
Gå gjennom eksportveien også, fordi en kopiert CSV overlever systemet som produserte den. Samlet tilgjengelighet er ofte nok for en rapport: andelen peers med en handshake innenfor vinduet svarer på det operative spørsmålet uten å liste opp hvem som var tilkoblet når.
Dokumenter hva du samler inn og hva du ikke gjør
Skriv innsamlingsbeskrivelsen i klart språk: hvilke felt, fra hvilket grensesnitt, med hvilket intervall, lagret hvor, oppbevart hvor lenge og hvem som kan lese det. Sett den ved siden av runbooken i stedet for i et policy-lager ingen åpner under en hendelse. Beskrivelsen bør også si hva overvåkingen ikke kan se, fordi det er det som hindrer noen i å anta at fravær av nettleserdata betyr fravær av registreringer.
Gå gjennom oppbevaringsvinduet hver gang overvåkingen endres, fordi et nytt felt stille forlenger det som oppbevares. Slett deretter det beskrivelsen sier du sletter, og verifiser at slettingen faktisk skjedde.