1 Konsultant | MicrosoftKerberos udomowiony TOMASZ ONYSZKO Konsultant | Microsoft Start
2 Kontakt Blog:
3
4 (cc) Josh Mishell
5 Kerberos Protokół uwierzytelnienia Stworzony przez MIT (RFC 4120)Silne uwierzytelnienie oparte na współdzielonym „kluczu” Cross platform Pozwala na realizacje scenariuszy SSO
6 Kerberos a Windows … Zaimplementowany od Windows 2000Każdy kontroler domeny to „Serwer” – Key Distribution Center (KDC) Udostępniony w systemie dla aplikacji przez Security Support Provider Interface (SSPI) Domyślny SSP dla Windows
7 SSPI (GSSAPI) RPC .NET Framework Internet Explorer SSPI NegotiatedKerberos NTLM Digest …
8 (cc) Rob Watling
9 Aktorzy Klient KDC Usługa Wymaga uwierzytelnienia KerberosAuthentication Service (AS) Ticket Granting Service (TGS) Usługa Wymaga uwierzytelnienia Kerberos
10 TGT == Ticket Granting Ticket#1 - Uwierzytelnienie KRB_AS_REQ KRB_AS_REP TGT == Ticket Granting Ticket
11 Dane autoryzacji (PAC)Ticket Kerberos ticket - RFC 1510 (version 5) Realm Nazwa serwera \ usługi Klucz sesji Flagi Nazwa klienta Realm klienta Czas wygaśnięcia Dane autoryzacji (PAC) (…)
12 Privilege Attribute CertificateInformacja autoryzacyjna PAC zawiera: SID użytkownika SID grup użytkownika (cross forest) Tworzony w chwili wystawienia TGT Duży PAC KRB5KRB_ERR_RESPONSE_TOO_BIG MaxTokenSize (KB )
13 TGS == Ticket Granting Service#2 – Dostęp do usługi KRB_TGS_REQ KRB_TGS_REP TGS == Ticket Granting Service
14 #2 – Dostęp do usługi http://www.w2k.plKRB_AP_REQ Skąd KDC wiedział do której usługi chce się dostać użytkownik i którego użyć klucza??
15 Service Principal NameUżywane do zlokalizowania kont usługi Format:
16 (cc) Now picnic
17 #3 – Delegacja (S4U2Proxy) KRB_AP_REQ KRB_TGS_REQ KRB_CRED KRB_TGS_REP
18 Wymagania Aby delegacja zadziałała Poprawne rozwiązywanie nazw DNSKonto usługi oznaczone jako „Trusted for delegation” Poprawna konfiguracja SPN dla wszystkich kont biorących udział w delegacji Konfiguracja przeglądarki !!! + opcje specyficzne dla aplikacji
19 Konfiguracja SPN #1 CN=WWW$: http/www.w2k.pl http/www CN=SQL$:MSSQLSvc/SQL.W2K.PL MSSQLSvc/SQL
20 Konfiguracja SPN #2 CN=WWW1$: http/www.w2k.pl http/www CN=WWW2$:CN=SQL$: MSSQLSvc/SQL.W2K.PL MSSQLSvc/SQL
21 Konfiguracja SPN #2 CN=AppPoolAccount CN=SQL$: http/www.w2k.plMSSQLSvc/SQL.W2K.PL MSSQLSvc/SQL
22 (cc) Now picnic
23 (cc) r00pert
24 Internet Explorer 6 Żądanie dostępu do SPN bez numeru portu (KB ) Użycie CNAME przy dostępie do usługi (KB )
25 KDC_ERR_PREAUTH_REQUIREDPrzyczyna Żądanie nie zawiera danych pre-authentication Problem Występuje gdy żądanie nie jest ponawiane poprawnie Możliwe błędy uwierzytelnienia
26 KDC_ERR_PREAUTH_REQUIREDRowiązanie Poprawna konfiguracja klienta Wyłączenie wymagania pre-authentication dla konta Narzędzia Network monitor
27 KRB_ERR_RESPONSE_TOO_BIGPrzyczyna PAC jest zbyt duży dla transportu UDP Problem Występuje gdy nie jest możliwe przełączenie się na transport TCP Możliwe błędy uwierzytelnienia
28 KRB_ERR_RESPONSE_TOO_BIGRozwiązanie Zmiana transportu na TCP (KB ) Zmniejszenie PAC (KB ) Narzędzia: Network monitor TokenSz.exe
29 KDC_ERR_ETYPE_NOTSUPPPrzyczyna Niekompatybilność protokołów szyfrowania pomiędzy klientem a KDC Wprowadzenie AES w Vista \ Windows 2008 (RFC 3962) Problem Brak możliwości uzyskania biletów
30 KDC_ERR_ETYPE_NOTSUPPRozwiązanie Konfiguracja zgodnych protokołów klient <-> KDC ms-DS-Supported-Encryption-Types Narzędzia Event Viewer (EventID: 27, KDC) REGEDIT.EXE (pre-Win7) Group Policy (Win7) Network Monitor
31 KDC_ERR_S_PRINCIPAL_UNKNOWNPrzyczyna Brak lub duplikaty SPN dla kont usług Problem Nie działające mechanizmy uwierzytelnienia Kerberos Brak dostępu do usług
32 KDC_ERR_S_PRINCIPAL_UNKNOWNRozwiązanie Poprawna konfiguracja SPN Narzędzia Setspn.exe (preferowane z Windows 2008 R2) Dowolny klient LDP (LDP.EXE, ADFIND.EXE) Event Viewer (EventID:11, KDC) Network Monitor
33 (cc) Now picnic
34 Rozwiązywanie problemówNetwork monitor prawdę Ci powie Setspn.exe lub dowolny klient LDAP pozwoli zdiagnozować problemy z SPN Klient pełni kluczową rolę w komunikacji związanej z Kerberos
35 Rozwiązywanie problemów(…) If there is a problem … it’s about SPNs If not … it’s about SPNs (…) Master Matjaz
36 (cc) bitzcelt
37 Dlaczego Kerberos Bezpieczny protokół uwierzytelnieniaInteroperacyjność SSO Redukcja NTLM Windows 7 \ Windows 2008 R2
38 NTLM
39
40 (cc) massdistraction
41 Oceń moją sesję Ankieta dostępna na stronie www.mts2009.plWygraj wejściówki na następny MTS! Speakers: Please do not remove nor edit this slide! This is information about evaluation form.
42
43 Referencje How the Kerberos Version 5 Authentication Protocol WorksS4U2proxy- Kerberos Protocol Extensions: Service for User and Constrained Delegation Protocol Specification DelegConfig Internet Explorer and SPNs IE does not include port number in SPN IE builds SPN based on A record not alias S4U2proxy-
44 Referencje Kerberos Technical Supplement for WindowsHow to troubleshoot Kerberos-related issues in IIS Troubleshooting Kerberos Errors Troubleshooting Kerberos Delegation NMCap: the easy way to Automate Capturing S4U2proxy-