Redigovati VPN dnevnik bez gubljenja tragova koji su važni
Uklonite sve što je upotrebljivo, zadržite jednu oznaku po stvarnoj vrijednosti i sačuvajte redoslijed i verzije. Redigovani dnevnik treba i dalje da omogući strancu da prati kvar.
Zalijepite dnevnik u nit za podršku, odgovor ukaže da sadrži vaš privatni ključ, a lijepljenje je trajno. Tiši kvar se pojavi kasnije, kada svaka adresa postane X i datoteka više ne dokazuje da su klijent i server bili različiti hostovi. Redakcijski prolaz uklanja ono što daje pristup ili imenuje osobu, a zadržava ono što objašnjava kvar. To je transformacija s pravilima, a ne brisanje s poljem za pretragu.
Redigovanje je transformacija, a ne brisanje
Dnevnik nosi strukturu kao i vrijednosti: ova adresa je razgovarala s onom, u ovo vrijeme, i handshake se zaustavio na ovom koraku. Vrijednosti su ono što datoteku čini opasnom za objavljivanje. Struktura je ono što je uopće čini vrijednom objavljivanja.
Brisanje cijelih redova uklanja oboje odjednom, zato skraćeni dnevnik često ne odgovara ni na šta. Sažimanje svake vrijednosti u jedan token ne uspijeva drugačije, jer dva različita peera postaju jedan akter. Oba prolaza mogu izgledati uredno i ipak uništiti dokaz. Test je može li čitalac koji nikada nije vidio vašu mrežu pratiti slijed i doći do zaključka do kojeg ste vi došli.
Prvo izvadak, zatim uklanjanje
Izrežite dio oko kvara prije nego što bilo šta uredite. Manji izvadak je lakše pregledati i manje je vjerovatno da nosi nešto što ste zaboravili da je u datoteci. Čuvajte netaknuti original u zaštićenom skladištu dok se problem ne zatvori. Redigovanje je gubitno, a sirova datoteka je jedini način da odgovorite na naknadno pitanje.
Pročitajte izvadak kao običan tekst prije nego što povjerujete da je naredba za izvoz uklonila privatne dijelove, jer izvoznici sažimaju i rotiraju polja umjesto da ih čiste. Debug i verbose režimi su najvjerovatnije mjesto za blok ključa ili ugrađenu akreditive. Otvorite datoteku u editoru koji prikazuje pune redove, a ne u pregledniku koji prelama i skriva kraj.
Šta mora otići, i to po redu
Počnite s materijalom koji daje pristup, jer promašaj tu završava vježbu: blokovi privatnih ključeva, lozinke, unaprijed dijeljeni ključevi, API tokeni, kodovi za oporavak. Oni nisu samo identifikacijski; upotrebljivi su svakome ko pročita nit. Prolaz koji ukloni sve ostalo a ostavi jedan od njih je propao.
Zatim sloj identiteta: korisnička imena, subjekti certifikata i serijski brojevi, identifikatori računa i svaka putanja koja sadrži ime osobe. Ništa od toga nije upotrebljivo samo, ali zajedno imenuje osobu, a to je dio koji javnoj niti ne treba.
Zatim topološki sloj, i tu ulazi prosuđivanje. Javne adrese, interne opsege i imena hostova moguće je zamijeniti kada njihovo otkrivanje ne služi nikakvoj dijagnostičkoj svrsi, a stabilne oznake pobjeđuju prazna polja. Redoslijed je važan jer su raniji slojevi apsolutni, a posljednji je odluka. Rad u tom redoslijedu vas takođe sprječava da provedete sat na imenima hostova dok blok ključa stoji u četrdesetom redu.
| Original kind | Replace with | Keep |
|---|---|---|
| Client address | CLIENT_A | Which side initiated |
| Server address | SERVER_B | Port and protocol |
| Username | USER_1 | The failure that mentions it |
| Hostname | HOST_1 | Resolution order |
Ne uništavajte odnose
Dajte svakoj stvarnoj vrijednosti jedan rezervisani znak i koristite ga iznova svaki put kada se ta vrijednost pojavi. Ako su dvije adrese bile različite, moraju ostati različite i nakon prolaza, inače će čitalac zaključiti da se klijent povezao sam sa sobom. Dosljednost je cijeli mehanizam: čitalac uči mapiranje gledajući kako se oznaka vraća. Jedan ponovno upotrijebljen token za dva aktera najbrži je način da dnevnik postane nečitljiv.
Redoslijed i vrijeme dio su iste strukture. Očuvajte slijed, a ako pomjerate vremenske oznake, pomjerite svaku za isti iznos i recite to u jednom redu. Miješanje izmijenjenih i stvarnih vremena gore je od uklanjanja, jer praznine tada izgledaju kao dokaz nečega što se nikada nije dogodilo.
Portovi, protokol i smjer ostaju kakvi jesu. Rezervisani znak na adresi ne zahtijeva rezervisani znak na portu.
Zadržite pitanje na koje dnevnik mora odgovoriti
Zapišite polja koja pomoćniku trebaju prije nego što počnete uređivati: tačan, nejavni tekst greške, verzije klijenta i servera, transport i koja je strana pokrenula pokušaj. To je ono što strancu omogućava da prepozna kvar. Držanje liste pored sebe pretvara prolaz u provjeru, a ne u nadu.
Kada šaljete datoteku, dodajte jedan red koji kaže šta je zamijenjeno, da niko ne provede sat dijagnostikujući ime hosta zamjenskog znaka. OpenVPN-ova dokumentacija o dijagnostičkim dnevnicima navodi polja koja nose njegovi dnevnici, a to je lista koju upravo mijenjate. Pitajte prije nego što pošaljete ispis memorije ili snimak paketa, i koristite kanal podrške koji možete provjeriti. Ti artefakti sadrže mnogo više od tekstualnog dnevnika, a nešto od toga nije vaše da objavite.
Pročitajte gotov izvadak jednom od prvog do posljednjeg reda, uključujući početak i kraj. Snimci ekrana zaslužuju više nepovjerenja od teksta, jer nose druge prozore, nazive računa i stavke menija.