Ang mga update na walang nagbabantay ay makatwirang patakaran para sa server na naaabot mo sa sarili nitong VPN, at kasabay nito ay isang punto ng pagkabigo na ikaw mismo ang gumawa. Ang operasyon ng pakete ay nagre-restart ng serbisyo, bumabagsak ang tunnel, at ang daang administratibo na ginagamit mo ay nawawala kasama nito. May dalawang modelo ng pagbangon, at ang pagpili sa pagitan nila ay nakasalalay sa isang kundisyon: kung mayroon kang daan ng pagpasok na hindi dumadaan sa bagay na ina-update.

Dalawang modelo ng pagbangon, isang tiyak na kundisyon

Ang unang modelo ay nagtitiwala sa update at ipinapalagay na makakakonekta ka muli pagkatapos. Gumagana ito kapag ang VPN ay isa sa ilang paraan upang maabot ang host at kapag ang pagkabigo ng tunnel ay hindi nag-aalis ng kakayahan mong i-diagnose ito. Ang ikalawang modelo ay naglalagay nang maaga ng malayang daan, kadalasan ang console ng hosting provider, at tinatrato ang tunnel bilang bagay na malamang na sirain ng maintenance. Ang dalawang modelo ay maipagtatanggol, at isa lamang sa kanila ang nangangailangan ng gawaing maaga.

Ang tiyak na kundisyon ay madaling sabihin at madaling laktawan. Kung ang bawat daang administratibo patungo sa makina ay dumadaan sa serbisyong ina-update, wala kang anumang modelo ng pagbangon, mayroon ka lamang inaasahan. Sabihin ito nang malakas sa pagsusuri ng pagbabago.

Ang pagsubok sa kundisyong iyon ay tumatagal ng sampung minuto at dapat mangyari bago ang unang update na walang nagbabantay, hindi habang may insidente. Buksan ang console habang gumagana ang lahat, kumpirmahin na wasto ang mga kredensyal, at isara itong muli. Kumpirmahin na ang console ay bumubukas sa host na iniisip mo. Pagkatapos ay kumpirmahin na ang login na talagang gagamitin mo nang alas-3 ng umaga ay gumagana pa rin.

Ang huling bahaging iyon ay mas mahalaga kaysa sa tunog nito. Ang account sa console na ang password ay pinalitan anim na buwan na ang nakalipas at hindi kailanman na-verify ay hindi daan ng pagbangon; ito ay dokumentong naglalarawan ng isang daan.

Ano ang hindi naibabalik ng backup

Ang archive ng configuration ay talaan ng mga file, at ang update ay nagbabago ng higit pa sa mga file. Ang estado ng pakete, mga module ng kernel, mga naka-enable na link ng unit at mga patakaran ng firewall na inilapat sa pamamagitan ng hiwalay na tool ay naninirahan sa labas ng direktoryo ng configuration, at ang pagbabalik na nagwawalang-bahala sa kanila ay gumagawa ng makina na mukhang naka-configure at hindi nagpapasa.

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

Ang awtorisasyon ay karapat-dapat sa sarili nitong linya. Ang backup na kinuha bago alisin ang isang kompromisadong aparato ay masayang ibabalik ang akseso ng aparatong iyon. Ang pagbabalik doon habang may pagkawala ng serbisyo ay paraan upang ang isang insidente ay maging dalawa, at ang desisyon na magbalik ay dapat gawin tungkol sa mga peer nang kasing tahasan ng paggawa nito tungkol sa mga file.

Mahalaga rin ang mekanismo ng pag-urong. Ang pagkopya ng mas lumang executable sa ibabaw ng pinamamahalaan ng pakete ay hindi ang sinusuportahang pagbaliktad ng pagbabago ng pakete, at iniiwan nito ang database ng pakete na naglalarawan ng estadong hindi tugma ng file system. Gamitin ang sariling daan ng downgrade ng package manager o ang snapshot na iniaalok ng provider. Ang downgrade na itinatala ng database ng pakete ay isa na maaari mong ulitin.

