Modul Menü

Wer ist online?

Insgesamt sind 4 Besucher online: 1 registrierter, 0 unsichtbare und 3 Gäste
Der Besucherrekord liegt bei 226 Besuchern, die am 8. Jul 2012, 14:25 gleichzeitig online waren.

Mitglieder: Google [Bot]

basierend auf den aktiven Besuchern der letzten 5 Minuten

Statistik

13 Beiträge


Geburtstage

Heute hat kein Mitglied Geburtstag Geburtstage in den nächsten 3 Tagen: lomdar67 (46)

Kalender

<< Juni 2013 >>
Mo Di Mi Do Fr Sa So
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

Fest u. Feiertage Kalender-Ereignisse

Anstehende Termine:

CT-Server-LDAP-HOWTO

HOWTOs zum c't Server

Moderator: Moderatoren Team

CT-Server-LDAP-HOWTO

Beitragvon mbreinich » 4. Nov 2005, 09:53

Im Wesentlichen ist dies eine Zusammenfassung für die LDAP Konfiguration die Simon Newton [2] beschrieben hat um Sambauser unter LDAP zu verwalten.

Inhalt
    Voraussetzungen
    1. Installation Slapd
    2. Installation libnss-ldap
    3. Installation libpam-ldap
    4. Installation phpldapadmin
    5. Test
    6. Automatisch Homeverzeichnis anlegen
    7. Tipp
    8. Quellen
Voraussetzungen
    ct-server Installation
    slapd
    libnss-ldap
    libpam-ldap
    phpldapadmin, apache (beides optional)

Ich verwende die bereits im CT-Special benützen Daten:
Domain: zuhause.xx
Server IP-Adresse: 192.168.1.2
IPCop: 192.168.1.1


1. Installation Slapd
server:# apt-get install slapd

Konfigurationsdialog:
falls nicht bereits bei der Grundinstallation angegeben wurde:
DNS domain name: zuhause.xx
Name der Organisation: zuhause.xx
danach wird:
Admin password: slapdadmin
confirm password: slapdadmin
abgefragt.

Bem.: sollte man danach gefragt werden ob man LDAP-v2 aktivieren möchte, so sollte man dies mit Ja beantworten falls man LDAP später als Adressbuch verwenden will. Einige Clients kommen mit LDAP-v3 noch nicht zurecht.

Im Falle, dass slapd bereits früher installiert wurde kann man mittels
server:# dpkg-reconfigure slapd
die Konfiguration erneut durchführen:
Dialog:
BDB
Do you want that your database to be removed when slapd is purged ?
No
Move old database ?
Yes
Allow LDAPv2 protocol ?
Yes
Omit OpenLDAP server configuration ?
No


2. Installation libnss-ldap
Damit das Betriebsystem auch die Einträge des LDAP Verzeichnisses lesen kann benötigt man libnss-ldap.

server:# apt-get install libnss-ldap

Konfigurationsdialog:
LDAP Server Host: 127.0.0.1
DN Searchbase: dc=zuhause,dc=xx
LDAP Version: 3
Sollten die folgenden Fragen auftauchen dann wie folgt antworten:
Database requires login: no
Make config readable by owner: yes

Es folgt dann noch ein Hinweis, dass die Datei /etc/nsswitch.conf angepasst werden muß.


Damit das Betriebsystem auch im LDAP-Verzeichnis nach Usern sucht, muß man die Datei /etc/nsswitch.conf anpassen:
passwd: compat ldap
group: compat ldap
shadow: compat ldap


Dies bewirkt, dass zuerst die Datei /etc/passwd nach Usern durchsucht wird und anschließend LDAP (umgekehrt geht es auch).

3.Installation libpam-ldap
Um sich auch mit den in LDAP befindlichen Usern am System anzumelden benötigen wir noch libpam-ldap.

server:# apt-get install libpam-ldap
Dialog:
Make local root dn admin: yes
Database requires logging in: no
Root login account: cn=admin,dc=zuhause,dc=xx
Root password: slapdadmin
Bei der Frage nach Crypt mit MD5 antworten.
Crypt: MD5


