Ldap Client per SSSD
SSSD Client-Konfiguration
SSSD (System Security Services Daemon) ersetzt die alte Konfiguration mit libnss-ldap und libpam-ldap.
Installation
- apt install sssd-ldap ldap-utils
CA Cert besorgen
- cd /etc/ldap/
- wget https://web.samogo.de/certs/ca.crt
ldap.conf (Client)
- cat /etc/ldap/ldap.conf
# Basis-Domain für Suchanfragen
BASE dc=it213,dc=int
# LDAPS-Server (TLS auf Port 636)
URI ldaps://ldap.it213.int
# TLS / Zertifikatsprüfung
TLS_CACERT /etc/ldap/ca.crt
TLS_REQCERT demand
# Minimale TLS-Verison (optional, aber empfohlen)
TLS_PROTOCOL_MIN 1.2
SSSD Konfiguration
- vim /etc/sssd/sssd.conf
[sssd]
config_file_version = 2
services = nss, pam
domains = it213.int
[domain/it213.int]
id_provider = ldap
auth_provider = ldap
chpass_provider = ldap
# DNS Service Discovery nutzen (benötigt SRV Records!)
#ldap_uri = _srv_
#dns_discovery_domain = it213.int
# Direkte URI statt DNS Discovery
ldap_uri = ldaps://ldap.it213.int
ldap_search_base = dc=it213,dc=int
ldap_default_bind_dn = cn=admin,dc=it213,dc=int
ldap_default_authtok_type = password
ldap_default_authtok = 123Start$
# TLS komplett deaktivieren (für Testumgebungen)
ldap_id_use_start_tls = false
#ldap_auth_disable_tls_never_use_in_production = true
ldap_tls_reqcert = demand
cache_credentials = true
enumerate = true
[nss]
filter_users = root,daemon,bin,sys,sync,games,man,lp,mail,news,uucp,proxy,www-data,backup,list,irc,gnats,nobody,systemd-network,systemd-resolve,messagebus,_apt,uuidd,nslcd
filter_groups = root,daemon,bin,sys,adm,tty,disk,lp,mail,news,uucp,man,proxy,kmem,dialout,fax,voice,cdrom,floppy,tape,sudo,audio,dip,www-data,backup,operator,list,irc,src,gnats,shadow,utmp,video,sasl,plugdev,staff,games,users,nogroup,systemd-journal,systemd-network,systemd-resolve,input,kvm,render,crontab,netdev,messagebus,_apt,uuidd,ssh,nslcd
[pam]
offline_credentials_expiration = 2
Berechtigungen setzen
chmod 600 /etc/sssd/sssd.conf
SSSD Service aktivieren und starten
- systemctl enable sssd
- systemctl start sssd
PAM-Konfiguration
PAM muss für SSSD-Authentifizierung konfiguriert werden.
Automatische Konfiguration (empfohlen)
- pam-auth-update
Aktiviere folgende Optionen:
- SSS authentication (für SSSD)
- Create home directory on login (für automatische Home-Verzeichnisse)
Sudo-Konfiguration
Problem: Namenskonflikt mit lokaler sudo-Gruppe
Die lokale sudo-Gruppe (GID 27) kollidiert mit einer LDAP-Gruppe gleichen Namens. Daher verwenden wir einen anderen Gruppennamen für LDAP.
Admin-Gruppe auf dem LDAP Server anlegen
- Gruppe "admins" statt "sudo" anlegen (vermeidet Konflikt)
- ldapaddgroup admins
- Benutzer zur Admin-Gruppe hinzufügen
- ldapaddusertogroup leroy admins
Gruppe prüfen
- Auf dem Client prüfen ob die Gruppe sichtbar ist
- getent group admins
Sudoers konfigurieren (Client)
- visudo -f /etc/sudoers.d/ldap-admins
# LDAP Admins Gruppe
%admins ALL=(ALL:ALL) ALL
Berechtigungen setzen
chmod 0440 /etc/sudoers.d/ldap-admins
Testen
- Als LDAP-User einloggen
- su - thomas
- Gruppenmitgliedschaft prüfen
- id
Sollte "groups=10000(it),10001(admins)" zeigen
- root Zugriff testen
- sudo -i