Server
Das ganze läuft im Berg in einem LXC.
IP: 192.168.178.249
Der Reverse Proxy läuft auf dem vs01.nerdberg.de / Hetzner.
LDAP
Port: 389 und 636 (SSL)
Aufbau
Basedn: dc=nerdberg,dc=de
User
- Base: ou=user,dc=nerdberg,dc=de
- Class: inetOrgPerson
- rdn: cn
- Wir setzen: email, cn, givenName, sn, userPassword
Gruppen
- Base: ou=group,dc=nerdberg,de=de
- Class: groupOfNames
- rdn: cn
- Wir setzen: cn, member
Weitere Einstellungen
Standard Hashing Verfahren
Standardmäßig würde OpenLDAP SSHA nehmen. Wir benutzen hier lieber crypt. Hierzu eine modify.ldap erstellen:
dn: olcDatabase={-1}frontend,cn=config add: olcPasswordHash olcPasswordHash: {CRYPT}
Anschließend ausführen
ldapmodify -Y EXTERNAL -H ldapi:/// -f modify.ldap
Anonyme Leserechte verbieten
Modify.ldap erstellen:
dn: cn=config changetype: modify add: olcDisallows olcDisallows: bind_anon dn: cn=config changetype: modify add: olcRequires olcRequires: authc dn: olcDatabase={-1}frontend,cn=config changetype: modify add: olcRequires olcRequires: authc
Anschließend ausführen
ldapmodify -Y EXTERNAL -H ldapi:/// -f modify.ldap
Memberof Overlay
Anleitung: https://tylersguides.com/guides/openldap-memberof-overlay/
Hintergrund: Sollten wir mal Freeradius einsetzen wollen (Mike will das), dann wird dieses Benötigt, bzw. erleichtert vieles.
Keycloak
Reverse Proxy
Cert
#!/bin/bash echo "Letsencrypt renewal hook running..." echo "RENEWED_DOMAINS=$RENEWED_DOMAINS" echo "RENEWED_LINEAGE=$RENEWED_LINEAGE" if grep --quiet "nerdberg.de" <<< "$RENEWED_DOMAINS"; then cat $RENEWED_LINEAGE/privkey.pem > /opt/keycloak/conf/server.key.pem cat $RENEWED_LINEAGE/fullchain.pem > /opt/keycloak/conf/server.crt.pem fi