getent passwd nie działa; Uwierzytelnianie CentOS 7 i SSSD LDAP

9

Zainstalowałem CentOS 7 na zupełnie nowym serwerze. Wszystkie moje serwery uzyskują uwierzytelnienie użytkownika końcowego za pośrednictwem LDAPS w różnych systemach, takich jak RHEL5, Debian i Solaris. Zauważyłem, że w CentOS 7 jest nowa warstwa, która jest SSS powyżej NSS i PAM. W każdym razie próbuję zreplikować ten sam typ połączenia, co na drugim serwerze.

Polecenie ldapsearch -xjest wiążące w LDAP, ale nie w LDAPS.

Podczas kopania problemu próbowałem nawiązać połączenie w LDAP, ściskając warstwę SSS, umieszczając te linie w moim /etc/nsswitch.conf

passwd:     files ldap #sss 
shadow:     files ldap #sss 
group:      files ldap #sss 

I dodałem tę linię w /etc/sssd/sssd.conf

cache_credentials = False

I zrestartowałem ssd.

systemctl restart sssd

Sprawdzam za pomocą polecenia authconfig --testi wszystko wydaje się w porządku: ( http://www.heypasteit.com/clip/1LZ2 )

dubis
źródło

Odpowiedzi:

9

Nie jestem pewien, czy jest to właściwe rozwiązanie, ale zauważyłem w SSSD FAQ w tym punkcie:

Kiedy powinienem włączyć wyliczanie w SSSD? lub Dlaczego wyliczanie jest domyślnie wyłączone?

„Wyliczenie” to termin SSSD na „wczytywanie i wyświetlanie wszystkich wartości konkretnej mapy (użytkowników, grup itp.)”. Domyślnie wyłączamy to w SSSD, aby zminimalizować obciążenie serwerów, z którymi SSSD musi się komunikować. W większości operacji wyliczenie pełnego zestawu użytkowników lub grup nigdy nie będzie konieczne. Aplikacje zazwyczaj wymagają informacji o konkretnych użytkownikach lub grupach.

Wyliczenie wszystkich wpisów ma negatywny wpływ na obciążenie serwera i wydajność na kliencie (ponieważ musimy zapisać wszystkie złożone relacje między użytkownikami i grupami, do których należą w lokalnej pamięci podręcznej). Z tego powodu dostarczamy z wyłączonymi wyliczeniami (takie samo zachowanie jak winbind projektu Samba).

Powinieneś włączyć wyliczenia (i wynikające z nich problemy z wydajnością) tylko wtedy, gdy masz w swoim środowisku aplikacje lub skrypty, które absolutnie muszą mieć możliwość pobrania pełnych list. W takich przypadkach wyliczanie można włączyć przez ustawienie

   [domain/<domainname>]
   enumerate = true
   ...

w pliku sssd.conf.

Umożliwiło getent passwdto wyświetlanie wszystkich kont dostępnych za pośrednictwem SSSD. Ostrzegamy, że może to być problem z wydajnością.

slm
źródło