Synchronizacja czasu w Active Directory – cichy zabójca, który kładzie całą domenę

ad czas
"Nie mogę się zalogować!" - krzyczy użytkownik. Potem drugi, trzeci... Sprawdzasz hasła - wszystko OK. Kontrolery domeny działają. Połączenia sieciowe są. A jednak połowa firmy nie może pracować.

Synchronizacja czasu w Active Directory – cichy zabójca, który kładzie całą domenę

Poniedziałkowy poranek.

Przychodzisz do pracy, a telefon już dzwoni. „Nie mogę się zalogować!” – krzyczy użytkownik. Potem drugi, trzeci… Sprawdzasz hasła – wszystko OK. Kontrolery domeny działają. Połączenia sieciowe są. A jednak połowa firmy nie może pracować.

Witaj w świecie problemów z synchronizacją czasu – najbardziej podstępnego wroga każdego administratora Active Directory.Dlaczego czas jest tak krytyczny w Active Directory?
Active Directory to nie tylko baza użytkowników i komputerów. To skomplikowany mechanizm, który opiera swoje bezpieczeństwo na protokole Kerberos. A Kerberos ma obsesję na punkcie czasu – i to nie bez powodu.


Kerberos i jego tiki czasowe

Kerberos używa znaczników czasowych (timestamps) do zabezpieczenia przed atakami typu replay. Każdy bilet Kerberos zawiera informację o czasie jego utworzenia. Gdy klient przedstawia bilet serwerowi, serwer sprawdza czy znacznik czasowy mieści się w akceptowalnym oknie czasowym – domyślnie 5 minut.
Przekroczenie tego progu to automatyczne odrzucenie uwierzytelnienia. Użytkownik dostaje tajemniczy błąd, często coś w stylu „Nie można skontaktować się z kontrolerem domeny” lub „Podane poświadczenia są nieprawidłowe„. A Ty szukasz problemu wszędzie, tylko nie tam gdzie trzeba.

 

Replikacja też cierpi

To nie koniec problemów. Rozsynchronizowany czas wpływa również na:
– **Replikację między DC** – konflikty przy ustalaniu, która zmiana jest nowsza
– **Certyfikaty SSL/TLS** – mogą być uznane za niewałne lub wygasłe
– **Logi i audyt** – próba ustalenia sekwencji zdarzeń staje się koszmarem
– **Zasady grupowe** – mogą nie aplikować się poprawnie
– **Backupy** – znaczniki czasowe VSS mogą być nieprawidłowe

Problemy z oprogramowaniem

Najczęściej to chyba widać jako problem z czasem na nMedica. Tak nMedica z Asseco jak zostanie zainstlowana na kompie ktory pobiera czas jak chce zacznie wrzeszczeć przy uruchamianiu o problemi z czasem. A w pewnym momencie przestanie działac.

Hierarchia czasu w domenie Windows

Windows ma elegancki, hierarchiczny system synchronizacji czasu. Zrozumienie tej hierarchii to klucz do rozwiązywania problemów.

Standardem który czesto widzimy jest to iż główny kontroler doemny pobiera czas z internetu, a inne kontrolery z niego . A stacje robocze powinny z kontrolerów.

Rozwiązanie problemu

U siebie wspomagamy sie skryptem PS, który pozwala to skonfigurować

Skrypt jest dostępny pod adresem : https://github.com/zITwziete/PS/blob/main/timesync.ps1


SKRYPT SYNCHRONIZACJI CZASU ACTIVE DIRECTORY

OPCJA 1: Sprawdź status synchronizacji czasu – Ta opcja sprawdza wszystkie kontrolery domeny i pokazuje ich aktualny czas, różnice względem komputera lokalnego oraz źródło synchronizacji. Każdy DC otrzymuje status OK (różnica mniejsza niż 30 sekund), OSTRZEŻENIE (30-60 sekund) lub KRYTYCZNY (ponad 60 sekund). To pierwsza opcja której używasz przy diagnozowaniu problemów – uruchamiaj ja regularnie, np. raz w tygodniu, zeby upewnic sie ze wszystko dziala prawidlowo. Jeśli zobaczysz status KRYTYCZNY lub OSTRZEŻENIE, to znak że trzeba podjąć działania naprawcze. 

OPCJA 2: Skonfiguruj źródło czasu PDC – Konfiguruje kontroler PDC Emulator jako główne źródło czasu dla całej domeny. PDC synchronizuje się z zewnętrznymi serwerami NTP (domyślnie polskie serwery pool.ntp.org oraz time.windows.com), a wszystkie pozostałe kontrolery domeny synchronizują się z PDC. Użyj tej opcji podczas początkowej konfiguracji nowej domeny, po reinstalacji PDC, lub gdy chcesz zmienić źródła czasu NTP. Pamiętaj że PDC musi mieć dostęp do Internetu, aby połączyć się z serwerami NTP. 

OPCJA 3: Zresetuj konfiguracje czasu DC– Resetuje i rekonfiguruje usługę W32Time na wybranym kontrolerze domeny. Skrypt wyrejestruje i ponownie zarejestruje usługę, a następnie skonfiguruj ja zgodnie z rola serwera – PDC będzie synchronizował się z zewnętrznymi NTP, a pozostale DC z hierarchia domeny. Użyj tej opcji gdy konkretny kontroler domeny ma problemy z synchronizacja czasu, po awarii serwera, lub gdy zmieniłem konfigurację ręcznie i chcesz wrocic do ustawien domyslnych. To pierwsza opcja naprawcza do wypróbowania przy problemach z pojedynczym DC. 

