Ponowne uruchomienie usługi VPN kończy każdą sesję, która jej używa, więc okno trzeba zbudować wokół rozmów, a nie wokół menedżera pakietów. Użytkownicy potrzebują wystarczającego wyprzedzenia, by dokończyć wrażliwą pracę, a ty potrzebujesz drogi powrotnej, która nie zależy od tunelu, który zaraz zatrzymasz. Wszystko inne w tym podręczniku istnieje po to, by te dwa fakty dały się opanować. Pomiń którykolwiek z nich, a rutynowa aktualizacja stanie się awarią bez wyjścia.

Kolejność poniżej jest celowa: każdy etap daje coś, czego potrzebuje następny, a każdy etap może zakończyć zmianę, zanim się zacznie.

Przechwyć usługę, która istnieje, zanim ją zmienisz

Czytaj zainstalowaną jednostkę, a nie tę, którą pamiętasz: systemctl cat [email protected] wypisuje jednostkę i wszelkie drop-iny, a systemctl show [email protected] -p ExecStart -p User -p WorkingDirectory pokazuje, co naprawdę działa i jako kto. Pytaj o plik binarny wskazany przez jednostkę, ponieważ openvpn --version z powłoki może wskazywać inną kompilację. Zapisz ścieżkę profilu i każdy plik, do którego się odwołuje.

Zanotuj także gniazda nasłuchujące: ss -lunp | grep 1194 mówi, jaki adres i protokół demon posiada dziś. Jeśli odpowiedź nie jest taka, jak sugeruje profil, nadpisuje ją drop-in lub plik środowiskowy, a aktualizacja odziedziczy tę niespodziankę.

Zbuduj zestaw odzyskiwania, którego ktoś inny będzie mógł użyć

Zestaw odzyskiwania musi być użyteczny dla kolegi o 03:00 bez twojego kontekstu. Dołącz skuteczną konfigurację wraz z każdym przywołanym plikiem, materiał zaufania i unieważniania pod kontrolą właściciela PKI, przypisania i hooki poszczególnych klientów oraz dokładne wersje pakietów zainstalowanych dziś. Kopia jednej nazwy pliku nie jest konfiguracją. Przechowuj go tam, gdzie operator dyżurny dotrze bez VPN.

Kontrole dostępu dotyczą również tego zestawu, ponieważ zawiera klucze prywatne lub poświadczenia backendu. Nie odbudowuj CA ani nie wydawaj ponownie tożsamości tylko dlatego, że zmieniła się wersja pakietu.

Przećwicz na pilotażowym nasłuchu z prawdziwym klientem

Uruchom wydanie kandydujące na osobnym nasłuchu z własnym planem portów i adresów, nie obok instancji produkcyjnej na tym samym gnieździe. Połącz się silnikami klientów, których twoi użytkownicy naprawdę używają, w tym tym niewygodnym. Sprawdź przydział adresów, wypychany DNS, jedną aplikację, która ma znaczenie, i jedną ścieżkę, która powinna pozostać zablokowana. Własne hooki muszą działać w rzeczywistym kontekście uprawnień i systemu plików usługi, ponieważ powłoka roota niczego o nich nie dowodzi.

Czytaj informacje o wydaniu pod kątem zmian zachowania, a nie tylko nowych funkcji. Domyślne ustawienia szyfrów i TLS zmieniają się między wersjami, a profil, który nadal się parsuje, nadal może nie przejść uzgadniania. Jeśli aktualizacja wymaga zmian profilu lub certyfikatu, zaplanuj to jako osobny krok, zamiast łączyć z aktualizacją pakietu.

Przełącz raz, ze ścieżki poza tunelem

Rozpocznij okno z konsoli lub sieci zarządzania, która nie przechodzi przez usługę. Potwierdź, że użytkownicy zostali poinformowani, a drugi operator wie, jak wycofać zmianę. Zastosuj przygotowaną zmianę przez jej właściciela, następnie uruchom ponownie za pomocą sudo systemctl restart [email protected] i śledź dziennik za pomocą journalctl -u openvpn-server@office -b -f. Przeładowanie wystarcza, gdy zmieniły się tylko definicje jednostki; zmieniony profil wymaga ponownego uruchomienia procesu.

Oczekuj, że każdy klient połączy się ponownie, i że niektóre sesje aplikacji nie zostaną wznowione. Uzgodnij czystą pauzę z obciążeniami, które tego nie znoszą.

Zaakceptuj albo wycofaj, a potem powiedz użytkownikom, co się zmieniło

Akceptacja to nowe logowanie plus rzeczywista operacja plus ograniczenia nadal w mocy. Aktywna jednostka i zielona linia statusu to fakty procesu. Jeśli kryteria zawiodą w oknie, wycofaj zmianę przygotowaną metodą, a nie przez przywrócenie jednego pliku i nadzieję; zmieniony plik binarny lub polityka usługi przetrwa przywrócenie konfiguracji. Zachowaj wszelkie zmiany unieważnienia lub autoryzacji wykonane w oknie, aby wycofanie nie cofnęło pracy nad bezpieczeństwem.

Zapisz wersje, zmiany profilu i wyniki akceptacji dla następnego operatora, wycofaj pilotażowy nasłuch i powiedz użytkownikom, którego profilu mają teraz używać. Okno, które kończy się bez tej notatki, wraca pod dyskusję przy następnej aktualizacji.

Powiązane artykuły