Senprizorgaj ĝisdatigoj estas racia politiko por servilo, kiun vi atingas tra ĝia propra VPN, kaj ili samtempe estas unu sola punkto de memkaŭzita fiasko. La paka operacio restartigas la servon, la tunelo falas, kaj la administra vojo, kiun vi uzis, malaperas kune kun ĝi. Ekzistas du restarigaj modeloj, kaj la elekto inter ili dependas de unu kondiĉo: ĉu vi havas eniron kiu ne trapasas la aferon, kiu estas ĝisdatigata.

Du restarigaj modeloj, unu decida kondiĉo

La unua modelo fidas la ĝisdatigon kaj supozas, ke vi povos rekonekti poste. Ĝi funkcias, kiam la VPN estas unu el pluraj manieroj atingi la gastigan maŝinon kaj kiam la fiasko de la tunelo ne forprenas vian kapablon diagnozi ĝin. La dua modelo antaŭe lokas sendependan vojon, kutime la konzolon de la gastiga provizanto, kaj traktas la tunelon kiel tion, kion prizorgado plej verŝajne rompos. Ambaŭ modeloj estas defendeblaj, kaj nur unu el ili postulas antaŭan laboron.

La decidan kondiĉon facilas eldiri kaj facilas preterpasi. Se ĉiu administra vojo al la maŝino iras tra la servo, kiu estas ĝisdatigata, vi tute ne havas restarigan modelon, nur atendo. Diru tion laŭte en la revizio de la ŝanĝo.

Testi tiun kondiĉon daŭras dek minutojn kaj devas okazi antaŭ la unua senprizorga ĝisdatigo, ne dum la incidento. Malfermu la konzolon dum ĉio funkcias, konfirmu, ke la legitimiloj estas validaj, kaj fermu ĝin denove. Konfirmu, ke la konzolo malfermiĝas al la gastiga maŝino, kiun vi pensas. Poste konfirmu, ke la ensaluto, kiun vi vere uzus je la 3-a matene, ankoraŭ funkcias.

Tiu lasta parto gravas pli, ol ĝi sonas. Konzola konto, kies pasvorto estis ŝanĝita antaŭ ses monatoj kaj neniam kontrolita, ne estas restariga vojo; ĝi estas dokumento priskribanta tian vojon.

Kion sekurkopio ne restarigas

Konfigura arkivo estas registraĵo de dosieroj, kaj ĝisdatigo ŝanĝas pli ol dosierojn. Paka stato, kernaj moduloj, ŝaltitaj unuaj ligiloj kaj fajroŝirmaj reguloj aplikitaj per aparta ilo ĉiuj vivas ekster la konfigura dosierujo, kaj restarigo, kiu ignoras ilin, produktas maŝinon, kiu aspektas agordita kaj ne plusendas.

What changedRestored by a configuration backupNeeds its own action
Service unit or startup orderingPartly, if the unit file was includedPackage state and enabled links
Kernel module or interface supportNoKernel or module rollback, or a boot-time decision
Peer or device authorizationOnly if the backup predates the revocationA deliberate decision about which peers return
Firewall rules applied outside the configOnly if they were capturedReplaying and verifying each rule

Rajtigo meritas sian propran linion. Sekurkopio farita antaŭ ol kompromitita aparato estis forigita volonte restarigos la aliron de tiu aparato. Reveni al ĝi dum interrompo estas kiel unu incidento fariĝas du, kaj la decido restarigi devus esti farata pri kunuloj same eksplicite kiel pri dosieroj.

Ankaŭ la mekanismo de la retroigo gravas. Kopii pli malnovan plenumeblon super unu administrata de pako ne estas la subtenata malfaro de paka ŝanĝo, kaj ĝi lasas la pakan datumbazon priskribi staton, kiun la dosiersistemo ne kongruas. Uzu la propran malaltigan vojon de la paka administranto aŭ la momentaĵon, kiun la provizanto ofertas. Malaltigo, kiun la paka datumbazo registras, estas unu, kiun vi povas ripeti.

Nenio el tio argumentas kontraŭ sekurkopioj. Ĝi argumentas por scii, kiun tavolon ĉiu artefakto kovras, ĉar la fiaskmaniero de parta restarigo estas pli konfuza ol la originala interrompo. Skribu la tavolon apud ĉiu sekurkopio en la runbook.

Kontrolpunkto, ĝisdatigo, poste kontrolo de ekstere

Registru la staton antaŭ la ŝanĝo en formo, kiun vi povos kompari poste: la instalitajn versiojn, la koncernajn servajn unuojn, la aŭskultantajn ingojn kaj la nunan liston de kunuloj. Kvar komandoj kovras la plejparton de tio sur Linuksa gastiga maŝino.

systemctl list-units --type=service | grep -E 'openvpn|wg-quick'
ss -lunp | grep -E ':51820|:1194'
journalctl -u wg-quick@wg0 --since '-10 min'

La unua montras, kiuj unuoj ekzistas kaj ĉu ili funkcias, la dua konfirmas, ke la aŭskultanto estas vere ligita, kaj la tria donas al vi la propran rakonton de la servo pri la lastaj minutoj. Neniu el ili pruvas, ke kliento povas konektiĝi, tial la sekva paŝo okazas ekster la gastiga maŝino. Konservu tiujn legaĵojn kiel vian komparan bazlinion.

Kontrolu el reto, kiu ne uzas la tunelon: aŭtentigu unu rajtigitan klienton, solvu nomon, kaj atingi unu celatan aplikaĵon. Loka statusa linio diranta, ke la interfaco estas supren, estas aserto pri la interfaco, ne pri enkursigo, ŝlosiloj aŭ la politiko, kiu akceptas kunulon.

Poste intence testu la rekonektan vojon. Restartigu la servon unufoje kaj konfirmu, ke la tunelo revenas sen mana interveno, ĉar servo, kiu ĝuste startas nur ĉe la praŝargo, estas servo, kiu surprizos vin en la plej malbona momento.

Kiam ĝi fiaskas, uzu la vojon, kiun vi testis

La restariga sinsekvo ne estas glorema kaj ĝi funkcias: atingi la gastigan maŝinon tra la sendependa vojo, legi la proprajn protokolojn de la servo, kaj restarigi la konkretan kontrolpunkton, kiu respondas al la fiasko. Ŝanĝu unu aferon po provo, por ke la sekva legado de la protokolo signifu ion.

Rezistu la impulson fari plurajn neregistritajn ŝanĝojn por reakiri konektecon. Maŝino riparita per kvin samtempaj redaktoj ne povas esti klarigita poste, kaj la sekva ĝisdatigo reenkondukos tiun el ili, kiu efektive portis la ŝarĝon.

Poste decidu la daŭran politikon kun pruvoj. Se la ĝisdatigo malkovris dependecon, kiun neniu dokumentis, la riparo estas dokumentado kaj testo, ne malŝalti ĝisdatigojn. Se ĝi malkovris servon, kiu ne povas restarti pure, la riparo estas en la unuo, ne en la horaro.

La komparo solviĝas pure, tuj kiam la kondiĉo estas nomita. Sendependa vojo faras senprizorgajn ĝisdatigojn regebla risko. Ilia manko faras la saman politikon planita interrompo kun nekonata restariga tempo, kaj neniu kvanto da aŭtomatigo ŝanĝas tiun aritmetikon.

Rilataj artikoloj