Danach werden noch die folgenden Zeilen in den angegebenen Dateien editiert:
In /etc/pam.d/common-account

die Zeile
account require pam_unix.co
durch
account sufficient pam_ldap.so
account required pam_unix.so try_first_pass
ersetzen.

In /etc/pam.d/common-auth

die Zeile
auth required pam_unix.so nullok_secure
durch
auth sufficient pam_ldap.so
auth required pam_unix.so nullok_secure use_first_pass
ersetzen.

In /etc/pam.d/common-password

die Zeile
password required pam_unix.so nullok obscure min=4 max=8 md5
durch
password sufficient pam_ldap.so
password required pam_unix.so nullok obscure min=4 max=8 md5 use_first_pass
ersetzen.


4. Installation phpldapadmin
Um die LDAP Verwaltung etwas zu vereinfachen installiere ich hier auch phpldapadmin. Natürlich kann man LDAP auch mittels LDIF Files füttern. Vorausgesetzt ist dabei, dass auch Apache bereits bei der Grundinstallation installiert wurde. Andernfalls kann man dies schnell mittels ctsrvcfg nachholen (apt-get install apache, geht auch).

server:# apt-get install phpldapadmin


Das war bereits die ganze Hexerei. Mit den folgenden Schritten kann man das System noch testen.

5. Test
Nun kann man sich via Webbrowser am Ldapserver anmelden:
http://server/phpldapadmin/
User: admin
password: slapdamin

Es sollte nun ein leerer LDAP-Baum mit der Wurzel zuhause.xx erscheinen. Im nächsten Schritt füllt man das LDAP-Verzeichnis mit einigen Daten.
Create new Entry
Select "Organizational Unit" (ou)
Name ou: "users"
confirm.
Danach kann man auch noch die OU "groups" anlegen die später alle Gruppen aufnehmen soll.

Jetzt legen wir unter der OU "group" folgende "Posix-Group" an:
admins gid=2000, myusers gid=2001, guests gid=2002

Zuletzt fügen wir auch noch einen Testuser "User Account (posix account)" hinzu:
ldaptest uid=2000 gid=2001


Mit dem Kommando
server:# getent group
sollte man sämtliche Gruppen erhalten, auch jene die gerade mittels phpladpadmin erstellt wurden.

server:# getent passwd
liefert alle User auch jene aus dem LDAP-Verzeichnis.

Nun sollte es auch möglich sein sich mittels des Users ldaptest am System anzumelden.

6. Home Verzeichnis
Was noch fehlt ist die automatische Erstellung des Home-Verzeichnisses.
Mit
session required pam_mkhomedir.so skel=/etc/skel umask=0022

in der Datei /etc/pam.d/common-session kann man dieses Problem erledigen.

7. TIPP Vorsicht auf korrekte schreibweise in den Dateien /etc/pam.d/common- die oben editiert wurden und auch in der Datei /etc/nsswitch.conf. Ich suchte lange nach einem Fehler der durch einen Tippfehler (Großbuchstabe) entstand. Bei Fehlermeldungen wie
Connection to LDAP server failed for the XX try !
fetch_ldap_pw: neither ldap secret retrieved

auch daran denken die /etc/nsswitch.conf zu kontrollieren. Bei mir war die Ursache ein "Passwd" anstatt "passwd".

Jene die gerne Sambauser in Ldap verwalten möchten kann ich nur das Howto von Simon Newton [2] empfehlen. Hier wird in kurzen Schritten die Konfiguration beschrieben, die auch bei mir funktionierte.


8. Quellen
[1] Samba Installationsguide: /usr/share/doc/samba-doc/htmldocs/Samba-Guide/happy.html
[2] Simon Newton http://www.nomis52.net/?section=docs&page=samldap
[3] Using OpenLDAP on Debian Woody to serve Linux and Samba Users http://homex.subnet.at/~max/ldap/index.php
[4] Ldap für den Hausgebrauch http://www.aumund.org/taxonomy/term/35
mbreinich
Starter
Starter
 
Beiträge: 4
Registriert: 3. Sep 2005, 13:48

Fehler beim Login in phpldapadmin entdeckt!

Beitragvon cornholio » 23. Nov 2005, 13:27

