====== OpenLDAP als Login-Server ====== ===== Minimalkonfiguration für nss/pam/sssd ===== Der OpenLDAP Server ''slapd'' muß wie in [[ldap]] gezeigt vorkonfiguriert sein. Darüber hinaus sind folgende Einstellungen notwendig: ==== Entscheidung: rfc2307 oder rfc2307bis-01 ? ==== * [[http://tools.ietf.org/html/draft-howard-rfc2307bis-01|rfc2307bis-01]] (expired: 20.08.2005){{:rfc2307bis-draft01.ldif|LDIF}} * [[http://tools.ietf.org/html/draft-howard-rfc2307bis-02|rfc2307bis-02]] (expired: 10.02.2010) * openSuSE: default ist rfc2307bis * debian: default ist rfc2307, alternativ rfc2307bis.schema z.B. aus dem Paket ''fusiondirectory'' * ceontos: default ist rfc2307 -> [[ldap-schema|Schema-Änderung]] nötig? ==== Variante slapd.conf ==== Debian: … include /etc/ldap/schema/nis.schema include /etc/ldap/schema/inetorgperson.schema … CentOS: … include /etc/openldap/schema/nis.schema include /etc/openldap/schema/inetorgperson.schema … openSuSE: … include /etc/openldap/schema/inetorgperson.schema include /etc/openldap/schema/rfc2307bis.schema include /etc/openldap/schema/yast.schema … ==== Variante slapd.d/ ==== ldapsearch -b cn=schema,cn=config -LLL dn … dn: cn={0}core,cn=schema,cn=config dn: cn={1}cosine,cn=schema,cn=config dn: cn={2}nis,cn=schema,cn=config dn: cn={3}inetorgperson,cn=schema,cn=config … ===== OrganizationalUnits anlegen ===== OrganizationalUnits "people" und "groups" für Benutzer und Gruppen im LDAP-Baum anlegen: (( Die Kurzschreibweise ''ldapadd -x -W'' ohne Angabe des Admin-Kontos funktioniert nur, wenn vorher eine [[ldap-client|Client-Konfigurationsdatei]] ''.ldaprc'' oder ''ldap.conf'' angelegt wurde )) DOMAIN="dc=linuxhotel,dc=de" ldapadd -x -W < dn: ou=people,$DOMAIN objectClass: top objectClass: organizationalUnit ou: people dn: ou=groups,$DOMAIN objectclass: top objectclass: organizationalUnit ou: groups LDIF ===== Gruppe anlegen ===== DOMAIN="dc=linuxhotel,dc=de" ldapadd -x -W < rfc2307 / Debian, RedHat: dn: cn=ldapusers,ou=groups,$DOMAIN objectClass: top objectClass: posixGroup gidNumber: 10000 cn: ldapusers rfc2307bis / SuSE: dn: cn=ldapusers,ou=groups,$DOMAIN objectClass: top objectClass: groupOfNames objectClass: posixGroup memberUid: nutzer member: uid=nutzer,ou=people,$DOMAIN gidNumber: 10000 cn: ldapusers LDIF ===== Benutzer anlegen ===== DOMAIN="dc=linuxhotel,dc=de" USERNAME=nutzer UIDNUMBER=10023 tee user.ldif < dn: uid=$USERNAME,ou=people,$DOMAIN objectClass: top objectClass: posixAccount objectClass: account cn: mein nutzer uid: $USERNAME uidNumber: $UIDNUMBER gidNumber: 10000 homeDirectory: /home/$USERNAME loginShell: /bin/bash LDIF ldapadd -x -W -f user.ldif ldappasswd -x -W -S "uid=$USERNAME,ou=people,$DOMAIN"