Wala sa mga ito ang nagsasalungat sa mga backup. Ito ay sumasang-ayon sa pag-alam kung aling layer ang sakop ng bawat artifact, dahil ang paraan ng pagkabigo ng isang bahagyang pagbabalik ay mas nakalilito kaysa sa orihinal na pagkawala ng serbisyo. Isulat ang layer sa tabi ng bawat backup sa runbook.

Checkpoint, update, pagkatapos ay beripikasyon mula sa labas

Itala ang estado bago ang pagbabago sa anyong maihahambing mo mamaya: ang mga naka-install na bersyon, ang mga unit ng serbisyong sangkot, ang mga socket na nakikinig at ang kasalukuyang listahan ng peer. Apat na utos ang sumasaklaw sa halos lahat nito sa isang Linux host.

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

Ang una ay nagpapakita kung aling mga unit ang umiiral at kung tumatakbo ang mga ito, kinukumpirma ng ikalawa na ang tagapakinig ay tunay na nakatali, at ang ikatlo ay nagbibigay sa iyo ng sariling salaysay ng serbisyo tungkol sa mga nakaraang minuto. Wala sa mga ito ang nagpapatunay na makakakonekta ang isang kliyente, kaya ang susunod na hakbang ay nangyayari sa labas ng host. Itago ang mga pagbasang iyon bilang iyong batayan ng paghahambing.

Beripikahin mula sa isang network na hindi gumagamit ng tunnel: i-authenticate ang isang awtorisadong kliyente, lutasin ang isang pangalan, at maabot ang isang nilalayong aplikasyon. Ang lokal na linya ng estado na nagsasabing nakataas ang interface ay pahayag tungkol sa interface, hindi tungkol sa routing, mga key o patakarang tumatanggap ng peer.

Pagkatapos ay sadyang subukan ang daan ng muling pagkonekta. I-restart ang serbisyo nang isang beses at kumpirmahin na bumabalik ang tunnel nang walang manu-manong interbensyon, dahil ang serbisyong nagsisimula nang tama lamang sa boot ay serbisyong magugulat sa iyo sa pinakamasamang sandali.

Kapag nabigo ito, gamitin ang daang sinubukan mo

Ang pagkakasunod-sunod ng pagbangon ay hindi marangya at gumagana ito: maabot ang host sa malayang daan, basahin ang sariling mga log ng serbisyo, at ibalik ang partikular na checkpoint na tumutugma sa pagkabigo. Baguhin ang isang bagay sa bawat pagtatangka upang ang susunod na pagbasa ng log ay may kahulugan.

Labanan ang udyok na gumawa ng ilang hindi naitalang pagbabago upang maibalik ang konektibidad. Ang makinang naayos sa pamamagitan ng limang sabay na pag-edit ay hindi maipapaliwanag pagkatapos, at ang susunod na update ay magbabalik sa alinman sa mga iyon na talagang nagdala ng karga.

Pagkatapos ay magpasya ng permanenteng patakaran na may ebidensya. Kung ang update ay naglantad ng dependency na walang nagdokumento, ang pagwawasto ay dokumentasyon at isang pagsubok, hindi ang pagpatay sa mga update. Kung naglantad ito ng serbisyong hindi malinis na makapagsimula muli, ang pagwawasto ay nasa unit, hindi sa iskedyul.

Ang paghahambing ay malinis na nareresolba kapag ang kundisyon ay may pangalan. Ang malayang daan ay ginagawang mapapamahalaang panganib ang mga update na walang nagbabantay. Ang kawalan nito ay ginagawang naka-iskedyul na pagkawala ng serbisyo na may hindi kilalang oras ng pagbangon ang parehong patakaran, at walang dami ng automation ang nagbabago sa aritmetikang iyon.

Kaugnay na mga artikulo