Hallo!

Bei mir klappt fast Alles so, wie Du es im HOWTO beschreibst, nur die Anmeldung am phpldapadmin wollte und wollte nicht gehen.

Ich habe dann herausgefunden, dass es mit:
Code: Alles auswählen
Login: cn=admin,dc=zuhause,dc=xx
Passwort: Das vergebene Passwort eben

funktioniert. Keine Garantie, bin jetzt im Büro und kann nicht nachgucken.

Darauf bin ich nur gekommen, weil ich sowas in der slapd.conf entdeckt habe und - warum auch immer - gemeint habe, ich sollte das vielleicht mal beim Login bei phpldapadmin eingeben. Das war aber nach geschlagenen drei Stunden Installieren, Entfernen, Neukonfigurieren, etc., weil ich dachte, ich habe etwas falsch konfiguriert.

Ich möchte Dir ganz herzlich für Dein ausführliches HOWTO danken, ehrlich. Nur finde ich, sollte man, wenn man ein solches HOWTO schreibt, auch ganz genau aufpassen, dass man Alles richtig wiedergibt.

Bitte nicht Böse sein, aber die drei Stunden wegen so einem popeligen Mist hätte ich mir gern erspart. Wenn schon am Anfang etwas nicht geht, kann man wenigstens gleich Hinschmeißen, aber ganz am Ende ist sowas doppelt Hart!

Wenn es bei Dir so funktioniert, wie Du es geschrieben hast, dann bitte ich um Entschuldigung! Allerdings muss man dann darauf hinweisen, dass sich mittlerweile in der Syntax der Eingabe des Benutzernamens etwas grundlegend geändert hat.
Zuletzt geändert von cornholio am 23. Nov 2005, 17:14, insgesamt 1-mal geändert.
Gruß
Dirk
cornholio
Starter
Starter
 
Beiträge: 3
Registriert: 23. Nov 2005, 12:59

Beitragvon ZOiD » 23. Nov 2005, 14:24

Moin,

oft hilt es auch mal ein die Doku der neu instalierten Software zu schauen, dann spart an sich das stundenlange try & error Verfahren.

ZOiD
ZOiD
Power User
Power User
 
Beiträge: 127
Registriert: 11. Aug 2005, 19:52

Beitragvon cornholio » 23. Nov 2005, 17:13

Jor, an sich guter Einwurf...

Da ich aber irgendwie zu 100% sicher war, ich hätte bei der Installation was falsch gemacht und phpldapadmin auch immer einen Syntax Error beim Anmeldeversuch lieferte, bin ich einfach nicht darauf gekommen, in die Doku von phpldapadmin zu schauen. Die Config-Seiten von slapd und libnss-ldap sehen ja den im HOWTO beschriebenen Seiten auch nur ähnlich und stimmen nicht ganz überein. Zumindest die Stellen, an denen die Fragen kommen weichen von der Beschreibung ab.

Gibt's hier im Forum nicht auch einen Thread über das Thema RTFM? :wink:
Gruß
Dirk
cornholio
Starter
Starter
 
Beiträge: 3
Registriert: 23. Nov 2005, 12:59

Re: Fehler beim Login in phpldapadmin entdeckt!

Beitragvon mbreinich » 13. Dez 2005, 10:50

cornholio hat geschrieben:Ich möchte Dir ganz herzlich für Dein ausführliches HOWTO danken, ehrlich. Nur finde ich, sollte man, wenn man ein solches HOWTO schreibt, auch ganz genau aufpassen, dass man Alles richtig wiedergibt.

Bitte nicht Böse sein, aber die drei Stunden wegen so einem popeligen Mist hätte ich mir gern erspart. Wenn schon am Anfang etwas nicht geht, kann man wenigstens gleich Hinschmeißen, aber ganz am Ende ist sowas doppelt Hart!

Wenn es bei Dir so funktioniert, wie Du es geschrieben hast, dann bitte ich um Entschuldigung! Allerdings muss man dann darauf hinweisen, dass sich mittlerweile in der Syntax der Eingabe des Benutzernamens etwas grundlegend geändert hat.


