Last modified by Christoph Bußenius on 2025/07/23 12:35

Hide last authors
Christoph Bußenius 1.1 1 == Für wen ist dieser Artikel? ==
2
Christoph Bußenius 1.4 3 * Du möchtest eine eigene Web-Anwendung o.ä. auf einem eigenen Server oder einer VM installieren
Christoph Bußenius 1.1 4 * Du möchtest den Login für CIT-Kennungen ermöglichen (nicht die TUM-Kennungen)
5 * Du möchtest evtl. auch Gruppenzugehörigkeit zu Gruppen aus der StrukturDB prüfen
6
7 Andere Anwendungsfälle:
8
9 * [[LDAP-Login für Linux>>doc:CIT.ITO.Docs.Guides.LDAP-Client.WebHome]]
10 * [[Netzwerkadressbuch für E-Mail-Programme>>doc:CIT.ITO.Docs.Services.E-Mail.LDAP Address Book.WebHome]]
11
12 == Config: ==
13
Christoph Bußenius 1.2 14 * LDAP-Server: ldaps:~/~/ldap.cit.tum.de (Port 636) oder ldap:~/~/ldap.cit.tum.de (Port 389 mit StartTLS)
15 * Base: ##ou=dir,dc=cit,dc=tum,dc=de##
16 * Suchterm für Users: ##(&(objectClass=rbgAccount)(uid=LOGINNAME))## ~-~- Dabei ist LOGINNAME der Login-Name, den man sucht
17 * Alternativ zur User-Suche: DN Pattern benutzen: ##uid=LOGINNAME,ou=users,ou=dir,dc=cit,dc=tum,dc=de##
Christoph Bußenius 1.3 18
19 Der LDAP-Server ist aus den IP-Ranges der CIT zugänglich. Es kann entweder anonymer LDAP benutzt werden oder Bind auf irgend eine User-Kennung per Benutzerpasswort.
20
21 === Gruppen ===
22
Christoph Bußenius 1.4 23 Es können die Benutzergruppen aus der StrukturDB abgefragt werden.
24
Christoph Bußenius 2.1 25 Wir unterstützen ##posixGroup##, ##groupOfNames## sowie ##groupOfUniqueNames##. Alle Gruppen sind mit jeder der drei Varianten verfügbar. Viele verfügbare Anwendungen unterstützen nur eine dieser Varianten.
Christoph Bußenius 1.4 26
27 Die Suchterme sind jeweils:
28
29 * ##(&(cn=GROUPNAME)(objectClass=posixGroup))## (base wie oben)
30 * ##(&(cn=GROUPNAME)(objectClass=groupOfNames))## (base wie oben)
31 * ##(&(cn=GROUPNAME)(objectClass=groupOfUniqueNames))## mit base ##ou=udngroups,dc=cit,dc=tum,dc=de##
Christoph Bußenius 1.5 32
Christoph Bußenius 2.1 33 Die ##groupOfUniqueNames## hat eine andere Base und sollte nur benutzt werden, wenn die anderen Varianten überhaupt nicht unterstützt werden.
Christoph Bußenius 3.1 34
35 === Command Line ===
36
37 Vor allem zum Testen sind diese Command-Line-Tools hilfreich. Hierbei wird das ##ldapsearch## aus dem Ubuntu-Paket ldap-utils gebraucht. Beachte, dass es (z.B. auf Solaris) auch Varianten von ldapsearch gibt, die andere Optionen brauchen.
38
39 ==== LDAP-Baum dumpen: ====
40
41 ##ldapsearch -x -H 'ldaps:~/~/ldap.cit.tum.de' -b 'dc=cit,dc=tum,dc=de'##
42
Christoph Bußenius 4.1 43 ==== User suchen: ====
44
Christoph Bußenius 5.1 45 ##ldapsearch -x -H 'ldaps://ldap.cit.tum.de' -b 'dc=cit,dc=tum,dc=de' '(&(objectClass=rbgAccount)(uid=USERNAME))'
Christoph Bußenius 4.1 46
47 ==== Userpasswort prüfen: ====
48
Christoph Bußenius 5.1 49 ##ldapsearch -x -H 'ldaps://ldap.cit.tum.de' -D 'uid=USERNAME,ou=users,ou=dir,dc=cit,dc=tum,dc=de' -W '' b 'ou=dir,dc=cit,dc=tum,dc=de' -s base