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

Show last authors
1 == Für wen ist dieser Artikel? ==
2
3 * Du möchtest eine eigene Web-Anwendung o.ä. auf einem eigenen Server oder einer VM installieren
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
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##
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
23 Es können die Benutzergruppen aus der StrukturDB abgefragt werden.
24
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.
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##
32
33 Die ##groupOfUniqueNames## hat eine andere Base und sollte nur benutzt werden, wenn die anderen Varianten überhaupt nicht unterstützt werden.
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
43 ==== User suchen: ====
44
45 ##ldapsearch -x -H 'ldaps://ldap.cit.tum.de' -b 'dc=cit,dc=tum,dc=de' '(&(objectClass=rbgAccount)(uid=USERNAME))'
46
47 ==== Userpasswort prüfen: ====
48
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