Tut mir Leid wenn ich Dich oder auch andere falsch informiert habe. Sicherlich bin auch ich an HOWTOS interessiert die auf Anhieb funktionieren. Ich versuche in Zukunft noch genauer darauf zu achten alle (wirklich alle) Schritte genau zu dokumentieren.

Sorry mbreinich
mbreinich
Starter
Starter
 
Beiträge: 4
Registriert: 3. Sep 2005, 13:48

Re: Fehler beim Login in phpldapadmin entdeckt!

Beitragvon lomdar67 » 13. Dez 2005, 11:20

cornholio hat geschrieben:Bitte nicht Böse sein, aber die drei Stunden wegen so einem popeligen Mist hätte ich mir gern erspart. Wenn schon am Anfang etwas nicht geht, kann man wenigstens gleich Hinschmeißen, aber ganz am Ende ist sowas doppelt Hart!


[OFF Topic]

Man sollte das etwas relaxter sehen.

1.) Stecken bestimmt mehr als 3 Stunden in der Erstellung des HowTos
2.) Stellt sich die Frage, was Du ohne diese HowTo gemacht hättest, bzw. wieviel Zeit Du gebraucht hättest ohne das HowTo.

Fehler sind sicherlich ärgerlich, aber man hat halt manchmal nicht die Möglichkeiten jedes HowTo ziegmal zu überprüfen.

Und kein HowTo erhebt hier den Anspruch auf Fehlerlosigkeit.

melwood
We raise hopes, here ... until they're old enough to fend for themselves.
- Mike Callahan
lomdar67
Admin
Admin
 
Beiträge: 984
Registriert: 1. Aug 2005, 10:23
Wohnort: Edling

Re: Fehler beim Login in phpldapadmin entdeckt!

Beitragvon cornholio » 13. Dez 2005, 18:03

melwood hat geschrieben:Fehler sind sicherlich ärgerlich, aber man hat halt manchmal nicht die Möglichkeiten jedes HowTo ziegmal zu überprüfen.

Und kein HowTo erhebt hier den Anspruch auf Fehlerlosigkeit.
melwood

Das sagt ja auch keiner und mein Dank an den Autor war ehrlich gemeint.

Im Übrigen passiert das bei der auch c't ständig und die kriegen sogar Geld für hre Anleitungen/HOWTOs! Da bin ich dann aber auch jedes Mal echt sauer auf den, der das zu verantworten hat!

Die Geschichte mit dem LDAP hat mir aber zwei Sachen deutlich gemacht:
Erstens werde ich mich vorher mit dem grundsätzlichen Thema (hier LDAP, Samba) gründlich befassen, bevor ich an die Umsetzung eines Projektes gehe.

Zweitens hat dieser versaute Nachmittag meiner eh schon viel zu knappen Freizeit mir jetzt endgültig klargemacht, dass die Frickelei sowieso nichts für mich ist. Ich bin dann immer total genervt, wenn ich wieder stundenlang vor der Kiste gehockt und Code eingetickert bzw. eine Problemlösung gesucht habe, statt z. B. Sport zu treiben. Leider muss ich erkennen, dass ich wohl weniger der Typ bin, der Spaß am Basteln hat, sondern der, dem das Benutzen Spaß macht.

Vielleicht sollte ich mir 'nen Mac kaufen! :lol:
Gruß
Dirk
cornholio
Starter
Starter
 
Beiträge: 3
Registriert: 23. Nov 2005, 12:59

Beitragvon neobiker » 13. Dez 2005, 21:40

Einsicht ist der erste Weg zur Besserung... Wenn ich nicht basteln möchte, sollte ich keine Legosteine verwenden :mrgreen:

Der MAC wird Dir sicher nicht den ctserver ersetzen können, und wenn doch... dann hast Du schon beim ctserver das falsche Produkt gewählt...

Ich stimme melwood ausdrücklich zu - Fehler in HOWTO's gehören dazu. Das Lesen eines HOWTOs rechtfertigt nicht, das Hinrn auszuschalten und stattdessen auf den zu schimpfen, der sein Hirn benutzt und für andere seine Zeit mit einem HOWTO verprasst!

