ldap.sh hinzugefügt

This commit is contained in:
sebastian.zell 2024-12-27 21:53:44 +00:00
commit ed70d2eaa4
1 changed files with 55 additions and 0 deletions

55
ldap.sh Normal file
View File

@ -0,0 +1,55 @@
#!/bin/bash
# LDAP-Server-Konfiguration
LDAP_URI="ldap://192.168.174.101:7389"
LDAP_BASE="dc=zell-aufmass,dc=de"
LDAP_BINDDN="uid=Administrator,cn=users,dc=zell-aufmass,dc=de"
LDAP_BINDPW="6%&6DdWMLzjS^i"
# Installiere die benötigten Pakete für LDAP und nslcd
echo "Installiere notwendige Pakete..."
apt update
apt install -y libnss-ldapd libpam-ldapd ldap-utils nslcd
# Konfiguriere /etc/nsswitch.conf
echo "Konfiguriere /etc/nsswitch.conf..."
sed -i 's/^passwd:.*/passwd: compat ldap/' /etc/nsswitch.conf
sed -i 's/^group:.*/group: compat ldap/' /etc/nsswitch.conf
sed -i 's/^shadow:.*/shadow: compat ldap/' /etc/nsswitch.conf
# Konfiguriere /etc/nslcd.conf
echo "Konfiguriere /etc/nslcd.conf..."
cat > /etc/nslcd.conf <<EOF
# URI des LDAP-Servers
uri $LDAP_URI
# Basis-DN für die Suche
base $LDAP_BASE
# Bind-DN und Passwort für die Authentifizierung
binddn $LDAP_BINDDN
bindpw $LDAP_BINDPW
# Verhindere DNS-Auflösung für LDAP-Anfragen, da dies manchmal zu Problemen führen kann
nsswitch_use_dns no
EOF
# Starte den nslcd-Dienst neu
echo "Starte den nslcd-Dienst neu..."
systemctl restart nslcd
# Überprüfe, ob der nslcd-Dienst läuft
echo "Überprüfe den Status von nslcd..."
systemctl status nslcd
# Überprüfen der LDAP-Integration
echo "Überprüfe, ob Benutzer und Gruppen aus LDAP korrekt angezeigt werden..."
getent passwd
getent group
# Überprüfen, ob lokale Benutzer angezeigt werden
echo "Überprüfe, ob lokale Benutzer korrekt angezeigt werden..."
getent passwd | grep -i 'debian' # Beispiel: Filtern nach einem lokalen Benutzer
# Abschluss
echo "LDAP-Integration abgeschlossen. Teste die Anmeldung über SSH oder Konsole."