Dawno, dawno temu w południowej Ameryce była piękna ciepła wirtualna dżungla, w której mieszkał serwer kałamarnic. oto percepcyjny obraz sieci:
<the Internet>
|
|
A | B
Users <---------> [squid-Server] <---> [LDAP-Server]
Kiedy poprosisz Users
o dostęp do Internetu, squid
zapytaj ich nazwiska i paszportu, uwierzytelnij je, LDAP
a jeśli ldap je zatwierdzi, to je udzieli.
Wszyscy byli szczęśliwi, dopóki niektórzy snifferzy nie ukradli paszportu między użytkownikami a kałamarnicą [ścieżka A]. Ta katastrofa wydarzyła się, ponieważ zastosowano Basic-Authentication
metodę kałamarnicy .
Ludzie dżungli zebrali się, aby rozwiązać problem. Niektóre króliczki oferowane za pomocą NTLM
metody. Węże preferowane Digest-Authentication
podczas gdy Kerberos
zalecana przez drzewa.
W końcu wiele rozwiązań oferowanych przez ludzi z dżungli i wszystko było zdezorientowane! Lew postanowił zakończyć sytuację. Wykrzykiwał zasady rozwiązań:
- Czy rozwiązanie będzie bezpieczne!
- Czy rozwiązanie będzie działać w przypadku większości przeglądarek i oprogramowania (np. Oprogramowanie do pobrania)
- Czy rozwiązanie powinno być proste i nie wymaga innego ogromnego podsystemu (takiego jak serwer Samba)
- Czy metoda nie zależy od specjalnej domeny. (np. Active Directory)
Następnie bardzo rezonansowe, wszechstronne i sprytne rozwiązanie oferowane przez małpę, co czyni go nowym królem dżungli!
zgadniesz, jakie było rozwiązanie?
Wskazówka:
Ścieżka między squid
i LDAP
jest chroniony przez lwa, więc rozwiązanie nie ma go zabezpieczyć.
Uwaga: przepraszam, jeśli historia jest nudna i niechlujna, ale większość z nich jest prawdziwa! =)
/~\/~\/~\ /\~/~\/~\/~\/~\ ((/~\/~\/~\/~\/~\)) (/~\/~\/~\/~\/~\/~\/~\) (//// ~ ~ \\\\) (\\\\( (0) (0) )////) (\\\\( __\-/__ )////) (\\\( /-\ )///) (\\\( (""""") )///) (\\\( \^^^/ )///) (\\\( )///) (\/~\/~\/~\/) ** (\/~\/~\/) *####* | | **** /| | | |\ \\ _/ | | | | \_ _________// Thanks! (,,)(,,)_(,,)(,,)--------'
Aktualizacja:
Massimo wyjaśnił, że metoda uwierzytelniania pomiędzy Users
- squid
i squid
- LDAP
nie musi być taka sama. możemy użyć dowolnej metody, aby uzyskać informacje uwierzytelniające od użytkowników, oraz dowolnej metody uwierzytelnienia zgromadzonych danych.
Ale jest problem: wejście / wyjście wszystkich typów wystawców uwierzytelnienia nie jest takie samo. Na przykład:
Basic
uwierzytelnienia powinien przeczytać „Haslo” pary w linii i odpowieOK
jeśli użytkownik-pass jest prawidłowa lubERR
Digest
uwierzytelnienia należy czytaćusername:realm
i odpowiadać hex kodowane zHA(A1)
lubERR
.
Chociaż nie ma bezpośredniego związku między metodą klient-squid a metodą squid-ldap, zebrane dane od klienta muszą być zgodne z metodą stosowaną w części squid-ldap. Dlatego jeśli zmienimy metodę uwierzytelniania po stronie użytkownika, być może powinniśmy również zmienić naszego uwierzytelniacza.
Problem upraszcza więc:
Na pierwszym poziomie ja (małpa!) Szukam dobrej metody uwierzytelniania po stronie użytkownika. Którą metodę polecasz, która jest bezpieczna i obsługiwana przez większość przeglądarek ? jestem w pomieszaniu między
NTLM
,Kerberos
aDigest
.Gdzie mogę znaleźć wystawcę uwierzytelnienia, który obsługuje dane uwierzytelniające wybranej metody i uwierzytelnia się za pośrednictwem LDAP.