Övervakning av en VPN-peer kräver fyra fakta, och ingen av dem är en destination. Om tunneln är uppe, när den senast utbytte trafik, vilka nycklar som är inblandade och hur mycket som flyttades räcker för tillgänglighet. Allt därutöver är en registrering om en person, och det bör vara ett medvetet beslut snarare än en bieffekt av att öppna en statussida. Börja med frågan du måste besvara och välj sedan den minsta utdata som besvarar den.

Avgör frågan före verktyget

Skriv först den operativa frågan: är den här peeren ansluten, och flyttar den trafik? Den frågan kräver en livevy, och en livevy har inget bevarandeproblem. En andra fråga, om peeren var ansluten klockan 02:00 i tisdags, kräver en lagrad serie och därmed ett bevarandebeslut. Att skilja de två är hela designen, eftersom livevyn är billig medan den lagrade serien blir ett samtal om dataskydd.

Håll hälsokontrollen också åtskild från statusutdata. En ny handskakning bevisar att tunneln har förhandlat, inte att den privata applikationen bakom fungerar, så testa applikationen genom en auktoriserad kontroll i stället för att härleda det från räknare. När kontrollen misslyckas och handskakningen är ny ligger problemet bortom tunneln.

Läs de tre fält som besvarar den

WireGuards vanliga statusutdata innehåller gränssnittet, den publika nyckeln, ändpunkten, senaste handskakning och överföringsräknare. Närvaro kräver den publika nyckeln och senaste handskakning; lägg till byteräknarna om du måste, för att se rörelse. Ändpunkten behövs inte för närvaro och är det första fältet att släppa, eftersom det identifierar varifrån en enhet ansluter. Manualsidan beskriver varje fält som verktyget skriver ut, och den är kort nog att läsas en gång:

wg show
wg show wg0 latest-handshakes

Läs talen som ålder i stället för som booleska värden. En handskakning är bara aktuell i förhållande till protokollets eget nyckelförnyelseintervall, och en räknare som inte har rört sig kan betyda en inaktiv peer i stället för en trasig. Håll båda i samma vy så att ålder och rörelse läses tillsammans.

Välj ett intervall du kan försvara

Varje statusprov är en registrering, så intervallet är ett bevarandebeslut med en övervakningsetikett. Ett prov var tionde sekund ger fin detalj och multiplicerar de lagrade raderna, medan ett prov per minut oftast räcker för tillgänglighet till en sjättedel av kostnaden. Välj intervallet utifrån den svarstid du lovat och inte utifrån vad verktyget kan. Skriv sedan talet bredvid instrumentpanelen.

För OpenVPN skriver statusfunktionen en fil med ett konfigurerat intervall. I serverkonfigurationen ser det ut så här status /var/log/openvpn-status.log 60, där talet i slutet är sekunderna mellan omskrivningarna, och filen ersätts i stället för att läggas till. Den detaljen spelar roll: en ersatt fil har ingen historik, medan en insamlare som lägger till skapar en.

Bekräfta att insamlaren också respekterar intervallet. Ett verktyg som samplar varje sekund och lagrar en rad i minuten läser fortfarande varje sekund.

Håll etiketterna stabila och mappningen begränsad

En publik nyckel identifierar en enhetsrelation även när inget namn är fäst, så behandla nyckeln som personuppgift i stället för som en ogenomskinlig identifierare. Märk peers med stabila interna identifierare som överlever återanslutningar, och håll mappningen från identifierare till person på en begränsad plats. En instrumentpanel som skriver en tidsserie är en lagrad registrering även när VPN:n inte för någon egen fil. När instrumentpanelen är den enda lagringen är det där bevaranderegeln gäller.

Gå igenom exportvägen också, eftersom en kopierad CSV överlever systemet som producerade den. Aggregerad tillgänglighet räcker ofta för en rapport: andelen peers med en handskakning inom fönstret besvarar den operativa frågan utan att lista vem som var ansluten när.

Dokumentera vad du samlar in och vad du inte gör

Skriv insamlingsbeskrivningen på klart språk: vilka fält, från vilket gränssnitt, med vilket intervall, lagrade var, bevarade hur länge och vem som får läsa dem. Sätt den bredvid runbooken i stället för i ett policyförråd som ingen öppnar under en incident. Beskrivningen bör också säga vad övervakningen inte kan se, eftersom det är det som hindrar någon från att anta att avsaknad av surfdata betyder avsaknad av registreringar.

Gå igenom bevarandefönstret varje gång övervakningen ändras, eftersom ett nytt fält tyst förlänger det som bevaras. Radera sedan det beskrivningen säger att du raderar, och verifiera att raderingen faktiskt skedde.

Relaterade artiklar