Kaip saugiai atkurti VPN serverio konfigūraciją
Atkūrimas grąžina žinomai gerą tinklo politiką, o ne seniausią failą, kurį rasite. Laikykite panaikinimus aktualius, o valdymo kelią – už tunelio ribų.
Serverio atkūrimas yra sprendimas, kuris sluoksnis sugedo, o ne failų kopijavimo pratimas. Konfigūracija, prisijungimo duomenys ir paketų versijos juda skirtingais laikrodžiais, o atkūrus vieną, kol kiti lieka aktualūs, gaunamas pagrindinis kompiuteris, kuris atrodo sveikas ir elgiasi nenuosekliai. Toliau pateikta seka daro prielaidą, kad pakeitimas jau nepavyko, ir prašo atkurti mažiausią nuoseklią būseną. Pereikite ją iš eilės ir laikykite už juostos ribų atliekamą prieigos patikrą žingsniu, kurio niekas neturėtų praleisti.
Sukurkite kontrolinį tašką, kurį tikrai galite atkurti
Užsirašykite konfigūraciją, kurią paslauga skaito paleidimo metu, kartu su versija, kuri ją paskutinį kartą apdorojo. Failas, kuris senesniame leidime įkeldavo švariai, po atnaujinimo gali būti atmestas arba tyliai ignoruojamas, todėl versija priklauso tai pačiai pastabai. Įtraukite medžiagą, į kurią nurodo konfigūracija: privačius raktus, sertifikatų kelius, klausytojų apibrėžimus ir DNS bei ugniasienės įrašus, kurie daro paslaugą pasiekiamą. Jei atkūrimui prireiktų failo, kurio neįrašėte, kontrolinis taškas yra neužbaigtas.
Įvardykite kiekvieno nustatymo savininką, kol sistema dar sveika. Maršrutas, kurį įdiegia tiekėjo skydelis, maršrutas, kurį prideda pagrindinio kompiuterio ugniasienė, ir maršrutas, kuris nusiunčiamas klientams, yra trys skirtingi objektai, o atkūrus netinkamą, kiti du lieka vietoje. Pakanka trumpos lentelės su nustatymu, savininku ir failo keliu.
Laikykite panaikinimus atskirai nuo konfigūracijos
Sena konfigūracija gali tyliai vėl prijungti įrenginį, kurį sąmoningai pašalinote, o tai paverčia atkūrimą saugumo regresija. Išsaugokite dabartinį panaikinimų sąrašą ir išjungtas paskyras, kol atkuriate tinklo politiką, tada vėl jas pritaikykite, prieš paslaugai priimant klientus.
Traktuokite tapatybės būseną kaip atskirą atkūrimą su savais įrodymais. Sertifikatų panaikinimo failai, paskyrų išjungimas ir MFA registracija retai būna toje pačioje vietoje kaip demono konfigūracija, o konfigūracijos atkūrimas jų nelies. Pirmiausia patikrinkite dabartinę būseną, kad žinotumėte, kas turi išlikti. Po atkūrimo patvirtinkite, kad pašalinta tapatybė vis dar negali prisijungti.
Pasiekite pagrindinį kompiuterį, kai tunelis sugenda
Atverkite kelią į mašiną, kuris nepriklauso nuo keičiamo komponento. Hipervizoriaus konsolė, valdymo adresas atskiroje sąsajoje arba nuoseklioji konsolė visi tinka; SSH sesija, perduodama per tunelį, netinka. Jei vienintelis įėjimas yra VPN, kurį ketinate paleisti iš naujo, blogas maršrutas ar ugniasienės taisyklė atima galimybę jį pataisyti. Išbandykite alternatyvų kelią prieš pakeitimą, o ne po jo. Prisijunkite per jį vieną kartą, patvirtinkite, kad sudo veikia, ir užsirašykite tikslų adresą, kurį naudojote.
Bandymas paprastas: nuleiskite tunelį, būdami prisijungę per alternatyvų kelią, ir pažiūrėkite, ar sesija išlieka. Jei ji nutrūksta, gedimą radote anksčiau, nei jis galėjo jus įstrigti.
Taikykite vieną pataisą ir žinokite, kada ji įsigalioja
Naudokite paslaugos reload arba restart dokumentaciją ir išsiaiškinkite, kurios direktyvos kada skaitomos. Kai kurios reikšmės taikomos reload metu, kitos tik prasidėjus naujai sesijai ar procesui, todėl failo redagavimas nieko neįrodo apie veikiančią būseną. Atkurkite vieną pataisą, o ne maišykite naują failą su sena vykdymo būsena. Abejodami lengviau pagrįsti visišką paslaugos paleidimą iš naujo nei dalinį reload.
Prieš rinkdamiesi patikrinkite įrenginio apibrėžimą: systemctl show -p ExecReload openvpn@server pasako, ar reload kabliukas apskritai egzistuoja. Tada pritaikykite pataisą ir perskaitykite žurnale pirmąsias naujas klaidas, prieš ką nors kitą keisdami.
Patikrinkite, užsirašykite ir po to ištirkite
Prijunkite vieną įgaliotą klientą ir išbandykite, kam paslauga skirta: vardų skiriamajai gebai, prisijungimui iš naujo ir programai, kuri sugedo. Patvirtinkite, kad panaikinta tapatybė vis dar atmetama. Užsirašykite atkurtą pataisą, laiką ir priežastį, nes kitam operatoriui prireiks visų trijų. Atkūrimas, kurio niekas nedokumentavo, tampa mįsle kitą kartą, kai paslauga elgsis netinkamai.
systemctl status openvpn@server --no-pager
journalctl -u openvpn@server -n 50 --no-pager
Kai paslauga bus stabili, atkurkite nepavykusį pakeitimą pagrindiniame kompiuteryje ar momentinėje kopijoje, kurią galite išmesti. Tai atskiria blogą konfigūraciją nuo blogo paketo ar pasibaigusio sertifikato. Laikykite atkurtą konfigūraciją versijų kontrolėje, kad kitas kontrolinis taškas prasidėtų nuo žinomo commit. Pratimo esmė – dokumentuotas galutinis taškas, o ne nuolatinis versijos sumažinimas.