OPCJA 4: Wymuś synchronizacje całej domeny – Łączy się ze wszystkimi kontrolerami domeny jednocześnie i wymusza na każdym natychmiastowa synchronizacje czasu. Użyj tej opcji po wykonaniu zmian w konfiguracji czasu (np. po zmianie źródeł NTP na PDC), gdy widzisz różnicę czasu między kontrolerami, lub gdy chcesz szybko zsynchronizować cala domenę bez czekania na automatyczna synchronizacja. Ta opcja nie zmienia konfiguracji – tylko wymusza synchronizacje na bazie aktualnych ustawień. 

OPCJA 5: Uruchom tryb monitorowania – Uruchamia ciągły monitoring synchronizacji czasu z automatycznym odświeżaniem co 30 sekund (lub inny ustawiony czas). Ekran wyświetla aktualny status wszystkich kontrolerów domeny z kolorowym oznaczeniem problemów. Użyj tej opcji podczas wykonywania krytycznych zmian w infrastrukturze, gdy chcesz obserwować jak zachowuje się synchronizacja w czasie rzeczywistym, lub gdy podejrzewasz przerywane problemy z czasem. Monitoring mozesz zatrzymac w każdej chwili przez CTRL+C. Doskonale nadaje się też do prezentacji na ekranie w serwerowni. 

OPCJA 6: Testuj łączność NTP – Sprawdza czy kontrolery domeny maja dostep do zewnetrznych serwerow czasu NTP. Testuje kazdy serwer z listy (pool.ntp.org, time.windows.com, time.nist.gov) i pokazuje czy połączenie działa. Użyj tej opcji gdy PDC ma status KRYTYCZNY i podejrzewasz problemy z dostępem do Internetu, po zmianach w konfiguracji zapory, lub gdy chcesz sprawdzić czy zewnętrzne serwery NTP sa dostępne. Jeśli test pokazuje bledy, to znaczy że PDC nie może synchronizować czasu z Internetem i cala domena będzie mieć problemy. 

OPCJA 7: Napraw usługę W32Time – To zaawansowana opcja naprawy uszkodzonej usługi synchronizacji czasu. Możesz naprawić usługę lokalnie, na wybranym kontrolerze, lub na wszystkich DC jednocześnie. Proces naprawy zatrzymuje usługę, wyrejestrowuje ja, rejestruje ponownie, konfiguruje zgodnie z rola serwera i wymusza synchronizacje. Użyj tej opcji gdy usługa W32Time jest zatrzymana i nie da się jej uruchomić, gdy resetowanie przez opcje 3 nie pomoglo, gdy widzisz błędy krytyczne w dzienniku zdarzeń związane z W32Time, lub po poważniejszej awarii serwera. To opcja ostatniej szansy przed reinstalacja systemu. 

OPCJA 8: Skonfiguruj członka domeny – Konfiguruje synchronizacje czasu na stacjach roboczych i serwerach członkowskich domeny (nie-kontrolerach). Możesz skonfigurować komputer lokalny, zdalny komputer, lub wiele komputerów z listy. Dodatkowo możesz przetestować łączność czasowa z kontrolerami domeny. Użyj tej opcji gdy nowe komputery w domenie mają zły czas, gdy stacje robocze pokazują inne godziny niż serwery, po podłączeniu komputera do domeny, lub gdy komputer był długo włączony i jego zegar sie rozjechal. Konfiguracja ustawia synchronizacje z hierarchia domeny, więc komputery będą automatycznie synchronizować się z najbliższym kontrolerem. 

KIEDY UŻYWAĆ KTÓREJ OPCJI – SCENARIUSZE: 

Regularna konserwacja: Raz w tygodniu uruchom opcje 1 by sprawdzić czy wszystko działa. Jeśli wszystko OK, nie rób nic więcej. 

Nowa domena lub migracja: Uruchom kolejno opcje 2, 4, 1 – skonfigurujesz PDC, wymuszasz synchronizacje i sprawdzisz wyniki. 

Problem z jednym kontrolerem: Uruchom opcje 1 aby zidentyfikować problematyczny DC, potem opcje 3 na tym DC, a jesli nie pomoze to opcje 7-2. 

Masowe problemy z całą domeną: Uruchom opcje 6 zeby sprawdzic dostep do NTP, potem opcje 7-3 aby naprawić wszystkie DC, następnie opcje 2 i 4 aby skonfigurować i zsynchronizować. 

Problemy ze stacjami roboczymi: Uruchom opcje 8-4 by sprawdzić łączność, potem opcje 8-1 lub 8-2 aby skonfigurować komputery. Po zmianach w infrastrukturze: Użyj opcji 5 aby monitorować synchronizację w czasie rzeczywistym podczas wprowadzania zmian.

Podsumowanie


Synchronizacja czasu to fundament bezpieczeństwa i stabilności Active Directory. Rozbieżność zaledwie 5 minut może sparaliżować całą domenę, ale z odpowiednimi narzędziami i procedurami możesz temu zapobiec.


Synchronizacja czasu to nie jest coś, co konfigurujesz raz i zapominasz. To proces, który wymaga stałego nadzoru. Ale dzięki skryptom i narzędziom, możesz spać spokojnie wiedząc, że Twoja domena tyka jak szwajcarski zegarek.
Masz swoje historie z wojny z czasem w AD? Podziel się w komentarzach

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *