Како безбедно вратити конфигурацију VPN сервера
Враћање на претходно стање успоставља проверену мрежну политику, а не најстарију датотеку коју можете пронаћи. Држите опозиве ажурним и пут за управљање изван тунела.
Враћање сервера на претходно стање је одлука о томе који је слој заказао, а не вежба копирања датотека. Конфигурација, акредитиви и верзије пакета крећу се по различитим сатовима, а враћање једног док остали остају ажурни даје хост који изгледа здрав, а понаша се недоследно. Следећи редослед претпоставља да је промена већ пошла наопако и тражи од вас да успоставите најмање кохерентно стање. Прођите кроз њега редом и третирајте проверу приступа изван канала као корак који нико не сме да прескочи.
Направите тачку провере коју заиста можете вратити
Забележите конфигурацију коју сервис чита при покретању, заједно са верзијом која ју је последња парсирала. Датотека која се чисто учитавала на старијем издању може након надоградње бити одбијена или тихо занемарена, па верзија припада у исту белешку. Укључите материјал на који конфигурација упућује: приватне кључеве, путање сертификата, дефиниције слушалаца и DNS и firewall уносе који сервис чине доступним. Ако би за враћање била потребна датотека коју нисте сачували, тачка провере није потпуна.
Именујте власника сваког подешавања док је систем још здрав. Рута коју инсталира панел провајдера, она коју дода firewall хоста и она која се гура клијентима три су различита објекта, а враћање погрешног оставља друга два на месту. Кратка табела са подешавањем, власником и путањом датотеке је довољна.
Држите опозиве одвојено од конфигурације
Стара конфигурација може тихо поново повезати уређај који сте намерно уклонили, што опоравак претвара у безбедносну регресију. Сачувајте тренутну листу опозива и онемогућене рачуне док враћате мрежну политику, па их поново примените пре него сервис прихвати клијенте.
Третирајте стање идентитета као сопствено враћање са сопственим доказима. Датотеке опозива сертификата, онемогућавање рачуна и регистрација MFA ретко живе на истом месту као конфигурација демона, а враћање конфигурације их неће дотаћи. Прво проверите тренутно стање да бисте знали шта мора преживети. Након враћања потврдите да се уклоњени идентитет и даље не може повезати.
Дођите до хоста кад тунел закаже
Отворите пут до машине који не зависи од компоненте која се мења. Конзола хипервизора, адреса за управљање на одвојеном интерфејсу или серијска конзола све задовољавају; SSH сесија ношена кроз тунел не. Ако је једини улаз VPN који ћете рестартовати, лоша рута или firewall правило одузима вам могућност да то исправите. Тестирајте алтернативни пут пре промене, не после. Пријавите се кроз њега једном, потврдите да sudo ради и запишите тачну адресу коју сте користили.
Тест је једноставан: спустите тунел док сте повезани преко алтернативног пута и видите да ли сесија преживљава. Ако падне, пронашли сте квар пре него што вас може оставити на цедилу.
Примените једну ревизију и знајте када ступа на снагу
Користите документацију сервиса за reload или restart и сазнајте које се директиве читају у ком тренутку. Неке вредности важе при reload-у, друге тек кад започне нова сесија или процес, па уређивање датотеке не доказује ништа о покренутом стању. Вратите једну ревизију уместо мешања нове датотеке са старим runtime стањем. Кад сте у недоумици, потпуни рестарт сервиса лакше је промислити од делимичног reload-а.
Проверите дефиницију унита пре него што одаберете: systemctl show -p ExecReload openvpn@server вам каже постоји ли уопште reload кука. Затим примените ревизију и прочитајте journal за прве нове грешке пре него што промените било шта друго.
Проверите, забележите и истражите након тога
Повежите једног овлашћеног клијента и испробајте чему сервис служи: разрешавању имена, поновном повезивању и апликацији која је заказала. Потврдите да је опозвани идентитет и даље одбијен. Забележите ревизију коју сте вратили, време и разлог, јер ће следећем оператеру требати сва три. Враћање које нико није документовао постаје мистерија следећи пут кад се сервис буде лоше понашао.
systemctl status openvpn@server --no-pager
journalctl -u openvpn@server -n 50 --no-pager
Кад се сервис стабилизује, репродукујте неуспелу промену на хосту или снимку који можете одбацити. То одваја лошу конфигурацију од лошег пакета или истеклог сертификата. Држите враћену конфигурацију под контролом верзија да би следећа тачка провере почела с познатим commit-ом. Смисао вежбе је документован крајњи пункт, а не трајни downgrade.