Záloha servera VPN: rozhodnite, čo musí byť obnoviteľné
Identita, konfigurácia a stav sú tri rôzne problémy zálohovania. Najprv rozhodnite cieľ obnovy, potom zachyťte jeden okamih a až potom otestujte obnovu.
Kopírovanie konfiguračného súboru nie je záloha a záloha, ktorú nikto nedokáže obnoviť, nie je plán. Archív musí obsahovať identitu služby, politiku okolo nej a stav, ktorý hovorí, ktoré zariadenia sú ešte povolené. Musí byť aj chránený, pretože vo väčšine nasadení archív dáva presne to, čo dáva VPN. Rozhodnutie, čo musí byť obnoviteľné, prichádza prvé; zoznam súborov z neho vyplýva.
Začnite cieľom obnovy
Napíšte, čo musí obnovený server robiť, skôr než vypíšete jediný súbor: ukončovať rovnaké tunely, predkladať rovnakú identitu a odmietať zariadenia, ktoré sú práve odvolané. Táto veta vylučuje väčšinu naivných kópií, pretože konfiguračný adresár zriedka obsahuje zoznam odvolaní alebo externú závislosť identity. Odhaľuje aj časti žijúce mimo hostiteľa, ako záznamy DNS, pravidlá cloudového firewallu a adresár, voči ktorému sa brána overuje. Plán, ktorý ich ignoruje, vytvorí obnovený server, ktorý vyzerá zdravo a nikoho nepustí.
Rozdeľte materiál do troch košov: identita, konfigurácia a stav. Identita sú kľúče, certifikáty a autorita, ktorá ich podpisuje. Konfigurácia sú nastavenia démona, fondy, trasy a politika firewallu, zatiaľ čo stav je sada protivníkov, účtov a odvolaní, ktorá sa mení každý deň.
Identitu už znova vygenerovať nemožno
Súkromné kľúče nemožno znovu vytvoriť z pamäti a certifikáty, ktoré od nich závisia, vypršia podľa harmonogramu, ktorý dedíte, a nie vyberáte. Zálohujte kľúč servera, materiál na prípravu klientov a certifikačnú autoritu, potom poznamenajte, ktoré z nich majú zostať offline. Kľúč autority, ktorý žije iba na bežiacej bráne, je jedno kompromitovanie od úplného resetu identity pre každého klienta. Zaznamenajte, čo sa zámerne ukladá inde, aby to nikto neduplikoval do archívu s nižšou ochranou.
Odvolanie si v pláne zaslúži vlastný riadok. Obnova včerajšej konfigurácie môže obnoviť identitu, ktorú ste dnes odstránili, čo mení obnovu na bezpečnostný incident. Uchovávajte aktuálny stav odvolaní na mieste nezávislom od snímky, ku ktorej by ste sa vracali, a po každej obnove ho skontrolujte.
Zachyťte stav v jednom okamihu
Kópia urobená počas zápisu služby vytvára nekonzistentný inventár a nekonzistentné údaje identity sú horšie ako staršia čistá kópia. Pre každé úložisko použite podporovanú cestu exportu a potom zaznamenajte čas snímky, pretože od neho závisí každá ďalšia otázka o obnove.
wg showconf wg0 > /srv/backup/wg0.runtime.conf
sqlite3 /var/lib/vpn/admin.db ".backup '/srv/backup/admin.db'"
cp -a /etc/wireguard /srv/backup/etc-wireguard
sha256sum /srv/backup/*.conf > /srv/backup/MANIFEST
Prvý príkaz vypíše bežiace rozhranie späť ako konfiguráciu, čo je najrýchlejší spôsob, ako zachytiť protivníkov pridaných ručne namiesto nástrojom správy; dokumentuje to manuál wg(8). Riadok sqlite je vzor pre databázu správy: príkaz zálohy vytvorí konzistentnú kópiu, zatiaľ čo zapisujúci pokračuje. Kópia adresára zachováva oprávnenia, čo je dôležité, pretože tie kľúčové súbory môže čítať len root. Manifest je to, čo vám umožní rozlíšiť úplný archív od skráteného.
Umožnite obnovu a potom ju vyskúšajte
Zašifrujte archív a kľúč na obnovu držte inde než na stroji, z ktorého prišiel. Záloha, ktorej prístupová fráza existuje iba na zlyhanom serveri, je záloha, ktorú nikto neotvorí. Obmedzte získanie na ľudí, ktorí už mohli spravovať bránu, a každé získanie zaznamenajte. Otestujte obnovu v izolovanej sieti, pretože klonovaná identita spustená vedľa produkcie vytvára dva servery odpovedajúce za ten istý kľúč protivníka.
Zdokumentujte výnimky rovnako starostlivo ako obsah. Pravidlá cloudového firewallu, záznamy DNS a externý adresár môžu každé potrebovať vlastný krok obnovy. Úspešná kópia súborov nie je dôkazom, že sa služba vráti; jediný dôkaz, ktorý sa počíta, je obnovený koncový bod, ktorý prejde tou istou akceptačnou skúškou ako originál.