330 likes | 491 Views
Great Interop Swindel. TOMASZ ONYSZKO. Konsultant | Microsoft. Wielki Interoperacyjny Szwindel. TOMASZ ONYSZKO. Konsultant | Microsoft. Punkt wyjścia. UNIX/Linux (local accounts and security settings). UNIX/Linux Kerberos Realm. UNIX/Linux NIS/NIS+ service. Windows Server 2003
E N D
Great Interop Swindel TOMASZ ONYSZKO Konsultant | Microsoft
Wielki Interoperacyjny Szwindel TOMASZ ONYSZKO Konsultant | Microsoft
Punkt wyjścia UNIX/Linux (local accounts and security settings) UNIX/Linux Kerberos Realm UNIX/Linux NIS/NIS+ service Windows Server 2003 Active directory accounts And security UNIX Client UNIX Client UNIX Client UNIX Client Windows (Active directory accounts and security settings) (kerberos authentication)
Punkt docelowy Windows Server Active Directory UNIX Linux Windows
Rozwiązanie • Centralizacja kont w ramach jednego katalogu • Dwa wymagane elementy • Uwierzytelnienie • Autoryzacja • Wiele możliwych rozwiązań technologicznych • Pomówmy o wybranych …
Dwie opcje uwierzytelnienia Kerberos LDAP
Do zapamiętania !!! LDAPNIE JEST protokołem uwierzytelnienia !!!
Kerberos • Protokół uwierzytelnienia • Stworzony przez MIT (RFC 4120) • Silne uwierzytelnienie oparte na współdzielonym „kluczu” • Cross platform • Pozwala na realizacje scenariuszy SSO
Kerberos • W świecie *ux • Dwie wersje bibliotek • Heimdal • MIT • Konfiguracja w /etc/krb5.conf • W świecie Windows (AD) • Wbudowany w system od Windows 2000 • Każdy DC jest „serwerem” - KDC
krb5.conf • Konfiugracja usługi Kerberos dla hosta • Realm== domena • KDC == kontroler domeny • Keytab == Klucz dla usługi • Narzędzia • Ktutil: zarządzanie kluczami • Kinit: pobierz bilet Kerberos • Klist: pokaż bilety • Kdestroy: usuń bilety
Keytab • Kluczdo usługi • Dane uwierzytelnienia • Realm • SPN • Typ klucza (szyfrowanie) • Klucz • Key Version Number (KVNO) • KEYTAB TO DANE WRAŻLIWE !!!
KTPASS.EXE ktpass -princHOST/ubuntu.w2k.pl@W2K.PL -mapuserubuntu$@W2K.PL -cryptoAll -ptype KRB5_NT_SRV_HST -mapop set -pass * -out ubuntu.keytab
Mechanizm uwierzytelnienia • Domyślne źródło uwierzytelnienia w *ux • /etc/passwd • /etc/shadow • PAM umożliwa konfigurację dodatkowych metod uwierzytelnienia \ autoryzacji • Możliwość łączenia wielu różnych metod
PlugableAuthenticationModule Aplikacja Architektura PAM /etc/pam.d/common-auth Moduł PAM pam_krb5 Moduł PAM
Sekcje PAM • Account • Poprawność konta (wygaśnięcie, uprawnienia … ) • Authentication • Moduł uwierzytelnienia • Password • Zarządzanie hasłami • Sesssion • Przetwarzanie sesji użytkownika
Autoryzacja • Kerberos używany tylko do uwierzytelnienia • *ux nie rozumieją PAC • Inny model autoryzacji • Standardowo • /etc/passwd • /etc/groups • Skąd wziąć dane autoryzacyjne??
LDAP • Autoryzacja w oparciu o LDAP (AD) • Rozszerzenia schematu dla Unix • Domyślnie w systemie po W2003 R2 • UI w ramach ADU&C • W ramach *ux dostępne poprzez NSS
NameService Switch Aplikacje \ OS NSS /etc/nsswitch.conf LDAP DNS NIS+ Pliki /etc/ldap.conf Active Directory
Do zapamiętania !!! • Nie korzystamy z anonimowego dostępu do LDAP !!! • Dedykowane konto dla NSS • Uwierzytelnienie poprzez LDAP simple bind • Hasła są przesyłane czystym tekstem !!! • Zawsze używamy SSL
Kerberyzacja to rewelacja • Kerberos to … • Bezpieczne uwierzytelnienie • Scenariusze SSO (GSSAPI) • Problem to … aplikacje • Aplikacja musi wspierać mechanizmy Kerberos • Konfiguracja osobna dla każdej aplikacji (OpenSSH, Apache, … )
Apache • Uwierzytelnienie i autoryzacja przez LDAP • mod_auth_ldap • Uwierzytelnienie przez Kerberos • mod_auth_kerb • Basic auth z uwierzytelnieniem Kerberos • Full SSO (SPNEGO)
Konfiguracja Apache /etc/…/httpd.conf LoadModuleauth_kerb_modulemodules/mod_auth_kerb.so Dla katalogu \ site AuthName "Kerberos Login"AuthTypeKerberosKrb5Keytab /path/auth_kerb.keytabKrbAuthRealmW2K.PL KrbMethodNegotiateoffKrbSaveCredentials offKrbVerifyKDC offRequirevalid-user
Podsumowanie • Kerberos podstawą mechanizmów uwierzytelnienia • LDAP źródłem informacji w zakresie autoryzacji • AD może służyć jako źródło oby • Problem to jak zwykle aplikacje
Oceń moją sesję • Ankieta dostępnana stronie www.mts2009.pl • Wygraj wejściówki na następny MTS!