Benutzer:Dorn/doku/ldap.txt: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Harry (Diskussion | Beiträge) Die Seite wurde neu angelegt: <pre> ==== Installation des LDAP ============= 1. wir stellen das samba.schema bereit (wer das schon gemacht hatte, dann kann das nat�rlich jetzt entfallen) ... |
Harry (Diskussion | Beiträge) K Umlaute koorigiert |
||
| Zeile 3: | Zeile 3: | ||
1. wir stellen das samba.schema bereit (wer das schon gemacht hatte, | 1. wir stellen das samba.schema bereit (wer das schon gemacht hatte, | ||
dann kann das | dann kann das natürlich jetzt entfallen) | ||
aptitude install samba-doc | aptitude install samba-doc | ||
| Zeile 36: | Zeile 36: | ||
Benutzte LDAP-Version: 3 | Benutzte LDAP-Version: 3 | ||
LDAP-Zugang | LDAP-Zugang für Root: cn=admin,dc=delixs-schule,dc=de | ||
Passwort des LDAP-Zugangs | Passwort des LDAP-Zugangs für Root: geheim | ||
| Zeile 44: | Zeile 44: | ||
5. aptitude install libpam-ldap | 5. aptitude install libpam-ldap | ||
(Aufruf | (Aufruf entfällt, da gleich bei 3. automatisch mit installiert wurde) | ||
--|Konfiguriere libpam-ldap|-- | --|Konfiguriere libpam-ldap|-- | ||
| Zeile 50: | Zeile 50: | ||
Lokaler root zum Datenbank-Administrator machen: Ja | Lokaler root zum Datenbank-Administrator machen: Ja | ||
Benötigt die LDAP-Datenbank eine Anmeldung Nein | |||
LDAP-Zugang | LDAP-Zugang für Root: cn=admin,dc=delixs-schule,dc=de | ||
Passwort des LDAP-Zugangs | Passwort des LDAP-Zugangs für root: geheim | ||
| Zeile 83: | Zeile 83: | ||
rootdn "cn=admin,dc=delixs-schule,dc=de" | rootdn "cn=admin,dc=delixs-schule,dc=de" | ||
rootpw wieder | rootpw wieder ergänzt, da in der Literatur so angegeben | ||
erstellt mit: | erstellt mit: | ||
| Zeile 89: | Zeile 89: | ||
slappasswd -u >> slapd.conf | slappasswd -u >> slapd.conf | ||
( | (verschlüsselte Passwort angehangen, mit mcedit verschieben) | ||
| Zeile 101: | Zeile 101: | ||
/etc/init.d/nscd stop | /etc/init.d/nscd stop | ||
Die /etc/libnss-ldap.conf wurde | Die /etc/libnss-ldap.conf wurde folgendermaßen abgeändert | ||
base dc=delixs-schule,dc=de | base dc=delixs-schule,dc=de | ||
| Zeile 134: | Zeile 134: | ||
11. diese Warnungen beseitigen ( | 11. diese Warnungen beseitigen (entfällt bei der Datei im Paket) | ||
in /etc/ldap/slapd.conf | in /etc/ldap/slapd.conf müssen folgende Zeilen (105, 128*) | ||
bearbeitet werden: | bearbeitet werden: | ||
| Zeile 150: | Zeile 150: | ||
jeweils die 2. Zeile (also 'by dn="cn=admin,dc=delixs-schule,dc=de" | jeweils die 2. Zeile (also 'by dn="cn=admin,dc=delixs-schule,dc=de" | ||
write') muss | write') muss rausgelöscht werden (nicht nur auskommentiert!) | ||
| Zeile 158: | Zeile 158: | ||
Da die smbldap-tools davon ausgehen, dass alle Gruppen unter einer 'ou' | Da die smbldap-tools davon ausgehen, dass alle Gruppen unter einer 'ou' | ||
zu finden sind, wird nun doch diese sehr einfache Struktur | zu finden sind, wird nun doch diese sehr einfache Struktur gewählt. | ||
| Zeile 174: | Zeile 174: | ||
Anmerkung: die | Anmerkung: die Einträge für sambaDomain und für DHCP kommen später | ||
die | die Einträge für LDAPBASE und cn=admin sind schon drin | ||
| Zeile 184: | Zeile 184: | ||
ldapadd -x -D "cn=admin,dc=delixs-schule,dc=de" -W -f /root/initldap.ldif | ldapadd -x -D "cn=admin,dc=delixs-schule,dc=de" -W -f /root/initldap.ldif | ||
rückgängig gemacht werden kann es mit dem passenden Killfile (Datei im Paket) | |||
http://www.arktur.th.schule.de/killinitldap.del | http://www.arktur.th.schule.de/killinitldap.del | ||
| Zeile 211: | Zeile 211: | ||
------------------ | ------------------ | ||
base dc=delixs-schule,dc=de | base dc=delixs-schule,dc=de | ||
uri ldap://127.0.0.1/ # | uri ldap://127.0.0.1/ # geändert | ||
ldap_version 3 | ldap_version 3 | ||
rootbinddn cn=admin,dc=delixs-schule,dc=de | rootbinddn cn=admin,dc=delixs-schule,dc=de | ||
scope sub # | scope sub # geändert | ||
bind_policy soft # | bind_policy soft # geändert | ||
pam_password exop # | pam_password exop # geändert | ||
Anm.: wo | Anm.: wo geändert steht, da musste ich den Eintrag erstellen. | ||
Die zwei anderen | Die zwei anderen Einträge waren schon so. | ||
/etc/pam.d/common-account (Datei im Paket) | /etc/pam.d/common-account (Datei im Paket) | ||
| Zeile 247: | Zeile 247: | ||
15. | 15. Ergänzungen an der /etc/ldap/slapd.conf (Datei im Paket) | ||
folgende indexe sollten angelegt werden: | folgende indexe sollten angelegt werden: | ||
| Zeile 301: | Zeile 301: | ||
uid=2000(mmustermann) gid=1002(crontab) Gruppen=1002(crontab) | uid=2000(mmustermann) gid=1002(crontab) Gruppen=1002(crontab) | ||
d) mit 'passwd mmustermann' kann man das Passwort | d) mit 'passwd mmustermann' kann man das Passwort ändern | ||
Es ging hier nur um den Test der PAM-Konfiguration, also diesen User | Es ging hier nur um den Test der PAM-Konfiguration, also diesen User | ||
wieder | wieder löschen. (eine lange Zeile!) | ||
ldapdelete -x -D "cn=admin,dc=delixs-schule,dc=de" -W "uid=mmustermann,ou=people,ou=accounts,dc=delixs-schule,dc=de" | ldapdelete -x -D "cn=admin,dc=delixs-schule,dc=de" -W "uid=mmustermann,ou=people,ou=accounts,dc=delixs-schule,dc=de" | ||
Version vom 18. März 2009, 08:52 Uhr
==== Installation des LDAP =============
1. wir stellen das samba.schema bereit (wer das schon gemacht hatte,
dann kann das natürlich jetzt entfallen)
aptitude install samba-doc
cd /usr/share/doc/samba-doc/examples/LDAP
gunzip samba.schema.gz
2. aptitude install slapd
--|Konfiguriere slapd|--
Administrator-Passwort: geheim
3. aptitude install ldap-utils libsasl2-modules
4. aptitude install libnss-ldap
--|Konfiguriere libnss-ldap|--
URI des LDAP-Servers verlangt: ldap://127.0.0.1:389/
Eindeutiger Name (DN - ...) der Suchbasis: dc=delixs-schule,dc=de
Benutzte LDAP-Version: 3
LDAP-Zugang für Root: cn=admin,dc=delixs-schule,dc=de
Passwort des LDAP-Zugangs für Root: geheim
5. aptitude install libpam-ldap
(Aufruf entfällt, da gleich bei 3. automatisch mit installiert wurde)
--|Konfiguriere libpam-ldap|--
Lokaler root zum Datenbank-Administrator machen: Ja
Benötigt die LDAP-Datenbank eine Anmeldung Nein
LDAP-Zugang für Root: cn=admin,dc=delixs-schule,dc=de
Passwort des LDAP-Zugangs für root: geheim
6. die /etc/ldap/ldap.conf (Datei im Paket)
BASE dc=delixs-schule,dc=de
URI ldap://localhost
SIZELIMIT 12
TIMELIMIT 15
DEREF always
7. die /etc/ldap/slapd.conf (Datei im Paket)
das samba-Schema wurde schon am Anfang kopiert, jetzt einbinden:
include /etc/ldap/schema/samba.schema
(*hinter* den anderen Zeilen eintragen)
loglevel 384 (wenn Entwicklung abgeschlossen, auf 0 setzen)
sizelimit 3000
backend hdb gelassen
rootdn "cn=admin,dc=delixs-schule,dc=de"
rootpw wieder ergänzt, da in der Literatur so angegeben
erstellt mit:
cd /etc/ldap
slappasswd -u >> slapd.conf
(verschlüsselte Passwort angehangen, mit mcedit verschieben)
8. /etc/libnss-ldap.conf (Datei im Paket)
Anm. von Harry: Bevor man irgendwas mit NSS und/oder PAM testen oder
konfigurieren will, muss der nscd ausgeschaltet werden:
/etc/init.d/nscd stop
Die /etc/libnss-ldap.conf wurde folgendermaßen abgeändert
base dc=delixs-schule,dc=de
deref always
uri ldap://127.0.0.1/
ldap_version 3
rootbinddn cn=admin,dc=delixs-schule,dc=de
scope sub
bind_timelimit 30
bind_policy soft
nss_connect_policy persist
/etc/init.d/nscd start
9. Neustart des slapd
/etc/init.d/slapd restart
10. Test
'slapcat' sollte 2 Entries anzeigen
Wenn man die Ausgabe umleitet mit 'slapcat > test.ldif', dann
kommen 2 Warnungen
11. diese Warnungen beseitigen (entfällt bei der Datei im Paket)
in /etc/ldap/slapd.conf müssen folgende Zeilen (105, 128*)
bearbeitet werden:
access to attrs=userPassword,shadowLastChange
by dn="cn=admin,dc=delixs-schule,dc=de" write
by anonymous auth
by self write
by * none
access to *
by dn="cn=admin,dc=delixs-schule,dc=de" write
by * read
jeweils die 2. Zeile (also 'by dn="cn=admin,dc=delixs-schule,dc=de"
write') muss rausgelöscht werden (nicht nur auskommentiert!)
12. Initialisierung des LDAPs
Da die smbldap-tools davon ausgehen, dass alle Gruppen unter einer 'ou'
zu finden sind, wird nun doch diese sehr einfache Struktur gewählt.
.----- ou=groups
/
/
/ .------ ou=people
/ /
LDAPBASE -------- ou=accounts
\ \
\ `------ ou=machines
\
\
`----- cn=admin
Anmerkung: die Einträge für sambaDomain und für DHCP kommen später
die Einträge für LDAPBASE und cn=admin sind schon drin
das LDIF-File http://www.arktur.th.schule.de/initldap.ldif (Datei im Paket)
wird so eingespielt:
ldapadd -x -D "cn=admin,dc=delixs-schule,dc=de" -W -f /root/initldap.ldif
rückgängig gemacht werden kann es mit dem passenden Killfile (Datei im Paket)
http://www.arktur.th.schule.de/killinitldap.del
ldapdelete -x -D cn=admin,dc=delixs-schule,dc=de -W -f /root/killinitldap.del
13. Konfiguration von NSS
/etc/nsswitch.conf (Datei im Paket)
-------------------
passwd: compat ldap
shadow: compat ldap
group: compat ldap
14. Konfiguration von PAM
als root eine 2. Konsole aufgemacht!
/etc/pam_ldap.conf (Datei im Paket)
------------------
base dc=delixs-schule,dc=de
uri ldap://127.0.0.1/ # geändert
ldap_version 3
rootbinddn cn=admin,dc=delixs-schule,dc=de
scope sub # geändert
bind_policy soft # geändert
pam_password exop # geändert
Anm.: wo geändert steht, da musste ich den Eintrag erstellen.
Die zwei anderen Einträge waren schon so.
/etc/pam.d/common-account (Datei im Paket)
-------------------------
account [success=1 default=ignore] pam_unix.so
account required pam_ldap.so
account required pam_permit.so
/etc/pam.d/common-auth (Datei im Paket)
----------------------
auth [success=1 default=ignore] pam_unix.so
auth required pam_ldap.so use_first_pass ignore_authinfo_unavail
auth required pam_permit.so
/etc/pam.d/common-password (Datei im Paket)
--------------------------
password [success=1 default=ignore] pam_unix.so nullok obscure min=4 max=8 md5
password required pam_ldap.so try_first_pass
password required pam_smbpass.so nullok use_authtok try_first_pass
password required pam_permit.so
/etc/pam.d/common-session (im Paket)
-------------------------
session required pam_unix.so
session required pam_mkhomedir.so skel=/etc/skel umask=0022
15. Ergänzungen an der /etc/ldap/slapd.conf (Datei im Paket)
folgende indexe sollten angelegt werden:
#index default eq
index objectClass eq
index uidNumber eq
index gidNumber eq
index uid,displayName eq
index cn,sn pres,eq,sub
index memberUid eq
index sambaSID eq
index sambaPrimaryGroupSID eq
index sambaDomainName eq
bei den ACLs kommentieren wir diese aus:
(Anm.: beim Testen unter Samba ging search nicht)
access to dn.base="" by * read
16. Neustart des LDAP
/etc/init.d/slapd restart
17. Testen der PAM-Konfiguration
die Datei unter
http://www.arktur.th.schule.de/mmustermann.ldif (Datei im Paket)
in den LDAP einspielen mit
ldapadd -x -D "cn=admin,dc=delixs-schule,dc=de" -W -f /root/mmustermann.ldif
damit automatisch das Homeverzeichnis erstellt werden kann, legen
wir noch das Verzeichnis /home/students/ an
jetzt sollte der Aufruf von
a) anmelden auf einer weiteren Console mit 'mmustermann' und dem Passwort 'geheim'
b) 'getent passwd mmustermann' liefert
mmustermann:x:2000:102:Manfred Mustermann,testklasse:/home/schueler/mmustermann:/bin/bash
c) 'id mmustermann' liefert
uid=2000(mmustermann) gid=1002(crontab) Gruppen=1002(crontab)
d) mit 'passwd mmustermann' kann man das Passwort ändern
Es ging hier nur um den Test der PAM-Konfiguration, also diesen User
wieder löschen. (eine lange Zeile!)
ldapdelete -x -D "cn=admin,dc=delixs-schule,dc=de" -W "uid=mmustermann,ou=people,ou=accounts,dc=delixs-schule,dc=de"