Strona główna
» Jak
»
Utrzymywanie aktualizacji zabezpieczeń Debiana 12 na serwerze bez interfejsu graficznego
Utrzymywanie aktualizacji zabezpieczeń Debiana 12 na serwerze bez interfejsu graficznego
W przypadku serwera Debian 12 bez interfejsu graficznego, zainstaluj unattended-upgrades, włącz codzienne odświeżanie listy pakietów APT i ustawienia unattended-upgrade oraz zachowaj domyślną listę dozwolonych pakietów security-origin. Następnie zweryfikuj liczniki i logi systemd przez SSH. Automatyzuje to aktualizacje kwalifikujących się pakietów; nie przeprowadza głównej aktualizacji wydania Debiana ani nie gwarantuje, że każda aplikacja nie będzie wymagała dalszych działań.
Odśwież metadane APT i zainstaluj pakiet unattended-upgrades z sesji SSH.
1. Zainstaluj program aktualizujący i potwierdź wydanie
Połącz się z kontem, które może korzystać z sudo. Sprawdź wersję serwera i zaktualizuj indeks pakietów przed instalacją:
Ta procedura dotyczy systemu Debian 12 (Bookworm) korzystającego ze standardowych repozytoriów APT. Przed zaakceptowaniem planu pakietów należy go sprawdzić. Jeśli APT zgłosi błędy repozytorium, DNS, miejsca na dysku lub zależności, należy je najpierw rozwiązać; nienadzorowana operacja nie naprawi uszkodzonego źródła pakietu ani niesprawnego systemu plików.
2. Włącz codzienne odświeżanie i aktualizacje zabezpieczeń
Ustaw okresowe opcje APT w dedykowanym pliku lokalnym. Umożliwia to codzienne odświeżanie listy pakietów i uruchamianie aktualizacji bez nadzoru:
sudo nano /etc/apt/apt.conf.d/20auto-upgrades
Lokalna konfiguracja APT umożliwia codzienne aktualizacje listy pakietów i automatyczne uaktualnienia.
W Nano naciśnij Ctrl+O, Enter, a następnie Ctrl+X. Wartość 1oznacza „każdego dnia”. Konfiguracja pakietów APT unattended-upgradeskontroluje, które źródła archiwów mogą być instalowane. W standardowej konfiguracji Debiana 12 /etc/apt/apt.conf.d/50unattended-upgradespoczątkowo pozostaw niezmienione; domyślna lista dozwolonych ma na celu wybieranie aktualizacji zabezpieczeń Debiana i powiązanych skonfigurowanych aktualizacji Debiana. Nie dodawaj repozytoriów innych firm ani całego Bookworm tylko po to, aby wyświetlanie statusu wyglądało na bardziej zajęte. Jeśli celowo rozszerzasz listę dozwolonych, sprawdź dokładne źródła, przetestuj je i monitoruj usługę tak, jak każdą inną zmianę produkcyjną.
3. Zachowaj funkcję automatycznego ponownego uruchamiania pod kontrolą administratora
W przypadku serwera zarządzanego zdalnie sprawdź zasady ponownego uruchamiania w 50unattended-upgrades:
Nie włączaj automatycznego ponownego uruchamiania, chyba że zaplanowałeś przerwę w działaniu usługi, sprawdziłeś odzyskiwanie aplikacji i masz niezawodną ścieżkę odzyskiwania poza pasmem lub z konsoli. Aktualizacje zabezpieczeń Debiana mogą zainstalować nowe jądro lub biblioteki, które wymagają ponownego uruchomienia, aby zaczęły działać, ale aktualizacje nienadzorowane nie zastępują polityki ponownego uruchamiania ani planu natychmiastowego uruchamiania. Po wyłączeniu automatycznego ponownego uruchamiania, zaplanuj regularne okno konserwacyjne i sprawdź, czy po aktualizacjach wymagane jest ponowne uruchomienie.
Przeprowadzenie testu na sucho może ujawnić skonfigurowane źródła i pakiety kandydackie bez konieczności ich instalowania. Wyświetlony wynik ma charakter poglądowy.
4. Przetestuj konfigurację przed jej użyciem
Uruchom symulację przez SSH. --dry-runFlaga nie instaluje pakietów, ale --debugpodaje więcej szczegółów w dzienniku unattended-upgrades:
sudo unattended-upgrade --dry-run --debug
Przeczytaj dane wyjściowe dotyczące dozwolonych źródeł i proponowanych działań dotyczących pakietów. Komunikat informujący o braku pakietów do uaktualnienia może być prawidłowym wynikiem, gdy nie ma oczekujących pakietów; nie stanowi to dowodu na to, że licznik czasu zostanie uruchomiony później. Jeśli dozwolone źródła są puste lub kandydaci niespodziewanie brakuje, sprawdź źródła i 50unattended-upgradeswzorce APT w wydaniu przed ich zmianą. Podręcznik Bookworm opisuje to polecenie jako symulację, a nie instalację.
5. Sprawdź liczniki, usługi i dzienniki
APT korzysta z jednostek timera systemd do codziennej pracy. Sprawdź oba timery i usługę aktualizacji:
systemctl status apt-daily.timer apt-daily-upgrade.timer
systemctl list-timers 'apt-daily*'
systemctl status apt-daily-upgrade.service
Timery powinny być załadowane i aktywne, a lista powinna wskazywać ich następne zaplanowane uruchomienie. Jeśli timery są zainstalowane, ale nieaktywne, uruchom je i włącz na potrzeby przyszłych uruchomień:
Usługa może być nieaktywna między zaplanowanymi uruchomieniami, ponieważ jest to zadanie jednorazowe; zamiast oczekiwać, że będzie działać nadal, sprawdź jej ostatni wynik. Po zaplanowanym oknie przejrzyj dziennik pakietów i dziennik systemd:
Aby potwierdzić zaplanowaną aktywność, skorzystaj ze statusu timera i dziennika nienadzorowanych uaktualnień. Pokazane wpisy mają charakter poglądowy.
Sprawdź, czy przebieg został zakończony, dozwolone źródła oraz czy pakiety zostały zainstalowane, czy też nie było żadnych oczekujących. Zbadaj powtarzające się błędy pobierania, wstrzymane pakiety lub błędy dpkg. W podręczniku wymieniono te ścieżki logów i wyjaśniono, że usługa systemd uruchamia zaplecze unattended-upgrade.
Co ta konfiguracja może i czego nie może potwierdzić
Konfiguracja działająca oznacza, że liczniki czasu są aktywne, okresowe ustawienia APT są włączone, a logi pokazują pomyślne uruchomienia bez nadzoru. Nie dowodzi to jednak, że każdy pakiet w każdym repozytorium jest zaktualizowany, że poprawka zależna od ponownego uruchomienia jest już aktywna, ani że usługa działała prawidłowo po zmianie pakietu. Proces aktualizacji wydania Debiana pozostaje oddzielnie zaplanowaną operacją; unattended-upgrades służy do aktualizacji pakietów w skonfigurowanych źródłach. W przypadku serwerów krytycznych należy dodać monitorowanie nieudanych uruchomień, utrzymywać kopie zapasowe, testować zmiany w reprezentatywnym środowisku i zdefiniować okno ponownego uruchomienia z nadzorem użytkownika.
Poniższe kroki są zgodne z podręcznikiem Debian Bookworm unattended-upgrade , wskazówkami Debian Periodic Updates oraz podręcznikiem Bookworm systemd.timer . W podręczniku Bookworm wersja pakietu Debiana jest identyfikowana jako 2.9.1+nmu3; wersje pakietów mogą ulec zmianie wraz z aktualizacjami Debiana.