Отворите конзолу, промените једно правило заштитног зида и тунел кроз који сте били повезани нестаје. Промена је била исправна, поновно учитавање није, и сада је једини пут назад у машину онај који сте управо покварили. Други пут унутра је дизајнерска одлука и мора да постоји пре испада, а не током њега.

Прегледајте шта вам је још остало

Почните од екрана конзоле пред собом и набројте путеве који не зависе од тунела. Веб конзола провајдера са серијском сесијом или VNC је један. Интерфејс за управљање на одвојеној мрежи је други. Физички приступ је трећи, и управо његово одсуство људи открију у најгорем тренутку.

PathDepends onUsually fails when
Provider consoleAccount access and the provider's own APICredentials live in a wiki only reachable over the tunnel
Management subnetA second interface and its own routingThe bad change was a global route or firewall policy
Second tunnelA different listener, port and credentialsBoth listeners were changed in the same edit
Physical or local consoleBeing in the buildingNobody has been in the building for a year

Читајте трећу колону као списак отказа, а не као апстракцију. Два од тих путева обично отказују из истог разлога. Табела је начин да то приметите пре него што вам испад то објасни.

Независност је питање зависности

Рачун за опоравак није независан ако је његова лозинка сачувана у сервису до којег стижете кроз тунел. Други VPN на истом хосту, истом порту и са истом политиком заштитног зида такође није независан, јер промена која је покварила први квари оба.

Спустите се низ ланац и именујте шта је потребно сваком кораку. Мрежна доступност, разрешавање имена, извор аутентификације и сама услуга управљања су четири одвојене зависности, а пут који дели било коју од њих наслеђује тај отказ.

Пут који никада није тестиран заслужује сопствену сумњу. Конзола која није отварана месецима може захтевати ресетовање лозинке путем е-поште, а то сандуче може бити хостовано на машини до које не стижете. Тестирајте пут док све ради и то ћете пронаћи у мирно поподне.

Искористите други пут за једну контролисану промену

Са конзоле направите снимак или копирајте конфигурацију коју ћете уређивати. Промените једну ствар. Поново учитајте услугу и прочитајте резултат пре него што дотакнете било шта друго, јер две промене одједном претварају опоравак у експеримент.

Држите сесију за опоравак отвореном док то радите. Цела вредност другог пута је у томе што он преживљава оно што мењате, па затварањем пре тога уклањате једино својство због којег је био користан.

Проверавајте са пута за опоравак, а не по сећању

Провера која је важна јесте да ли се нормални пут враћа, а сесија за опоравак је место где то потврђујете по реду:

systemctl status openvpn-server@server --no-pager
ss -lntup | grep -E ':(1194|443)\b'
nft list ruleset | sed -n '1,40p'
journalctl -u openvpn-server@server --since '-10 min' --no-pager | tail -n 30

Прво прочитајте стање услуге, затим слушаоца, затим правила, а онда дневник. Услуга која ради без слушаоца упућује на конфигурацију услуге, док слушалац без доступних правила упућује на филтрирање. Ред је важан јер сваки корак сужава следећи, а прескакање на дневник обично значи читање грешака које описују симптом, а не узрок.

Документација за systemctl покрива понашање стања и рестарта које се овде користи, укључујући то како неуспело поновно учитавање оставља претходни процес покренутим. Враћање кохерентне ревизије боље је од поновног повезивања из клијента који не може да поправи сервер. Ако је услов за враћање уназад који сте дефинисали пре промене испуњен, вратите и зауставите се.

Држите инвентар ажурним

Прегледајте листу приступа када се људи или инфраструктура мењају. Тестирајте пут за опоравак док све ради. Укините рачуне које нико није користио од последње реорганизације. Два застарела рачуна и један истекао сертификат су мало чишћење у уторак и испад у недељу.

Забележите ко може да користи сваки пут, шта он дозвољава и како се ротирају акредитиви. Пут за опоравак без власника постаје заборављени улаз, што је друга врста квара од тога да сте закључани изван сервера.

Повезани чланци