Ein ebenfalls nicht fehlerloser HOWTO Schreiberling!
Gruss neobiker
Bildhttp://wiki.neobiker.de
"Der Computer macht genau das, was Du ihm sagst - nicht das, was Du von ihm willst!"
neobiker
Moderator
Moderator
 
Beiträge: 1226
Registriert: 11. Aug 2005, 22:06
Wohnort: Nürnberg / Umgebung

Beitragvon spitze » 18. Dez 2005, 12:18

Super HowTo!!
Doch ich hab aus "Unwissenheit" unter phpLDAPadmin den admin gelöscht. Jetzt kann ich mich leider unter phpLDAPadmin nicht mehr einloggen, was auch logisch ist.
Mit welchen Config File von LDAP kann man das eventuell wieder rückgängig machen???

Gruss
Spitze
spitze
Starter
Starter
 
Beiträge: 7
Registriert: 24. Okt 2005, 21:19

Beitragvon holzbalken » 31. Mär 2006, 21:27

Ich hatte beim Installieren noch ein paar weitere Probleme:

Die HowTo klappte hervorragend bis zum Aufrufen von phpldapadmin
Zuerst kam "not found "

1. Wie ich feststellen mußte, war auf dem Rechner sowohl apache , wie auch apache2 installiert.

Lösung: Apache deinstalliert "apt-get remove apache"

Danach phpldapadmin nochmals deinstalliert
apt-get remove phpldapadmin
und nochmals installiert

Jetzt mußte ich noch die Datei /etc/phpldapadmin/apache.conf

in /etc/apache2/conf.d/phpldapadmin rumkopieren, da scheinbar die deinstallation und neuinstallation nicht fehlerfrei lief.

Danach hat sich phpldapadmin wenigstens gemeldet, allerdings mit einer Fehlermeldung : php-sldap Support nicht vorhanden

Lösung:
dpkg-reconfigure php4-ldap
dort auf Nachfragen ob php-ldap in diverse Installationsdateien eingetragen werden soll, mit ja antworten. ( 3 x )

und schon lief phpldapadmin.

P.S: Also Tipp an alle: Kontrolliert, das ihr nicht apache und apache2 gleichzeitig installiert habt, bevor ihr euch an das Howto macht. ( Festellen z.Bsp. ob unter /etc/init.d es 2 Startdateien apache und apache2 gibt ? Das bedeutet, das beie Versionen installiert sind. )

Ich bin mal gespannt, wie das nun weiter läuft.

Viel Spaß
holzbalken
Starter
Starter
 
Beiträge: 2
Registriert: 1. Nov 2005, 00:30

Beitragvon zini2001 » 23. Jul 2006, 00:08

hallo!

das gleiche problem hatte ich auch gerade. leider hat die configuration der apache (ob nu 1 oder 2 sei mal hier wumpe) nicht geklappt.

wichtig ist hier das in der datei
Code:
/etc/php4/apache2/php.ini

folgenden eintrag hinten anhängen wird!!!
Code:
extension=ldap.so
zini2001
Starter
Starter
 
Beiträge: 8
Registriert: 24. Okt 2005, 22:16

Beitragvon zini2001 » 23. Jul 2006, 00:42

melde ich mich mit einem user auf dem server an, wird das homeverzeichnis erstellt. aber ich habe keinen name auf dem server?

Code: Alles auswählen
I have no name@homeserver:~$


beim beenden von zb. dem mc, kommt folgende fehlermeldung:

Code: Alles auswählen
** (process:3921): CRITICAL ** init_groups: assertion `pwd != NULL' faild


ist das bei euch auch aufgetreten? hat jemand eine ahnung?

gruß
zini2001
Starter
Starter
 
Beiträge: 8
Registriert: 24. Okt 2005, 22:16

Beitragvon zini2001 » 23. Jul 2006, 13:42

ein
Code: Alles auswählen
chmod a+r libnss_ldap.conf

in /etc behebt diese erscheinung
zini2001
Starter
Starter
 
Beiträge: 8
Registriert: 24. Okt 2005, 22:16


Zurück zu HOWTOs

Wer ist online?

Mitglieder: Google [Bot]

cron