OpenLDAP: Konvertieren einer flachen Datei (slapd.conf) in OLC (slapd.d) ... kann nicht auf cn = config zugreifen

884
Hounddog

Ich versuche, OpenLDAP einzurichten. Ich hatte Probleme mit der OLC-Konfigurationsoption, also habe ich mich für die Eingabe im Stil slapd.conf entschieden, da ich bei LDAP ein absoluter Noob bin und einfacher zu verstehen war.

Ich habe jetzt die Notwendigkeit, die OLC-Konfigurationsoption zu verwenden, also versuche ich zu konvertieren. Ich kann mit dem Befehl korrekt konvertieren

slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d chown ldap:ldap -R /etc/openldap/slapd.d 

und alles beginnt und funktioniert korrekt und alles ist gut. Ich kann jedoch nicht cn=configmit ldapsearch darauf zugreifen. Ich habe anonymen Zugriff mit versucht:

ldapsearch -x -D -b 'cn=config' '(objectclass=*)' 

die zurückkehrt 32 No such object

Ich würde gerne Ideen haben, was ich hier falsch mache.

Hier ist meine (jetzt veraltete und konvertierte) slapd.conf-Datei:

include /etc/openldap/schema/core.schema include /etc/openldap/schema/cosine.schema include /etc/openldap/schema/inetorgperson.schema include /etc/openldap/schema/nis.schema  pidfile /var/run/openldap/slapd.pid argsfile /var/run/openldap/slapd.args  moduleload memberof.so  access to dn.base="" by * read access to dn.base="cn=Subschema" by * read access to dn.base="ou=users,dc=example,dc=com" filter=(objectclass=organizationalUnit) by dn.subtree="ou=sysusers,dc=example,dc=com" read by users read access to dn.children="ou=users,dc=example,dc=com" filter=(objectclass=inetOrgPerson) attrs=uid,memberOf,entry,objectClass by dn.subtree="ou=sysusers,dc=example,dc=com" read by self write access to dn.children="ou=users,dc=example,dc=com" filter=(objectclass=inetOrgPerson) attrs=mail,cn by dn.base="cn=owncloud,ou=sysusers,dc=example,dc=com" read by self write access to dn.base="dc=example,dc=com" by users read access to * by self write by anonymous auth  database hdb suffix "dc=example,dc=com" checkpoint 32 30 rootdn "cn=admin,dc=example,dc=com" rootpw redactedredactedredacted directory /var/lib/openldap-data index objectClass eq loglevel 4  overlay memberof  database config access to * by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage by * read 

Ich bin ganz neu beim Einrichten eines LDAP-Servers, es tut mir leid, wenn ich dumme Fragen stelle.

0
Funktioniert die "Peercred" -Regel? (Dh hat `ldapsearch -H ldapi: // -Y EXTERNAL` Zugriff?) Was zeigt` slapacl -b cn = config entry / read`? grawity vor 7 Jahren 0
ldapsearch -H lapi: // -Y EXTERNAL -x -b 'cn = config' '(objectclass = *)' `gibt" ldapsearch: nicht kompatibel mit der vorherigen Authentifizierungsauswahl "zurück. "slapacl -b cn = config entry / read" gibt mir "slapacl: Die Zieldatenbank unterstützt erforderliche Operationen nicht; Sie können es mit" -u "(Trockenlauf) versuchen. Durch das Hinzufügen von" -u "erhalten Sie Lesezugriff auf den Eintrag : DENIED " Hounddog vor 7 Jahren 0
Oh, ich habe gerade gemerkt, dass -x und -Y sich widersprechen. Wenn Sie -x aus dem Befehl ldapsearch entfernen, erhalten Sie wieder "32 Kein solches Objekt". Hounddog vor 7 Jahren 0
Vergessen zu erwähnen - führen Sie die Suche als root durch (da die ACL uid 0 sagt). grawity vor 7 Jahren 0
Ja, alle Befehle wurden als root ausgeführt. Hounddog vor 7 Jahren 0

1 Antwort auf die Frage

0
Hounddog

Wenn Sie versuchen, mit slaptest Ihr Verzeichnis slapd.d zu generieren, wenn es bereits voll ist, wird kein neues Verzeichnis erstellt. Mein oben veröffentlichtes Beispiel slapd.conf wurde nicht wirklich in slapd.d konvertiert.

Nachdem ich slapd.d gelöscht und alles noch einmal ausgeführt hatte, war alles sehr gut.