Kolm kella ühes VPN-logis: klient, lüüs, koguja
Kliendi logi, lüüsi kirje ja saabumine kogujasse on kolm sündmust kolme kellaga. Tehke kindlaks allikas, enne kui võrdlete ajatempleid.
VPN-i juhtumi ajajoon algab tavaliselt kahe ajatempliga, mis erinevad mõne minuti võrra, ja ekraaniga, mis näitab teist tundi. Kiusatus on valida üks õigena ja teine ümber kirjutada. Mõlemad võivad olla õiged, sest need kirjutasid erinevad kellad erinevate sündmuste kohta. Müüt on see, et VPN-il on üks kell; töö on välja selgitada, milline komponent iga välja kirjutas.
Müüt: VPN-il on üks kell
Klient kirjutab sündmuse, kui ta üritab ühendust luua. Lüüs kirjutab sündmuse, kui ta selle katse vastu võtab või heaks kiidab. Koguja kirjutab saabumisaja, kui ta lüüsi sõnumi kätte saab. Need on kolm sündmust ja igaüks neist on tembeldatud selle kellaga, mida kirjutav komponent usaldas. Nende kokkusurumine üheks ajajooneks on mugavus, mis peidab lahknevuse, mida te püüate seletada.
Numbrid erinevad tavaliselt sekunditest minutiteni ja see on normaalne. Tähtis on, kas erinevus on kohaletoimetamise viivitus, kella nihe või tõeliselt teine sündmus. Otsustamaks, mida te vaatate, on vaja iga välja päritolu, mitte tugevamat arvamust selle kohta, millisel masinal on õigus.
Lugege enne väärtust allikat
Enne väärtuste võrdlemist tehke kindlaks, kes igaühe tekitas ja millise väljaga on tegu. Syslog-sõnum kannab allika ajatemplit, nagu kirjeldab RFC 5424, ja vorming võib kanda ka aja kvaliteedi teavet, mis kirjeldab sünkroonimist ja täpsust. Sama vorming lubab allikal üldse ajatemplit mitte saata, kui ta ei suuda süsteemiaega lugeda, mis iseenesest on kasulik signaal.
journalctl -o short-iso --utc -n 20
logger -t vpn-check "test event"
Klient võib saata ka ajaväärtuse rakenduse metaandmetena ja teenus, mis seda salvestab, peaks märgistama selle kliendi teatatud väärtusena, selle asemel et kohelda seda iseseisvalt kontrollituna. See märgis on erinevus tõendi ja väite vahel. Kui ekspordite logisid juhtumi jaoks, hoidke välja nimi, päritolu ja nihe koos. Nende taandamine mugavaks kohalikuks ajaks hävitab täpselt selle teabe, mida vajate.
Peatuge, kui ei oska öelda, milline komponent välja kirjutas. Selle võrdlemine millegi muuga on oletamine.
Ajavööndi kuvamine ei ole teine hetk
Sama hetk, mis on kuvatud kujul 10:00Z ja 18:00+08:00, ei ole lahknevus, ja selle lahknevusena käsitlemine raiskab pool päeva. Enne võrdlemist teisendage mõlemad UTC-sse ja hoidke algne tekst teisenduse kõrval. Kümnendmurd ühel pool ja terved sekundid teisel pool ei ole samuti vastuolu. Täpsus ei ole õigsus: millisekunditega väärtus võib ikkagi tulla kellast, mis eksib minutitega.
date -u +%FT%TZ
timedatectl
Kohaletoimetamise viivitus on teine tavaline seletus. Lüüs registreerib, millal ta ühenduse vastu võttis, ja koguja registreerib, millal sõnum temani jõudis, seega nende vaheline vahe on edastusaeg. See vahe räägib logiahelast, mitte VPN-i sessioonist. Märgistage see saabumisajana ja see lakkab võistlemast sündmuse ajaga.
Korreleerige ilma tõendeid ümber kirjutamata
Säilitage algupärased ajatemplid ja lisage tuletatud veerg, kui vajate ühist vaadet. Selgitage teisendust märkmetes, selle asemel et lähtekirjeid muuta, sest allikas on see, mida hilisem ülevaataja kontrollib. Säilitage koguja saabumisaeg eraldi seal, kus see olemas on.
chronyc tracking
journalctl --utc -u openvpn-client@work -n 50 --no-pager
Seadme kella muutmine ei ole privaatsuskontroll ja ei kirjuta ümber kirjeid, mida teine süsteem juba hoiab. See teeb ka toe tõendid raskemini võrreldavaks ja võib rikkuda sertifikaadi- ja koodikontrolle, mis sõltuvad ajast. Hoidke kellad tavakasutuseks sünkroonis ja käsitlege igasugust tahtlikku nihet uurimist vajava rikkena. Kui kaks kirjet tunduvad järjekorrast väljas, vaadake kella sünkroonimist ja kohaletoimetamist, enne kui uue ajaloo koostate.
Müüt, millest tuleb loobuda, on see, et on olemas üks VPN-i aeg. Küsige, mis iga välja kirjutas ja mis juhtus, kui see seda tegi, ja ajajoon muutub märgistatud vaatluste kogumiks, mitte vastuoluks.