<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://linupedia.org/wiki/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=ThomasF</id>
	<title>Linupedia.org - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://linupedia.org/wiki/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=ThomasF"/>
	<link rel="alternate" type="text/html" href="https://linupedia.org/opensuse/Spezial:Beitr%C3%A4ge/ThomasF"/>
	<updated>2026-04-14T19:01:19Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19194</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19194"/>
		<updated>2007-07-05T12:50:12Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Kerberos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
 ''ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
Nun beherrscht der Windowsserver jedoch einerseits keine TLS Verschlüsselung, anderseits ist es aber auch nicht zulässig z.B. über eine unverschlüsselte Verbindung Passwörter zu ändern, mehr noch Passwörter bzw. deren Hashes werden überhaupt nicht angezeigt. Man könnte also darüber diskutieren wozu es überhaupt Sinnvoll sein könnte diese Verbindungart zu wählen. Selbst wenn sich Linux-Clients hier Authentifizieren können ist es mit Sicherheit angebracht darüber nach zu denken diese Simple Binds zu verbieten. Und tatsächlich kann man über die Gruppen-Richtlinien auf dem Server eine verschlüsselte Verbindung erzwingen ( Network security: LDAP client signing requirements )&lt;br /&gt;
&lt;br /&gt;
Tatsächlich kann man dort die Verwendung von SSL erzwingen ... Allerdings muss man für diesen Fall den Windows Server für die Verwendung von SSL konfigurieren. Siehe -&amp;gt; [http://www.tools4ever.com/documentation/user-management-resource-administrator/ldap_ad_secure.htm?content=7030 Secure LDAP Active Directory environment]&lt;br /&gt;
&lt;br /&gt;
Wenn dann die Zertifikate erstellt und eingebunden wurden klappt auch der verschlüsselte Zugriff :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ''ldapsearch -x -Hldaps://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Im Prinzip also nur ldaps ( Port 636 ) anstatt ldap (Port 389)&lt;br /&gt;
&lt;br /&gt;
===Kerberos===&lt;br /&gt;
&lt;br /&gt;
Das Thema Kerberos ist etwas umfangreicher.&lt;br /&gt;
&lt;br /&gt;
Auch hier benötigen wir unter Linux ein paar Hilfs-Tools ... die Pakete sind wieder je nach Distribution unterschiedlich benannt (z.B krb5-user oder krb5-client ....) &lt;br /&gt;
Nach der Installation dieser Tools und deren abhängiger Bibliotheken stehen uns ein paar neue Befehle zur Verfügung ( kinit, klist, kdestroy, kpasswd ...)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
... to be continued ...&lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19193</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19193"/>
		<updated>2007-07-05T12:25:29Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Probleme von Linux Clients bei der Anbindung an einem Microsoft Server */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
 ''ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
Nun beherrscht der Windowsserver jedoch einerseits keine TLS Verschlüsselung, anderseits ist es aber auch nicht zulässig z.B. über eine unverschlüsselte Verbindung Passwörter zu ändern, mehr noch Passwörter bzw. deren Hashes werden überhaupt nicht angezeigt. Man könnte also darüber diskutieren wozu es überhaupt Sinnvoll sein könnte diese Verbindungart zu wählen. Selbst wenn sich Linux-Clients hier Authentifizieren können ist es mit Sicherheit angebracht darüber nach zu denken diese Simple Binds zu verbieten. Und tatsächlich kann man über die Gruppen-Richtlinien auf dem Server eine verschlüsselte Verbindung erzwingen ( Network security: LDAP client signing requirements )&lt;br /&gt;
&lt;br /&gt;
Tatsächlich kann man dort die Verwendung von SSL erzwingen ... Allerdings muss man für diesen Fall den Windows Server für die Verwendung von SSL konfigurieren. Siehe -&amp;gt; [http://www.tools4ever.com/documentation/user-management-resource-administrator/ldap_ad_secure.htm?content=7030 Secure LDAP Active Directory environment]&lt;br /&gt;
&lt;br /&gt;
Wenn dann die Zertifikate erstellt und eingebunden wurden klappt auch der verschlüsselte Zugriff :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ''ldapsearch -x -Hldaps://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Im Prinzip also nur ldaps ( Port 636 ) anstatt ldap (Port 389)&lt;br /&gt;
&lt;br /&gt;
===Kerberos===&lt;br /&gt;
&lt;br /&gt;
Das Thema Kerberos ist etwas umfangreicher.&lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19192</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19192"/>
		<updated>2007-07-05T12:24:58Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Kerberos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
 ''ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
Nun beherrscht der Windowsserver jedoch einerseits keine TLS Verschlüsselung, anderseits ist es aber auch nicht zulässig z.B. über eine unverschlüsselte Verbindung Passwörter zu ändern, mehr noch Passwörter bzw. deren Hashes werden überhaupt nicht angezeigt. Man könnte also darüber diskutieren wozu es überhaupt Sinnvoll sein könnte diese Verbindungart zu wählen. Selbst wenn sich Linux-Clients hier Authentifizieren können ist es mit Sicherheit angebracht darüber nach zu denken diese Simple Binds zu verbieten. Und tatsächlich kann man über die Gruppen-Richtlinien auf dem Server eine verschlüsselte Verbindung erzwingen ( Network security: LDAP client signing requirements )&lt;br /&gt;
&lt;br /&gt;
Tatsächlich kann man dort die Verwendung von SSL erzwingen ... Allerdings muss man für diesen Fall den Windows Server für die Verwendung von SSL konfigurieren. Siehe -&amp;gt; [http://www.tools4ever.com/documentation/user-management-resource-administrator/ldap_ad_secure.htm?content=7030 Secure LDAP Active Directory environment]&lt;br /&gt;
&lt;br /&gt;
Wenn dann die Zertifikate erstellt und eingebunden wurden klappt auch der verschlüsselte Zugriff :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ''ldapsearch -x -Hldaps://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Im Prinzip also nur ldaps ( Port 636 ) anstatt ldap (Port 389)&lt;br /&gt;
&lt;br /&gt;
===Kerberos===&lt;br /&gt;
&lt;br /&gt;
Das Thema Kerberos ist etwas umfangreicher.&lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19191</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19191"/>
		<updated>2007-07-05T12:07:14Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
 ''ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
Nun beherrscht der Windowsserver jedoch einerseits keine TLS Verschlüsselung, anderseits ist es aber auch nicht zulässig z.B. über eine unverschlüsselte Verbindung Passwörter zu ändern, mehr noch Passwörter bzw. deren Hashes werden überhaupt nicht angezeigt. Man könnte also darüber diskutieren wozu es überhaupt Sinnvoll sein könnte diese Verbindungart zu wählen. Selbst wenn sich Linux-Clients hier Authentifizieren können ist es mit Sicherheit angebracht darüber nach zu denken diese Simple Binds zu verbieten. Und tatsächlich kann man über die Gruppen-Richtlinien auf dem Server eine verschlüsselte Verbindung erzwingen ( Network security: LDAP client signing requirements )&lt;br /&gt;
&lt;br /&gt;
Tatsächlich kann man dort die Verwendung von SSL erzwingen ... Allerdings muss man für diesen Fall den Windows Server für die Verwendung von SSL konfigurieren. Siehe -&amp;gt; [http://www.tools4ever.com/documentation/user-management-resource-administrator/ldap_ad_secure.htm?content=7030 Secure LDAP Active Directory environment]&lt;br /&gt;
&lt;br /&gt;
Wenn dann die Zertifikate erstellt und eingebunden wurden klappt auch der verschlüsselte Zugriff :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ''ldapsearch -x -Hldaps://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Im Prinzip also nur ldaps ( Port 636 ) anstatt ldap (Port 389)&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19189</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19189"/>
		<updated>2007-07-05T11:40:18Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
''ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
Nun beherrscht der Windowsserver jedoch einerseits keine TLS Verschlüsselung, anderseits ist es aber auch nicht zulässig z.B. über eine unverschlüsselte Verbindung Passwörter zu ändern, mehr noch Passwörter bzw. deren Hashes werden überhaupt nicht angezeigt. Man könnte also darüber diskutieren wozu es überhaupt Sinnvoll sein könnte diese Verbindungart zu wählen. Selbst wenn sich Linux-Clients hier Authentifizieren können ist es mit Sicherheit angebracht darüber nach zu denken diese Simple Binds zu verbieten. Und tatsächlich kann man über die Gruppen-Richtlinien auf dem Server eine verschlüsselte Verbindung erzwingen ( Network security: LDAP client signing requirements )&lt;br /&gt;
&lt;br /&gt;
Tatsächlich kann man dort die Verwendung von SSL erzwingen ... Allerdings muss man für diesen Fall den Windows Server für die Verwendung von SSL konfigurieren. Siehe -&amp;gt; [http://www.tools4ever.com/documentation/user-management-resource-administrator/ldap_ad_secure.htm?content=7030 Secure LDAP Active Directory environment]&lt;br /&gt;
&lt;br /&gt;
Wenn dann die Zertifikate erstellt und eingebunden wurden klappt auch der verschlüsselte Zugriff :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''ldapsearch -x -Hldaps://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Im Prinzip also nur ldaps ( Port 636 ) anstatt ldap (Port 389)&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19188</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19188"/>
		<updated>2007-07-05T11:40:01Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
''ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
Nun beherrscht der Windowsserver jedoch einerseits keine TLS Verschlüsselung, anderseits ist es aber auch nicht zulässig z.B. über eine unverschlüsselte Verbindung Passwörter zu ändern, mehr noch Passwörter bzw. deren Hashes werden überhaupt nicht angezeigt. Man könnte also darüber diskutieren wozu es überhaupt Sinnvoll sein könnte diese Verbindungart zu wählen. Selbst wenn sich Linux-Clients hier Authentifizieren können ist es mit Sicherheit angebracht darüber nach zu denken diese Simple Binds zu verbieten. Und tatsächlich kann man über die Gruppen-Richtlinien auf dem Server eine verschlüsselte Verbindung erzwingen ( Network security: LDAP client signing requirements )&lt;br /&gt;
&lt;br /&gt;
Tatsächlich kann man dort die Verwendung von SSL erzwingen ... Allerdings muss man für diesen Fall den Windows Server für die Verwendung von SSL konfigurieren. Siehe -&amp;gt; [http://www.tools4ever.com/documentation/user-management-resource-administrator/ldap_ad_secure.htm?content=7030 Secure LDAP Active Directory environment]&lt;br /&gt;
&lt;br /&gt;
Wenn dann die Zertifikate erstellt und eingebunden wurden klappt auch der verschlüsselte Zugriff :&lt;br /&gt;
&lt;br /&gt;
''ldapsearch -x -Hldaps://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Im Prinzip also nur ldaps ( Port 636 ) anstatt ldap (Port 389)&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19187</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19187"/>
		<updated>2007-07-05T11:39:05Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
Nun beherrscht der Windowsserver jedoch einerseits keine TLS Verschlüsselung, anderseits ist es aber auch nicht zulässig z.B. über eine unverschlüsselte Verbindung Passwörter zu ändern, mehr noch Passwörter bzw. deren Hashes werden überhaupt nicht angezeigt. Man könnte also darüber diskutieren wozu es überhaupt Sinnvoll sein könnte diese Verbindungart zu wählen. Selbst wenn sich Linux-Clients hier Authentifizieren können ist es mit Sicherheit angebracht darüber nach zu denken diese Simple Binds zu verbieten. Und tatsächlich kann man über die Gruppen-Richtlinien auf dem Server eine verschlüsselte Verbindung erzwingen ( Network security: LDAP client signing requirements )&lt;br /&gt;
&lt;br /&gt;
Tatsächlich kann man dort die Verwendung von SSL erzwingen ... Allerdings muss man für diesen Fall den Windows Server für die Verwendung von SSL konfigurieren. Siehe -&amp;gt; [http://www.tools4ever.com/documentation/user-management-resource-administrator/ldap_ad_secure.htm?content=7030 Secure LDAP Active Directory environment]&lt;br /&gt;
&lt;br /&gt;
Wenn dann die Zertifikate erstellt und eingebunden wurden klappt auch der verschlüsselte Zugriff :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;ldapsearch -x -Hldaps://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Im Prinzip also nur ldaps ( Port 636 ) anstatt ldap (Port 389)&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19183</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19183"/>
		<updated>2007-07-05T11:22:26Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
Nun beherrscht der Windowsserver jedoch einerseits keine TLS Verschlüsselung, anderseits ist es aber auch nicht zulässig z.B. über eine unverschlüsselte Verbindung Passwörter zu ändern, mehr noch Passwörter bzw. deren Hashes werden überhaupt nicht angezeigt. Man könnte also darüber diskutieren wozu es überhaupt Sinnvoll sein könnte diese Verbindungart zu wählen. Selbst wenn sich Linux-Clients hier Authentifizieren können ist es mit Sicherheit angebracht darüber nach zu denken diese Simple Binds zu verbieten. Und tatsächlich kann man über die Gruppen-Richtlinien auf dem Server eine verschlüsselte Verbindung erzwingen ( Network security: LDAP client signing requirements )&lt;br /&gt;
&lt;br /&gt;
Tatsächlich kann man dort die Verwendung von SSL erzwingen ... Allerdings muss man für diesen Fall den Windows Server für die Verwendung von SSL konfigurieren. Siehe -&amp;gt; [http://www.tools4ever.com/documentation/user-management-resource-administrator/ldap_ad_secure.htm?content=7030 Secure LDAP Active Directory environment]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.... to be continued ...&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19182</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19182"/>
		<updated>2007-07-05T11:21:57Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
Nun beherrscht der Windowsserver jedoch einerseits keine TLS Verschlüsselung, anderseits ist es aber auch nicht zulässig z.B. über eine unverschlüsselte Verbindung Passwörter zu ändern, mehr noch Passwörter bzw. deren Hashes werden überhaupt nicht angezeigt. Man könnte also darüber diskutieren wozu es überhaupt Sinnvoll sein könnte diese Verbindungart zu wählen. Selbst wenn sich Linux-Clients hier Authentifizieren können ist es mit Sicherheit angebracht darüber nach zu denken diese Simple Binds zu verbieten. Und tatsächlich kann man über die Gruppen-Richtlinien auf dem Server eine verschlüsselte Verbindung erzwingen ( Network security: LDAP client signing requirements )&lt;br /&gt;
&lt;br /&gt;
Tatsächlich kann man dort die Verwendung von SSL erzwingen ... Allerdings muss man für diesen Fall den Windows Server für die Verwendung von SSL konfigurieren [http://www.tools4ever.com/documentation/user-management-resource-administrator/ldap_ad_secure.htm?content=7030 Secure LDAP Active Directory environment]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.... to be continued ...&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19181</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19181"/>
		<updated>2007-07-05T11:21:34Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
Nun beherrscht der Windowsserver jedoch einerseits keine TLS Verschlüsselung, anderseits ist es aber auch nicht zulässig z.B. über eine unverschlüsselte Verbindung Passwörter zu ändern, mehr noch Passwörter bzw. deren Hashes werden überhaupt nicht angezeigt. Man könnte also darüber diskutieren wozu es überhaupt Sinnvoll sein könnte diese Verbindungart zu wählen. Selbst wenn sich Linux-Clients hier Authentifizieren können ist es mit Sicherheit angebracht darüber nach zu denken diese Simple Binds zu verbieten. Und tatsächlich kann man über die Gruppen-Richtlinien auf dem Server eine verschlüsselte Verbindung erzwingen ( Network security: LDAP client signing requirements )&lt;br /&gt;
&lt;br /&gt;
Tatsächlich kann man dort die Verwendung von SSL erzwingen ... Allerdings muss man für diesen Fall den Windows Server für die Verwendung von SSL konfigurieren &lt;br /&gt;
&lt;br /&gt;
[http://www.tools4ever.com/documentation/user-management-resource-administrator/ldap_ad_secure.htm?content=7030 Secure LDAP Active Directory environment]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.... to be continued ...&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19170</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19170"/>
		<updated>2007-07-05T10:10:52Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
Zweitens &amp;quot;-x&amp;quot; ... prinzipiell nichts außergewöhnliches, denn auch unter Openldap benötigt man -x für Simple Bind Verbindungen. Anderseits bedeutet &amp;quot;Simple Bind&amp;quot; die Übertragung der Passwörter im Klartext, die man überall wo es möglich ist vermeiden sollte. Also mindestens mit einer TLS verschlüsselten Verbindung.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.... to be continued ...&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19169</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19169"/>
		<updated>2007-07-05T10:04:42Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Dabei sollte jedem der sich schon einmal mit LDAP oder speziell Openldap beschäftig hat zweierlei auffallen.&lt;br /&gt;
Erstens der Bind-User &amp;quot;Administrator@meinefirma.de&amp;quot; ... diese Syntax ist eine Eigenart der AD und könnte damit auch dazu  verwendet werden einen weiteren Administrator in einem andernen Zweig zu identifizierten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.... to be continued ...&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19164</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19164"/>
		<updated>2007-07-05T09:05:40Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.... to be continued ...&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19163</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19163"/>
		<updated>2007-07-05T09:05:14Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn alles richtig konfiguriert ist sollte man nach der Eingabe des Administrator-Passwortes nun die Ausgabe des gesammten LDAP Baums bekommen. Unabhängig von den LDAP spezifischen Hintergrund, was zum Beispiel Objektklassen und Attribute betrifft kann man schon am Aufruf des oben gezeigten Aufrufs mehrere Dinge erkennen.&lt;br /&gt;
'''&lt;br /&gt;
-Hldap://pdc.meinefirma.de''' : Der Host auf dem der LDAP Server läuft  &lt;br /&gt;
&lt;br /&gt;
'''-b &amp;quot;dc=meinefirma,dc=de&amp;quot;''' : Die BaseDN des LDAP Baumes &lt;br /&gt;
&lt;br /&gt;
'''-DAdministrator@meinefirma.de''' : Der User mit dem man sich Authentifizieren möchte ( Bind ) &lt;br /&gt;
&lt;br /&gt;
'''-W''' : Steht einfach nur dafür das man die Eingabeaufforderung für das Passwort bekommt.&lt;br /&gt;
&lt;br /&gt;
'''-x''' : Steht für &amp;quot;Simple Bind&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.... to be continued ...&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19158</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19158"/>
		<updated>2007-07-05T07:46:00Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;ldapsearch -x -Hldap://pdc.meinefirma.de -b &amp;quot;dc=meinefirma,dc=de&amp;quot; -DAdministrator@meinefirma.de -W&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.... to be continued ...&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19153</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19153"/>
		<updated>2007-07-05T07:24:49Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Passwortbasierte Methode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode===&lt;br /&gt;
&lt;br /&gt;
Die einfachste Möglichkeit unter Linux mit der AD Kontakt aufzunehmen ist bei der Verbindung mitzuteilen wer, welcher User,  die Verbindung wünscht, natürlich im Zusammenhang mit dem entsprechenden Passwort.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
.... to be continued ...&lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19151</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19151"/>
		<updated>2007-07-05T07:19:31Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* LDAP, der gemeinsame Nenner */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
Dies gilt sowohl für die Benutzer-Authentifizierung als auch für Anwendungen wie zum Beispiel ein Adressbuch usw.&lt;br /&gt;
&lt;br /&gt;
Um unter Linux nun auf diesen Server zugreifen zu können benötigen wir natürlich auch ein paar Tools, die je nach Distribution in Paketen wie ldap-client oder ldap-tools zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Eins dieser Tools das wir uns jetzt einmal anschauen ist ldapsearch.&lt;br /&gt;
&lt;br /&gt;
Um mehr über ldapsearch heraus zu bekommen nutzt man die unter Linux üblichen Quellen ( man ldapsearch oder ldapsearch --help)&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19150</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19150"/>
		<updated>2007-07-05T07:10:15Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* LDAP, der gemeinsame Nenner */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
So, der Windows Domain Controller mit der Active Directory ist Betriebsbereit.&lt;br /&gt;
Nun sitzen wir an einem Linux Client und fragen uns was uns das nun nutzt.&lt;br /&gt;
&lt;br /&gt;
Im Grunde ist die AD ja nichts anderes als ein LDAP Server und damit eine Datenbank die Informationen speichern kann.&lt;br /&gt;
Welche Informationen das sind ist im Grunde gleichgültig. In diesem Fall werden dort Informationen gespeichert die der Domain Controller für seine Aufgabe benötigt. Also zum Beispiel die Benutzerdaten, die notwendig sind um es einem User zu ermöglichen, das er sich auf einem Rechner im Netzwerk anmelden kann und von dort aus auf andere Netzwerkresourcen zugreifen zu können (Daten, Drucker, ... usw).&lt;br /&gt;
&lt;br /&gt;
Dabei stehen natürlich für einen Microsoft Domain Controller die Windows Clients im Vordergrund.&lt;br /&gt;
Da ein LDAP Server, in diesem Falle die AD, wie oben schon erwähnt in der Lage ist beliebige Daten zu speichern und außerdem einen offenen, in der RFC 2251 definierten, Standard darstellt ist es auch problemlos möglich diese Daten einem Linux Client zur Verfügung zu stellen.&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19142</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19142"/>
		<updated>2007-07-05T06:50:16Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==LDAP, der gemeinsame Nenner==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19140</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19140"/>
		<updated>2007-07-05T06:49:19Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Installation eines Active Directory / Aufbau einer Testumgebung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines &amp;quot;Domain Controllers&amp;quot; zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19139</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19139"/>
		<updated>2007-07-05T06:48:53Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Installation eines Active Directory / Aufbau einer Testumgebung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
Nun können wir unserem Server die &amp;quot;Rolle&amp;quot; eines Domain Controllers zuweisen, und bei dieser Aktion wird dann seit dem Windows 2000 Server auch die Active Directory konfiguriert.&lt;br /&gt;
 &lt;br /&gt;
Ist dieser Vorgang abgeschlossen haben wir nun die Grundlage für unsere Testumgebung geschaffen.&lt;br /&gt;
Der Server alleine nutzt uns natürlich relativ wenig, wir benötigen also noch mindestens einen weiteren Rechner den wir als Client benutzen. Die Verwendung eines Windows-Clients sparen wir uns an dieser Stelle auch und konzentrieren uns auf die Linux-Clients und gehen davon aus das wir diesen in einer Grundinstallation vor uns stehen haben die schon in der Lage ist auf das Netzwerk zuzugreifen.&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19138</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19138"/>
		<updated>2007-07-05T06:39:38Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Installation eines Active Directory / Aufbau einer Testumgebung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory ( AD ) legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory ( AD ) hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
Wir halten uns also an die oben definierte Variante und nutzen &amp;quot;meinefirma.de&amp;quot; als Domain, in der AD wird daraus später  dc=meinefirma,dc=de ( DC == Domain Component). Die DNS Zone heißt aber meinefirma.de. Für die AD aktiviert man am besten  die dynamischen Updates des DNS-Servers. Aber auch hier gehen wir nicht näher auf die Installation des DNS Servers ein, derjenige der wirklich die konkrete Absicht hat eine AD zu implementieren wird sich mit diesem Thema zwangsläufig intensiver beschäftigen müssen.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
... to be continued ...&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19137</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19137"/>
		<updated>2007-07-05T06:20:48Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Installation eines Active Directory / Aufbau einer Testumgebung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist nun die Installation und Konfiguration des DNS Servers. An dieser Stelle soll nochmals auf den Zusammenhang zwischen DNS und dem späteren Aufbau der Active Directory hingewiesen werden. Man sollte also keinesfalls leichtfertig oder vorschnell irgendwelche Entscheidungen in Bezug auf die Namensgebung treffen die sich später nicht mehr so einfach ändern lassen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
... to be continued ...&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19136</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19136"/>
		<updated>2007-07-05T06:13:32Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Installation eines Active Directory / Aufbau einer Testumgebung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domain''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Windows 2003 Server wird nun zunächst das Grundsystem installiert wobei jedoch noch keine &amp;quot;Aufgabe&amp;quot; des Server festgelegt werden muss. Es folgt die Installation der Support-Tools, am besten gleich auch die Services für Unix (SFU) und der Updates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
... to be continued ...&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19135</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19135"/>
		<updated>2007-07-05T06:04:05Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Installation eines Active Directory / Aufbau einer Testumgebung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory legen wir nun als erstes die &amp;quot;Domain&amp;quot;, den Servernamen und die IP Adressen unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domainname''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
'''Servername''' : PDC&lt;br /&gt;
&lt;br /&gt;
'''IP Adressbereich''' : 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
... to be continued ...&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19133</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19133"/>
		<updated>2007-07-05T05:48:53Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Installation eines Active Directory / Aufbau Testumgebung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau einer Testumgebung==&lt;br /&gt;
&lt;br /&gt;
Hier an dieser Stelle soll nun keine detaillierte Installationsanleitung entstehen.&lt;br /&gt;
Wer sich mit der Installation und Konfiguration eines Windows Servers beschäftigt wird im Internet eine Reihe guter Anleitungen finden können.&lt;br /&gt;
Vielmehr sollen hier die Rahmenbedingungen für eine Testumgebung definiert werden sodass im weiteren Verlauf darauf Bezug genommen werden kann.&lt;br /&gt;
&lt;br /&gt;
Durch die weitreichende Integration der DNS Auflösung in der Active Directory legen wir nun als erstes die &amp;quot;Domain&amp;quot; unserer Umgebung fest :&lt;br /&gt;
&lt;br /&gt;
'''Domainname''' : meinefirma.de&lt;br /&gt;
&lt;br /&gt;
... to be continued ...&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19132</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=19132"/>
		<updated>2007-07-05T05:32:32Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Vergleich mit Openldap und Einsatzort der ADS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Installation eines Active Directory / Aufbau Testumgebung==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18810</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18810"/>
		<updated>2007-06-29T05:57:30Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}--[[Benutzer:ThomasF|ThomasF]] 07:51, 29. Jun 2007 (CEST)  &lt;br /&gt;
&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|Name= Active Directory&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.png]]Wenn ein Icon vorhanden ist--&amp;gt;&lt;br /&gt;
|Screenshot=&amp;lt;!--&amp;lt;br&amp;gt;[[Bild:Active Directory.jpg]]Wenn ein Screenshot vorhanden ist--&amp;gt;&lt;br /&gt;
|Beschreibung= &lt;br /&gt;
|Hersteller= Microsoft&lt;br /&gt;
|AktuelleVersion= &lt;br /&gt;
|AktuelleVersionFreigabeDatum= &lt;br /&gt;
|Betriebssystem= Windows&lt;br /&gt;
|Kategorie= [[Samba]] [[LDAP]]&lt;br /&gt;
|Lizenz= &lt;br /&gt;
|Deutsch= &lt;br /&gt;
|Website= &lt;br /&gt;
}}&lt;br /&gt;
Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[Samba in Win2000 Domain]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18678</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18678"/>
		<updated>2007-06-27T10:30:29Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Probleme von Linux Clients bei der Anbindung an einem Microsoft Server */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18677</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18677"/>
		<updated>2007-06-27T10:29:42Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Probleme von Linux Clients bei der Anbindung an einem Microsoft Server */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&lt;br /&gt;
&lt;br /&gt;
Dies ist auch der Fall wenn auf dem Windows-Server die Homes per NFS exportiert werden.&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
Dieser Workaround ist jedoch nur Suboptimal. Bei einem Absturz von KDE wird Beispielsweise der Sync nicht durchgeführt und alle in dieser Sitzung durchgeführten Änderungen sind verloren, es sei denn der Sync wird dann per Hand nachgeholt.&lt;br /&gt;
&lt;br /&gt;
Eine andere Lösung wäre in diesem Fall einen eigenen NFS Server unter Linux für die Linux Clients bereit zu stellen, und die reinen Daten der User an anderer Stelle einzubinden.&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18674</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18674"/>
		<updated>2007-06-27T10:09:33Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Probleme von Linux Clients bei der Anbindung an einem Microsoft Server */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch -&amp;gt; [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18673</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18673"/>
		<updated>2007-06-27T10:09:11Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Probleme von Linux Clients bei der Anbindung an einem Microsoft Server */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18672</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18672"/>
		<updated>2007-06-27T10:08:48Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Probleme von Linux Clients bei der Anbindung an einem Microsoft Server */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch * [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18671</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18671"/>
		<updated>2007-06-27T10:07:43Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Quellen und weiterführende Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18670</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18670"/>
		<updated>2007-06-27T10:07:14Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Quellen und weiterführende Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock [1] ]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18668</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18668"/>
		<updated>2007-06-27T10:06:00Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Quellen und weiterführende Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* [http://www.uni-rostock.de/Rechenzentrum/sware/WindowsNT/SUSE102ADAM.shtml HowTo der Uni Rostock]&lt;br /&gt;
&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18664</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18664"/>
		<updated>2007-06-27T10:01:14Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Probleme von Linux Clients bei der Anbindung an einem Microsoft Server */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
Eines der bekanntesten Probleme ist das Mounten der Homeverzeichnisse eines Linux Clients von einem Windows Servers oder auch eines Samba-Shares.&lt;br /&gt;
&lt;br /&gt;
Zwar ist das Mounten an sich kein Problem mehr, da es mit pam_mount einen Mechanismus gibt der gleich bei der Authentifizierung das Verzeichnis einbindet, ohne darauf angewiesen zu sein das Passwort im Klartext aus einer Datei lesen zu müssen, dennoch unterstützt dieses Filesystem nicht alle Features die ein Linux Client benötigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür stellen die Sockets dar. Im Homeverzeichnis eines Linux Users trifft man diese zwar selten an, aber zum Beispiel KDE und Gnome nutzen sie.&lt;br /&gt;
&lt;br /&gt;
/home/user/.kde/socket-rechnername -&amp;gt; /tmp/ksocket-user&lt;br /&gt;
&lt;br /&gt;
Ein Workaround für dieses Problem besteht darin KDE aufzufordern das .kde Verzeichnis nicht im Home des Users zu suchen sondern Beispielsweise direkt in /tmp&lt;br /&gt;
Ein Script muss dann dafür sorgen dieses Verzeichnis mit dem im Home des Users syncron zu halten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
... to be continued&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18657</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18657"/>
		<updated>2007-06-27T09:40:22Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Diverses */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses==&lt;br /&gt;
&lt;br /&gt;
===Probleme von Linux Clients bei der Anbindung an einem Microsoft Server===&lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18656</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=Active_Directory&amp;diff=18656"/>
		<updated>2007-06-27T09:39:09Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Benutzer:ThomasF|ThomasF]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es mag vielleicht merkwürdig erscheinen das ich hier in einem Linux Wiki die Active Directory von Microsoft so direkt thematisiere  &lt;br /&gt;
&lt;br /&gt;
Bei näherer Betrachtung macht es jedoch Sinn sich mit diesem Thema zu beschäftigen. In einem heterogenen Netzwerk ist es z.B. durchaus üblich Linux Clients an einen Microsoft Domain Controller anzubinden. &lt;br /&gt;
&lt;br /&gt;
Anderseits beruht der ADS von Microsoft auf [[LDAP]] das einen offenen Standard darstellt. &lt;br /&gt;
&lt;br /&gt;
Das Thema [[LDAP]] wiederum hat viele Schnittstellen zu anderen Themen und Anwendungen die [[LDAP]] als zentrale Datenbank nutzen können. &lt;br /&gt;
&lt;br /&gt;
Ich möchte nun hier versuchen eine Sammlung von Problemen und deren Lösungen zu sammeln die die Active Directory als LDAP Datenbank direkt oder indirekt betreffen. Dazu gehört auch das Thema [[Kerberos]] das in Bezug auf echtes SSO (Single-Sign-On) gerade in letzter Zeit an verschiedenen Stellen aufgegriffen wird ( siehe z.B. ix Artikel 03/07 - 05/07) &lt;br /&gt;
&lt;br /&gt;
Geplante Themen : &lt;br /&gt;
&lt;br /&gt;
==Vergleich mit Openldap und Einsatzort der ADS==&lt;br /&gt;
&lt;br /&gt;
==Möglichkeiten der Authentifizierung an der ADS== &lt;br /&gt;
&lt;br /&gt;
===Passwortbasierte Methode=== &lt;br /&gt;
&lt;br /&gt;
===Kerberos=== &lt;br /&gt;
&lt;br /&gt;
==Samba und die ADS== &lt;br /&gt;
&lt;br /&gt;
==Diverses== &lt;br /&gt;
&lt;br /&gt;
==siehe auch==&lt;br /&gt;
* [[SUSE in Win2000 Domain und Acitve Directory]]&lt;br /&gt;
* [[Linux und active directory]]&lt;br /&gt;
&lt;br /&gt;
==Quellen und weiterführende Links==&lt;br /&gt;
* [[w:Active Directory|Active Directory in der Wikipedia]]&lt;br /&gt;
* [http://technet2.microsoft.com/windowsserver/en/technologies/featured/ad/default.mspx Microsofts Active Directory Seite]&lt;br /&gt;
* [http://www.microsoft.com Microsoft]&lt;br /&gt;
* [http://www.opentechsupport.net/forums/archive/topic/16708-1.html SRV records]&lt;br /&gt;
* [http://www.windowsitlibrary.com/Content/155/09/1.html WINS (Windows Internet Naming Service)]&lt;br /&gt;
* [http://www.dmtf.org Distributed Management Task Force]&lt;br /&gt;
* [http://www.samba-ldap.de Deutsches Debian-Samba-LDAP HowTo (samba-ldap.de)]&lt;br /&gt;
&amp;lt;!--* {{dmoz|cgi-bin/search?search=Active+Directory|Active Directory}}&lt;br /&gt;
Computers: Software: Operating Systems: Microsoft Windows: Windows 2000: Active Directory&lt;br /&gt;
Derzeit sind auf der Website Probleme--&amp;gt;&lt;br /&gt;
* Hier Links zu dem Thema eintragen&lt;br /&gt;
----&lt;br /&gt;
[[Samba|zurück zu Samba]]&amp;lt;br /&amp;gt;&lt;br /&gt;
[[LDAP|zurück zu LDAP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Samba]] [[Category:LDAP]][[Category:Windows]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5533</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5533"/>
		<updated>2006-09-21T08:37:57Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Linux Authentifikation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
Wenn alle benötigten Pakete installiert sind (openldap2 und openldap2-Client und alle abhängigen)&lt;br /&gt;
kann man sich an die Arbeit machen das gelernte in die Tat umzusetzen.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei für den Server ist die /etc/openldap/slapd.conf , die bei der Installation schon einige Einträge und Kommentare enthält.&lt;br /&gt;
&lt;br /&gt;
Alle Möglichkeiten kann man in der Manpage von slapd.conf nachlesen.&lt;br /&gt;
&lt;br /&gt;
Da nur root im Normalfall Schreibrechte auf Konfigurationsdateien hat sollte man zum bearbeiten dann auch root-Rechte besitzen.&lt;br /&gt;
&lt;br /&gt;
Zum bearbeiten der Konfigurationsdateien selber kann man unter Linux jeden beliebigen Editor verwenden, bzw. den der einem persönlich am besten gefällt, auf der Konsole z.B vim, joe ... und unter KDE kate, kwrite usw.&lt;br /&gt;
&lt;br /&gt;
Wir öffnen nun die /etc/openldap/slapd.conf mit einem beliebigen Editor z.B auf einer root-Konsole und schauen uns ein wenig um.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:'''&lt;br /&gt;
&lt;br /&gt;
Um das LDAP Verzeichnis später gegen Missbrauch oder ähnlichem abzusichern gibt es in openldap z.B die Möglichkeit den Zugriff auf das Verzeichnis mit ACL' s einzuschränken (access ...)&lt;br /&gt;
&lt;br /&gt;
Diese Funktionen sind für die grundsätzliche Funktion nicht notwendig !!!&lt;br /&gt;
Dort verstecken sich einfach nur weitere Fehlerquellen die gerade zu Anfang einen Neuling in Sachen LDAP nur verwirren.&lt;br /&gt;
&lt;br /&gt;
Also sollten wir grundsätzlich erstmal nur Optionen aktivieren die für den Betrieb unbedingt notwendig sind, unser Server wird ja noch nicht produktiv eingesetzt.&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir uns nun um die eingebundenen Schemas kümmern. In den Schema Dateien finden wir die Definitionen der Objektklassen und der Attribute die wir brauchen um später überhaupt Daten speichern zu können.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig :'''&lt;br /&gt;
Hier ist darauf zu achten die richtige Reihenfolge für die Schema Dateien einzuhalten, da es vorkommen kann das ein Schema ein Attribut hinzufügen will, das eine bestimme ObjectClass erwartet, die aber nicht im gleichen Schema definiert ist. Dieses Schema muß also vorher schon eingebunden worden sein.&lt;br /&gt;
&lt;br /&gt;
Für unseren Zweck brauchen wir also erstmal die folgenden Schema-Dateien :&lt;br /&gt;
&lt;br /&gt;
 core.schema&lt;br /&gt;
 cosine.schema&lt;br /&gt;
 nis.schema&lt;br /&gt;
 inetorgperson.schema&lt;br /&gt;
 samba.schema (oder samba3.schema)&lt;br /&gt;
 misc.schema&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für die slapd.conf wäre nun:&lt;br /&gt;
&lt;br /&gt;
 include /etc/openldap/schema/core.schema&lt;br /&gt;
 include /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include /etc/openldap/schema/nis.schema&lt;br /&gt;
 include /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include /etc/openldap/schema/samba.schema&lt;br /&gt;
 include /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
Die hier aufgeführten Schema Dateien z.B samba.schema nehmen das Thema Anbindung von Samba an LDAP schon ein wenig vorweg. Wer aber Samba noch nicht installiert haben sollte, kann auch vorerst das samba.schema raus lassen, da sich diese Datei im samba-doc Paket befindet und auch zu einem späteren Zeitpunkt eingebunden werden kann.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlicher Abhandlung über die Schema Dateien können wir uns auch für später aufheben wenn wir uns schon ein wenig mit den Funktionen von Openldap beschäftigt haben.&lt;br /&gt;
&lt;br /&gt;
Die nächste Stelle an der wir eingreifen müssen ist der Eintrag &amp;quot;suffix&amp;quot;&lt;br /&gt;
Suffix stellt das Root-Verzeichnis dar bei dem unser LDAP Sever beginnen soll sein Verzeichnis aufzubauen.&lt;br /&gt;
Nach unserer Vorüberlegung weiter oben soll dies für unseren Fall also :&lt;br /&gt;
&lt;br /&gt;
 suffix &amp;quot;o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sein. Dies wird auch der Punkt sein den wir später unserem LDAP-Client mitteilen müssen damit er das LDAP Verzeichnis finden kann.&lt;br /&gt;
&lt;br /&gt;
Als nächstes müssen wir einen Benutzer anlegen der in jeder Situation alle Rechte auf dieses Verzeichnis besitzt also immer schreibend auf unser Verzeichnis zugreifen kann. Dies passiert bei dem Punkt &amp;quot;rootdn&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Bitte beachten :''' &lt;br /&gt;
Dieser User mit der rootdn hat wirklich &amp;quot;immer&amp;quot; alle Rechte im Verzeichnis, selbst mit ACLs kann man dies nicht beeinflussen. Selbst wenn man später einen gleich lautenden Eintrag im Verzeichnis erstellt und dort ein anderes Passwort setzt bleibt das rootpw immer noch gültig. Das macht auch Sinn da man zu Anfang ja auch erstmal Daten in das Verzeichniss bekommen muß.&lt;br /&gt;
&lt;br /&gt;
Wir wählen also hier eine Kurzform die später nicht so viel Tiparbeit erfordert :&lt;br /&gt;
&lt;br /&gt;
 rootdn &amp;quot;cn=admin, o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Es folgt nun das rootpw, dies ist das Passwort des Users das wir mit dem Eintrag rootdn festgelegt haben.&lt;br /&gt;
&lt;br /&gt;
Rein theoretisch könnten wir hier auch ein Klartextpasswort einsetzten doch so etwas sollte man gar nicht erst anfangen.&lt;br /&gt;
&lt;br /&gt;
Um nun ein verschlüsseltes Passwort zu erstellen, bedienen wir uns am einfachsten slappasswd&lt;br /&gt;
&lt;br /&gt;
Die Syntax ist recht einfach, hier ein Beispiel, das man auf der Konsole eingibt.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 slappasswd &amp;gt;&amp;gt; passwort.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Inhalt dieser Datei, passwort.txt enthält nach der zweimaligen Eingabe des passworters auf der Console nun z.B für das Passwort &amp;quot;test&amp;quot; folgendes :&lt;br /&gt;
&lt;br /&gt;
 {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
Hinweis : Das ... &amp;gt;&amp;gt; ... leitet die Ausgabe des Komandos slappasswd in die Datei passwort.txt um die vorher nicht existieren muß. Dieser doppelte Pfeil hängt die Daten hinten an die Datei an und belässt die Datei ansonsten so wie sie vorher war.&lt;br /&gt;
&lt;br /&gt;
Vergisst man aber einen Pfeil ( ... &amp;gt; ... ) dann wird die Datei, wenn sie vorhanden ist vollständig gelehrt bzw. gelöscht und dann neu angelegt !!!&lt;br /&gt;
Das heißt, es ist auch möglich die Ausgabe von slappasswd direkt in die slapd.conf umzuleiten. Bevor man diesen Befehl jedoch eingibt sollte man erst eine Sicherhietskopie der slapd.conf anlegen und dreimal hinschauen das man auch wirklich ...&amp;gt;&amp;gt; ...dort stehen hat !!!&lt;br /&gt;
&lt;br /&gt;
Und egal ob wir das Passwort auf der Konsole kodiert haben oder die Ausgabe in eine Datei oder direkt in die /etc/openldap/slapd.conf umgeleitet haben ,mit dem Vorsatz rootpw und dem erzeugten Hash dahinter sollte diese Zeile :&lt;br /&gt;
&lt;br /&gt;
 rootpw {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
nun in unserer /etc/openldap/slapd.conf stehen und haben damit nun eine grundsätzlich funktionierende Konfiguration erzeugt und können die Datei nun abspeichern und den LDAP Server starten.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 rcldap start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eventuell muß man nun noch einen Schreibfehler korrigieren aber wenn der Server läuft können wir beginnen das Verzeichnis mit Daten zu füllen.&lt;br /&gt;
&lt;br /&gt;
Die slapd.conf erlaubt es uns allerdings noch eine ganze Reihe von Feintunning vorzunehmen (siehe -&amp;gt; man slapd.conf )&lt;br /&gt;
&lt;br /&gt;
Also finalen Test ob LDAP läuft überprüft man erstens mit rcldap status ... dort sollte ein grünes &amp;quot;running&amp;quot; auftauchen.&lt;br /&gt;
&lt;br /&gt;
Auch kann man mit :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 nmap localhost&lt;br /&gt;
&lt;br /&gt;
testen ob der Port 389 in Benutzung ist.&lt;br /&gt;
&lt;br /&gt;
Wenn man auf dem Rechner auf dem der Server läuft auch schon den Client eingerichtet hat (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
kann man auch mit ldapsearch -x die Verbindung mit dem LDAP Server testen.&lt;br /&gt;
&lt;br /&gt;
Wenn der Server nach den ersten beiden Punkten den Anschein macht zu laufen aber die Verbindung mit ldapsearch nicht klappt, sollte man erstens nachschauen ob die SuSEfirewall2 läuft und diese im Zweifel erst mal abschalten.&lt;br /&gt;
Hilft dies auch nicht sind die Einträge in der ldap.conf wohl falsch gesetzt (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
&lt;br /&gt;
Um diese Einstellungen erst einmal zu übergehen kann man ldapsearch ertsmal alle notwendigen Parameter mit auf den Weg geben:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 ldapsearch -x -h localhost -b o=meineFirma,c=de&lt;br /&gt;
 ... bzw.&lt;br /&gt;
 ldapsearch -x -h localhost -D cn=admin,o=meineFirma,c=de -W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bevor man weitergeht sollten zumindest die beiden ersten Test positiv laufen.&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
Um den LDAP-Tree nun mit Daten zu füttern können wir entweder ein Grafisches Frontend benutzen (z.B GQ ) oder wir erstellen eine Datei im ldif Format ( man ldif ) um die Daten z.B. mit dem Befehl ldapadd auf der Konsole in das Verzeichnis zu laden.&lt;br /&gt;
&lt;br /&gt;
Die beliebteste Variante ist es zurzeit, LDAP dazu zu benutzen, User sich&lt;br /&gt;
an der LDAP Datenbank anmelden zu lassen, und dies sowohl für die Linux User als auch Windows User über Samba.&lt;br /&gt;
&lt;br /&gt;
Wir beginnen mit der Anmeldung an einem Linux System.&lt;br /&gt;
Hierzu schauen wir uns als erstes an welche Informationen Linux braucht um einen User zu authentifizieren.&lt;br /&gt;
&lt;br /&gt;
Auf einem System ohne LDAP werden diese Informationen in normalen Dateien gespeichert und zwar in der /etc/passwd und der /etc/shadow sowie die Gruppeninformationen aus der /etc/group.&lt;br /&gt;
&lt;br /&gt;
Schauen wir uns so einen Eintrag in der passwd am Beispiel von root einmal an:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 root:x:0:0:root:/root:/bin/bash&lt;br /&gt;
&lt;br /&gt;
Wir haben hier den Usernamen(root), uid(0), gid(0), Homedirectory(/root) und die LoginShell (/bin/bash). Das x hinter dem Usernamen bedeutet das das Passwort in der /etc/shadow zu finden ist.&lt;br /&gt;
Aus der shadow brauchen wir dann auch nur das Passwort.&lt;br /&gt;
&lt;br /&gt;
Um nun alle diese Informationen in der LDAP Datenbank speichern zu können müssen bestimmte Attribute dort vorhanden sein.&lt;br /&gt;
Hierfür benötigen wir die Objektklasse &amp;quot;posixaccount&amp;quot; welche im nis.schema definiert ist.&lt;br /&gt;
&lt;br /&gt;
Bevor wir also weiter machen kontrollieren wir in der /etc/openldap/slapd.conf die eingetragenen Schemas, dies sollte dann so aussehen :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 include         /etc/openldap/schema/core.schema&lt;br /&gt;
 include         /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include         /etc/openldap/schema/nis.schema&lt;br /&gt;
 include         /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include         /etc/openldap/schema/samba.schema&lt;br /&gt;
 include         /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hinweis Das samba.schema sollte auch wirklich von der aktuell verwendeten Samba Version stammen, sonst kann es zu merkwürdigen Problemen kommen. Die findet man auf SuSE Systemen unter :&lt;br /&gt;
&lt;br /&gt;
 /usr/share/doc/packages/samba/examples/LDAP/samba.schema&lt;br /&gt;
&lt;br /&gt;
Und sollte dann nach /etc/openldap/schema kopiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Damit wären erst einmal die Grundvoraussetzung erfüllt ...&lt;br /&gt;
&lt;br /&gt;
'''HINWEIS :'''&lt;br /&gt;
Da es jede Menge Anleitungen gibt wie man mittels der LDIF Dateien sein Verzeichnis befüllen kann, spare ich mir dies hier und zeige das man auch ohne diese Dateien auskommt. Dennoch sollte sich jeder der sich mit diesem Thema beschäftigt auch die Variante mittels LDIF beherrschen da nicht immer eine grafische Oberfläche zur Verfügung steht.&lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns z.B. des Programms GQ ( http://gq-project.org/ ) welches geraume Zeit SuSE als RPM beiliegt, mitlerweile aber aus anderen Quellem siehe -&amp;gt; [http://www.linux-club.de/faq/Grafische_LDAP_Tools Grafische_LDAP_Tools]&lt;br /&gt;
&lt;br /&gt;
Im &amp;quot;Browse&amp;quot; Reiter sollte man seinen Server sehen, und darunter wenn man diesen anklickt auch die dazu gehörende basedn (also den Eintrag der als suffix in der slapd.conf steht) sehen können.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist das Anlegen von Templates, dies geschieht wieder unter Einstellungen, diesmal unter dem Reiter &amp;quot;Muster&amp;quot;&lt;br /&gt;
Dort suchen wir für den Fall das man mehrere Server angegeben hat den Server aus für den wir die Templates erstellen möchten und klicken dann auf &amp;quot;Neu&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
In dem Fenster das sich nun öffnet können wir auf der linken Seite die benötigten Objektklassen auswählen und mit dem kleinen schwarzen Pfeil nach rechts, in den Bereich der aktuellen Vorlage bringen.&lt;br /&gt;
Unten links müssen wir dann noch einen aussagekräftigen Namen für das Template erstellen und fertig.&lt;br /&gt;
&lt;br /&gt;
Um nun alle erforderlichen Einträge in unserem Verzeichnis erstellen zu können brauchen wir mehrere Templates:&lt;br /&gt;
&lt;br /&gt;
 o (Organization)&lt;br /&gt;
 ou (Organizational Unit)&lt;br /&gt;
 posixAccount (Userdaten für Linux User)&lt;br /&gt;
 posixGroup (Gruppeninformationen für Linux)&lt;br /&gt;
&lt;br /&gt;
Bei jedem Template muß als erstes immer die ObjectClass top vorhanden sein.&lt;br /&gt;
Für o oder ou brauchen wir ansonsten nur die Objektklassen organization bzw. organizational Unit.&lt;br /&gt;
Für den User Account benötigen wir neben dem posixAccount noch die ObjectClass shadowAccount und inetOrgPerson.&lt;br /&gt;
Das Template posixGroup benötigt wiederum nur die ObjectClass posixGroup.&lt;br /&gt;
&lt;br /&gt;
Mit diesen vier Templates können wir nun beginnen unserem LDAP-Baum eine Struktur zu geben.&lt;br /&gt;
&lt;br /&gt;
Hierzu begeben wir uns wieder in die Browse Ansicht und markieren den dort sichtbaren Eintrag der basedn und wählen mit dem Menü das durch klicken der rechten Maustaste auftaucht den Punkt &amp;quot;New&amp;quot; aus.&lt;br /&gt;
Dort sieht man dann die Templates die schon erstellt wurden.&lt;br /&gt;
Für diesen ersten Eintrag wählen wir nun die Organization aus die ja in unserem Fall mit der rootdn übereinstimmt.&lt;br /&gt;
&lt;br /&gt;
In dem folgenden Fenster das sich für den neuen Eintrag öffnet sieht man nun eine Liste mit allen möglichen Attributen die in der im Template festgelegten Objektklassen.&lt;br /&gt;
In neueren Versionen von GQ , wie die die SuSE mitliefert, werden die Attribute die zwingend notwendig sind blau angezeigt.&lt;br /&gt;
&lt;br /&gt;
In diesem Fall ist das außer dem Eintrag dn noch das Attribut o.&lt;br /&gt;
Da wir uns im ersten Teil des Quick Start mit o=meineFirma,c=de umschrieben haben nehmen wir hier das gleiche Beispiel.&lt;br /&gt;
&lt;br /&gt;
Da wir hier die basedn als Ziel beim einfügen ausgewählt haben stimmt die dn schon fast, das Komma das GQ vor der basedn erzeugt müssen wir in diesem Fall entfernen.&lt;br /&gt;
In der Zeile von o können wir nun nochmals meineFirma einfügen, fertig.&lt;br /&gt;
&lt;br /&gt;
Weitere Attribute die nicht blau markiert sind können optional ausgefüllt werden, dienen aber keinem Zweck bei der Authentifizierung.&lt;br /&gt;
&lt;br /&gt;
Als nächstes erstellen wir mindestens zwei &amp;quot;Ordner&amp;quot; (organizationalUnits) auf die gleiche Weise, nur diesmal jeweils mit dem Template für ou und nennen diese dann einmal &amp;quot;users&amp;quot; und einmal &amp;quot;groups&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Nach diesem Prinzip können später dann auch andere &amp;quot;Ordner&amp;quot; z.B für Samba MaschinenAccounts erstellt werden.&lt;br /&gt;
&lt;br /&gt;
Bevor wir nun anfangen User oder Gruppen anzulegen sollten wir einen kurzen Moment überlegen in welchem Bereich die UserIDs und GruppenIDs liegen sollen ....&lt;br /&gt;
&lt;br /&gt;
Für dieses Beispiel nehme ich für die userIDs den Bereich zwischen 1000 - 1499 und für die groupIDs den Bereich zwischen 1500 - 1999.&lt;br /&gt;
&lt;br /&gt;
Beginnen wir mit einer Gruppe: Wir markieren den Ordner &amp;quot;groups&amp;quot; und erstellen aus dem Template posixGroup einen neuen Eintrag der dann ungefähr so aussieht:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: cn=user, ou=groups, o=meineFirma, c=de&lt;br /&gt;
 cn: user&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ähnlich sieht es bei dem Anlegen eines Users aus:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: uid=test, ou=users, o=meineFirma, c=de&lt;br /&gt;
 sn: test&lt;br /&gt;
 cn: test&lt;br /&gt;
 uidNumber: 1000&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
 loginShell: /bin/bash&lt;br /&gt;
 homeDirectory: /home/test&lt;br /&gt;
 userPassword: {SSHA}xyz1234567abc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das Passwort kann GQ erzeugen, jedoch mit dem Nachteil das es erst einmal im Klartext zu lesen ist (der algorytmus kann im Pulldown Menü eingestellt werden)&lt;br /&gt;
Beim Speichern wird das Passwort dann gecrypted.&lt;br /&gt;
Um dies im Zweifel nicht zu einem Risiko zu machen könnte man hier erst einmal ein Dummy-Passwort eintragen (z.B test) und dieses dann später auf der Konsole mit &amp;quot;passwd test&amp;quot; zu ändern.&lt;br /&gt;
&lt;br /&gt;
Da nun sowohl der User als auch seine primäre Gruppe in LDAP existiert kann sich dieser nun über LDAP authentifizieren ...&lt;br /&gt;
&lt;br /&gt;
Will man einen bestehenden Userstamm aus NIS oder der /etc/passwd einfach nur in LDAP übernehmen gibt es die Möglichkeit diese Arbeit von Migrations-Tools ausführen zu lassen.&lt;br /&gt;
Siehe z.B : http://www.padl.com/OSS/MigrationTools.html&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5532</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5532"/>
		<updated>2006-09-21T08:37:01Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Linux Authentifikation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
Wenn alle benötigten Pakete installiert sind (openldap2 und openldap2-Client und alle abhängigen)&lt;br /&gt;
kann man sich an die Arbeit machen das gelernte in die Tat umzusetzen.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei für den Server ist die /etc/openldap/slapd.conf , die bei der Installation schon einige Einträge und Kommentare enthält.&lt;br /&gt;
&lt;br /&gt;
Alle Möglichkeiten kann man in der Manpage von slapd.conf nachlesen.&lt;br /&gt;
&lt;br /&gt;
Da nur root im Normalfall Schreibrechte auf Konfigurationsdateien hat sollte man zum bearbeiten dann auch root-Rechte besitzen.&lt;br /&gt;
&lt;br /&gt;
Zum bearbeiten der Konfigurationsdateien selber kann man unter Linux jeden beliebigen Editor verwenden, bzw. den der einem persönlich am besten gefällt, auf der Konsole z.B vim, joe ... und unter KDE kate, kwrite usw.&lt;br /&gt;
&lt;br /&gt;
Wir öffnen nun die /etc/openldap/slapd.conf mit einem beliebigen Editor z.B auf einer root-Konsole und schauen uns ein wenig um.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:'''&lt;br /&gt;
&lt;br /&gt;
Um das LDAP Verzeichnis später gegen Missbrauch oder ähnlichem abzusichern gibt es in openldap z.B die Möglichkeit den Zugriff auf das Verzeichnis mit ACL' s einzuschränken (access ...)&lt;br /&gt;
&lt;br /&gt;
Diese Funktionen sind für die grundsätzliche Funktion nicht notwendig !!!&lt;br /&gt;
Dort verstecken sich einfach nur weitere Fehlerquellen die gerade zu Anfang einen Neuling in Sachen LDAP nur verwirren.&lt;br /&gt;
&lt;br /&gt;
Also sollten wir grundsätzlich erstmal nur Optionen aktivieren die für den Betrieb unbedingt notwendig sind, unser Server wird ja noch nicht produktiv eingesetzt.&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir uns nun um die eingebundenen Schemas kümmern. In den Schema Dateien finden wir die Definitionen der Objektklassen und der Attribute die wir brauchen um später überhaupt Daten speichern zu können.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig :'''&lt;br /&gt;
Hier ist darauf zu achten die richtige Reihenfolge für die Schema Dateien einzuhalten, da es vorkommen kann das ein Schema ein Attribut hinzufügen will, das eine bestimme ObjectClass erwartet, die aber nicht im gleichen Schema definiert ist. Dieses Schema muß also vorher schon eingebunden worden sein.&lt;br /&gt;
&lt;br /&gt;
Für unseren Zweck brauchen wir also erstmal die folgenden Schema-Dateien :&lt;br /&gt;
&lt;br /&gt;
 core.schema&lt;br /&gt;
 cosine.schema&lt;br /&gt;
 nis.schema&lt;br /&gt;
 inetorgperson.schema&lt;br /&gt;
 samba.schema (oder samba3.schema)&lt;br /&gt;
 misc.schema&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für die slapd.conf wäre nun:&lt;br /&gt;
&lt;br /&gt;
 include /etc/openldap/schema/core.schema&lt;br /&gt;
 include /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include /etc/openldap/schema/nis.schema&lt;br /&gt;
 include /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include /etc/openldap/schema/samba.schema&lt;br /&gt;
 include /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
Die hier aufgeführten Schema Dateien z.B samba.schema nehmen das Thema Anbindung von Samba an LDAP schon ein wenig vorweg. Wer aber Samba noch nicht installiert haben sollte, kann auch vorerst das samba.schema raus lassen, da sich diese Datei im samba-doc Paket befindet und auch zu einem späteren Zeitpunkt eingebunden werden kann.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlicher Abhandlung über die Schema Dateien können wir uns auch für später aufheben wenn wir uns schon ein wenig mit den Funktionen von Openldap beschäftigt haben.&lt;br /&gt;
&lt;br /&gt;
Die nächste Stelle an der wir eingreifen müssen ist der Eintrag &amp;quot;suffix&amp;quot;&lt;br /&gt;
Suffix stellt das Root-Verzeichnis dar bei dem unser LDAP Sever beginnen soll sein Verzeichnis aufzubauen.&lt;br /&gt;
Nach unserer Vorüberlegung weiter oben soll dies für unseren Fall also :&lt;br /&gt;
&lt;br /&gt;
 suffix &amp;quot;o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sein. Dies wird auch der Punkt sein den wir später unserem LDAP-Client mitteilen müssen damit er das LDAP Verzeichnis finden kann.&lt;br /&gt;
&lt;br /&gt;
Als nächstes müssen wir einen Benutzer anlegen der in jeder Situation alle Rechte auf dieses Verzeichnis besitzt also immer schreibend auf unser Verzeichnis zugreifen kann. Dies passiert bei dem Punkt &amp;quot;rootdn&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Bitte beachten :''' &lt;br /&gt;
Dieser User mit der rootdn hat wirklich &amp;quot;immer&amp;quot; alle Rechte im Verzeichnis, selbst mit ACLs kann man dies nicht beeinflussen. Selbst wenn man später einen gleich lautenden Eintrag im Verzeichnis erstellt und dort ein anderes Passwort setzt bleibt das rootpw immer noch gültig. Das macht auch Sinn da man zu Anfang ja auch erstmal Daten in das Verzeichniss bekommen muß.&lt;br /&gt;
&lt;br /&gt;
Wir wählen also hier eine Kurzform die später nicht so viel Tiparbeit erfordert :&lt;br /&gt;
&lt;br /&gt;
 rootdn &amp;quot;cn=admin, o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Es folgt nun das rootpw, dies ist das Passwort des Users das wir mit dem Eintrag rootdn festgelegt haben.&lt;br /&gt;
&lt;br /&gt;
Rein theoretisch könnten wir hier auch ein Klartextpasswort einsetzten doch so etwas sollte man gar nicht erst anfangen.&lt;br /&gt;
&lt;br /&gt;
Um nun ein verschlüsseltes Passwort zu erstellen, bedienen wir uns am einfachsten slappasswd&lt;br /&gt;
&lt;br /&gt;
Die Syntax ist recht einfach, hier ein Beispiel, das man auf der Konsole eingibt.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 slappasswd &amp;gt;&amp;gt; passwort.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Inhalt dieser Datei, passwort.txt enthält nach der zweimaligen Eingabe des passworters auf der Console nun z.B für das Passwort &amp;quot;test&amp;quot; folgendes :&lt;br /&gt;
&lt;br /&gt;
 {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
Hinweis : Das ... &amp;gt;&amp;gt; ... leitet die Ausgabe des Komandos slappasswd in die Datei passwort.txt um die vorher nicht existieren muß. Dieser doppelte Pfeil hängt die Daten hinten an die Datei an und belässt die Datei ansonsten so wie sie vorher war.&lt;br /&gt;
&lt;br /&gt;
Vergisst man aber einen Pfeil ( ... &amp;gt; ... ) dann wird die Datei, wenn sie vorhanden ist vollständig gelehrt bzw. gelöscht und dann neu angelegt !!!&lt;br /&gt;
Das heißt, es ist auch möglich die Ausgabe von slappasswd direkt in die slapd.conf umzuleiten. Bevor man diesen Befehl jedoch eingibt sollte man erst eine Sicherhietskopie der slapd.conf anlegen und dreimal hinschauen das man auch wirklich ...&amp;gt;&amp;gt; ...dort stehen hat !!!&lt;br /&gt;
&lt;br /&gt;
Und egal ob wir das Passwort auf der Konsole kodiert haben oder die Ausgabe in eine Datei oder direkt in die /etc/openldap/slapd.conf umgeleitet haben ,mit dem Vorsatz rootpw und dem erzeugten Hash dahinter sollte diese Zeile :&lt;br /&gt;
&lt;br /&gt;
 rootpw {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
nun in unserer /etc/openldap/slapd.conf stehen und haben damit nun eine grundsätzlich funktionierende Konfiguration erzeugt und können die Datei nun abspeichern und den LDAP Server starten.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 rcldap start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eventuell muß man nun noch einen Schreibfehler korrigieren aber wenn der Server läuft können wir beginnen das Verzeichnis mit Daten zu füllen.&lt;br /&gt;
&lt;br /&gt;
Die slapd.conf erlaubt es uns allerdings noch eine ganze Reihe von Feintunning vorzunehmen (siehe -&amp;gt; man slapd.conf )&lt;br /&gt;
&lt;br /&gt;
Also finalen Test ob LDAP läuft überprüft man erstens mit rcldap status ... dort sollte ein grünes &amp;quot;running&amp;quot; auftauchen.&lt;br /&gt;
&lt;br /&gt;
Auch kann man mit :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 nmap localhost&lt;br /&gt;
&lt;br /&gt;
testen ob der Port 389 in Benutzung ist.&lt;br /&gt;
&lt;br /&gt;
Wenn man auf dem Rechner auf dem der Server läuft auch schon den Client eingerichtet hat (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
kann man auch mit ldapsearch -x die Verbindung mit dem LDAP Server testen.&lt;br /&gt;
&lt;br /&gt;
Wenn der Server nach den ersten beiden Punkten den Anschein macht zu laufen aber die Verbindung mit ldapsearch nicht klappt, sollte man erstens nachschauen ob die SuSEfirewall2 läuft und diese im Zweifel erst mal abschalten.&lt;br /&gt;
Hilft dies auch nicht sind die Einträge in der ldap.conf wohl falsch gesetzt (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
&lt;br /&gt;
Um diese Einstellungen erst einmal zu übergehen kann man ldapsearch ertsmal alle notwendigen Parameter mit auf den Weg geben:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 ldapsearch -x -h localhost -b o=meineFirma,c=de&lt;br /&gt;
 ... bzw.&lt;br /&gt;
 ldapsearch -x -h localhost -D cn=admin,o=meineFirma,c=de -W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bevor man weitergeht sollten zumindest die beiden ersten Test positiv laufen.&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
Um den LDAP-Tree nun mit Daten zu füttern können wir entweder ein Grafisches Frontend benutzen (z.B GQ ) oder wir erstellen eine Datei im ldif Format ( man ldif ) um die Daten z.B. mit dem Befehl ldapadd auf der Konsole in das Verzeichnis zu laden.&lt;br /&gt;
&lt;br /&gt;
Die beliebteste Variante ist es zurzeit, LDAP dazu zu benutzen, User sich&lt;br /&gt;
an der LDAP Datenbank anmelden zu lassen, und dies sowohl für die Linux User als auch Windows User über Samba.&lt;br /&gt;
&lt;br /&gt;
Wir beginnen mit der Anmeldung an einem Linux System.&lt;br /&gt;
Hierzu schauen wir uns als erstes an welche Informationen Linux braucht um einen User zu authentifizieren.&lt;br /&gt;
&lt;br /&gt;
Auf einem System ohne LDAP werden diese Informationen in normalen Dateien gespeichert und zwar in der /etc/passwd und der /etc/shadow sowie die Gruppeninformationen aus der /etc/group.&lt;br /&gt;
&lt;br /&gt;
Schauen wir uns so einen Eintrag in der passwd am Beispiel von root einmal an:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 root:x:0:0:root:/root:/bin/bash&lt;br /&gt;
&lt;br /&gt;
Wir haben hier den Usernamen(root), uid(0), gid(0), Homedirectory(/root) und die LoginShell (/bin/bash). Das x hinter dem Usernamen bedeutet das das Passwort in der /etc/shadow zu finden ist.&lt;br /&gt;
Aus der shadow brauchen wir dann auch nur das Passwort.&lt;br /&gt;
&lt;br /&gt;
Um nun alle diese Informationen in der LDAP Datenbank speichern zu können müssen bestimmte Attribute dort vorhanden sein.&lt;br /&gt;
Hierfür benötigen wir die Objektklasse &amp;quot;posixaccount&amp;quot; welche im nis.schema definiert ist.&lt;br /&gt;
&lt;br /&gt;
Bevor wir also weiter machen kontrollieren wir in der /etc/openldap/slapd.conf die eingetragenen Schemas, dies sollte dann so aussehen :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 include         /etc/openldap/schema/core.schema&lt;br /&gt;
 include         /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include         /etc/openldap/schema/nis.schema&lt;br /&gt;
 include         /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include         /etc/openldap/schema/samba.schema&lt;br /&gt;
 include         /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hinweis Das samba.schema sollte auch wirklich von der aktuell verwendeten Samba Version stammen, sonst kann es zu merkwürdigen Problemen kommen. Die findet man auf SuSE Systemen unter :&lt;br /&gt;
&lt;br /&gt;
 /usr/share/doc/packages/samba/examples/LDAP/samba.schema&lt;br /&gt;
&lt;br /&gt;
Und sollte dann nach /etc/openldap/schema kopiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Damit wären erst einmal die Grundvoraussetzung erfüllt ...&lt;br /&gt;
&lt;br /&gt;
'''HINWEIS :'''&lt;br /&gt;
Da es jede Menge Anleitungen gibt wie man mittels der LDIF Dateien sein Verzeichnis befüllen kann, spare ich mir dies hier und zeige das man auch ohne diese Dateien auskommt. Dennoch sollte sich jeder der sich mit diesem Thema beschäftigt auch die Variante mittels LDIF beherrschen da nicht immer eine grafische Oberfläche zur Verfügung steht.&lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns z.B. des Programms GQ ( http://gq-project.org/ ) welches geraume Zeit SuSE als RPM beiliegt, mitlerweile aber aus anderen Quellem siehe -&amp;gt; [http://www.linux-club.de/faq/Grafische_LDAP_Tools] Grafische_LDAP_Tools.&lt;br /&gt;
&lt;br /&gt;
Im &amp;quot;Browse&amp;quot; Reiter sollte man seinen Server sehen, und darunter wenn man diesen anklickt auch die dazu gehörende basedn (also den Eintrag der als suffix in der slapd.conf steht) sehen können.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist das Anlegen von Templates, dies geschieht wieder unter Einstellungen, diesmal unter dem Reiter &amp;quot;Muster&amp;quot;&lt;br /&gt;
Dort suchen wir für den Fall das man mehrere Server angegeben hat den Server aus für den wir die Templates erstellen möchten und klicken dann auf &amp;quot;Neu&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
In dem Fenster das sich nun öffnet können wir auf der linken Seite die benötigten Objektklassen auswählen und mit dem kleinen schwarzen Pfeil nach rechts, in den Bereich der aktuellen Vorlage bringen.&lt;br /&gt;
Unten links müssen wir dann noch einen aussagekräftigen Namen für das Template erstellen und fertig.&lt;br /&gt;
&lt;br /&gt;
Um nun alle erforderlichen Einträge in unserem Verzeichnis erstellen zu können brauchen wir mehrere Templates:&lt;br /&gt;
&lt;br /&gt;
 o (Organization)&lt;br /&gt;
 ou (Organizational Unit)&lt;br /&gt;
 posixAccount (Userdaten für Linux User)&lt;br /&gt;
 posixGroup (Gruppeninformationen für Linux)&lt;br /&gt;
&lt;br /&gt;
Bei jedem Template muß als erstes immer die ObjectClass top vorhanden sein.&lt;br /&gt;
Für o oder ou brauchen wir ansonsten nur die Objektklassen organization bzw. organizational Unit.&lt;br /&gt;
Für den User Account benötigen wir neben dem posixAccount noch die ObjectClass shadowAccount und inetOrgPerson.&lt;br /&gt;
Das Template posixGroup benötigt wiederum nur die ObjectClass posixGroup.&lt;br /&gt;
&lt;br /&gt;
Mit diesen vier Templates können wir nun beginnen unserem LDAP-Baum eine Struktur zu geben.&lt;br /&gt;
&lt;br /&gt;
Hierzu begeben wir uns wieder in die Browse Ansicht und markieren den dort sichtbaren Eintrag der basedn und wählen mit dem Menü das durch klicken der rechten Maustaste auftaucht den Punkt &amp;quot;New&amp;quot; aus.&lt;br /&gt;
Dort sieht man dann die Templates die schon erstellt wurden.&lt;br /&gt;
Für diesen ersten Eintrag wählen wir nun die Organization aus die ja in unserem Fall mit der rootdn übereinstimmt.&lt;br /&gt;
&lt;br /&gt;
In dem folgenden Fenster das sich für den neuen Eintrag öffnet sieht man nun eine Liste mit allen möglichen Attributen die in der im Template festgelegten Objektklassen.&lt;br /&gt;
In neueren Versionen von GQ , wie die die SuSE mitliefert, werden die Attribute die zwingend notwendig sind blau angezeigt.&lt;br /&gt;
&lt;br /&gt;
In diesem Fall ist das außer dem Eintrag dn noch das Attribut o.&lt;br /&gt;
Da wir uns im ersten Teil des Quick Start mit o=meineFirma,c=de umschrieben haben nehmen wir hier das gleiche Beispiel.&lt;br /&gt;
&lt;br /&gt;
Da wir hier die basedn als Ziel beim einfügen ausgewählt haben stimmt die dn schon fast, das Komma das GQ vor der basedn erzeugt müssen wir in diesem Fall entfernen.&lt;br /&gt;
In der Zeile von o können wir nun nochmals meineFirma einfügen, fertig.&lt;br /&gt;
&lt;br /&gt;
Weitere Attribute die nicht blau markiert sind können optional ausgefüllt werden, dienen aber keinem Zweck bei der Authentifizierung.&lt;br /&gt;
&lt;br /&gt;
Als nächstes erstellen wir mindestens zwei &amp;quot;Ordner&amp;quot; (organizationalUnits) auf die gleiche Weise, nur diesmal jeweils mit dem Template für ou und nennen diese dann einmal &amp;quot;users&amp;quot; und einmal &amp;quot;groups&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Nach diesem Prinzip können später dann auch andere &amp;quot;Ordner&amp;quot; z.B für Samba MaschinenAccounts erstellt werden.&lt;br /&gt;
&lt;br /&gt;
Bevor wir nun anfangen User oder Gruppen anzulegen sollten wir einen kurzen Moment überlegen in welchem Bereich die UserIDs und GruppenIDs liegen sollen ....&lt;br /&gt;
&lt;br /&gt;
Für dieses Beispiel nehme ich für die userIDs den Bereich zwischen 1000 - 1499 und für die groupIDs den Bereich zwischen 1500 - 1999.&lt;br /&gt;
&lt;br /&gt;
Beginnen wir mit einer Gruppe: Wir markieren den Ordner &amp;quot;groups&amp;quot; und erstellen aus dem Template posixGroup einen neuen Eintrag der dann ungefähr so aussieht:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: cn=user, ou=groups, o=meineFirma, c=de&lt;br /&gt;
 cn: user&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ähnlich sieht es bei dem Anlegen eines Users aus:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: uid=test, ou=users, o=meineFirma, c=de&lt;br /&gt;
 sn: test&lt;br /&gt;
 cn: test&lt;br /&gt;
 uidNumber: 1000&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
 loginShell: /bin/bash&lt;br /&gt;
 homeDirectory: /home/test&lt;br /&gt;
 userPassword: {SSHA}xyz1234567abc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das Passwort kann GQ erzeugen, jedoch mit dem Nachteil das es erst einmal im Klartext zu lesen ist (der algorytmus kann im Pulldown Menü eingestellt werden)&lt;br /&gt;
Beim Speichern wird das Passwort dann gecrypted.&lt;br /&gt;
Um dies im Zweifel nicht zu einem Risiko zu machen könnte man hier erst einmal ein Dummy-Passwort eintragen (z.B test) und dieses dann später auf der Konsole mit &amp;quot;passwd test&amp;quot; zu ändern.&lt;br /&gt;
&lt;br /&gt;
Da nun sowohl der User als auch seine primäre Gruppe in LDAP existiert kann sich dieser nun über LDAP authentifizieren ...&lt;br /&gt;
&lt;br /&gt;
Will man einen bestehenden Userstamm aus NIS oder der /etc/passwd einfach nur in LDAP übernehmen gibt es die Möglichkeit diese Arbeit von Migrations-Tools ausführen zu lassen.&lt;br /&gt;
Siehe z.B : http://www.padl.com/OSS/MigrationTools.html&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5531</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5531"/>
		<updated>2006-09-21T08:36:39Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Linux Authentifikation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
Wenn alle benötigten Pakete installiert sind (openldap2 und openldap2-Client und alle abhängigen)&lt;br /&gt;
kann man sich an die Arbeit machen das gelernte in die Tat umzusetzen.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei für den Server ist die /etc/openldap/slapd.conf , die bei der Installation schon einige Einträge und Kommentare enthält.&lt;br /&gt;
&lt;br /&gt;
Alle Möglichkeiten kann man in der Manpage von slapd.conf nachlesen.&lt;br /&gt;
&lt;br /&gt;
Da nur root im Normalfall Schreibrechte auf Konfigurationsdateien hat sollte man zum bearbeiten dann auch root-Rechte besitzen.&lt;br /&gt;
&lt;br /&gt;
Zum bearbeiten der Konfigurationsdateien selber kann man unter Linux jeden beliebigen Editor verwenden, bzw. den der einem persönlich am besten gefällt, auf der Konsole z.B vim, joe ... und unter KDE kate, kwrite usw.&lt;br /&gt;
&lt;br /&gt;
Wir öffnen nun die /etc/openldap/slapd.conf mit einem beliebigen Editor z.B auf einer root-Konsole und schauen uns ein wenig um.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:'''&lt;br /&gt;
&lt;br /&gt;
Um das LDAP Verzeichnis später gegen Missbrauch oder ähnlichem abzusichern gibt es in openldap z.B die Möglichkeit den Zugriff auf das Verzeichnis mit ACL' s einzuschränken (access ...)&lt;br /&gt;
&lt;br /&gt;
Diese Funktionen sind für die grundsätzliche Funktion nicht notwendig !!!&lt;br /&gt;
Dort verstecken sich einfach nur weitere Fehlerquellen die gerade zu Anfang einen Neuling in Sachen LDAP nur verwirren.&lt;br /&gt;
&lt;br /&gt;
Also sollten wir grundsätzlich erstmal nur Optionen aktivieren die für den Betrieb unbedingt notwendig sind, unser Server wird ja noch nicht produktiv eingesetzt.&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir uns nun um die eingebundenen Schemas kümmern. In den Schema Dateien finden wir die Definitionen der Objektklassen und der Attribute die wir brauchen um später überhaupt Daten speichern zu können.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig :'''&lt;br /&gt;
Hier ist darauf zu achten die richtige Reihenfolge für die Schema Dateien einzuhalten, da es vorkommen kann das ein Schema ein Attribut hinzufügen will, das eine bestimme ObjectClass erwartet, die aber nicht im gleichen Schema definiert ist. Dieses Schema muß also vorher schon eingebunden worden sein.&lt;br /&gt;
&lt;br /&gt;
Für unseren Zweck brauchen wir also erstmal die folgenden Schema-Dateien :&lt;br /&gt;
&lt;br /&gt;
 core.schema&lt;br /&gt;
 cosine.schema&lt;br /&gt;
 nis.schema&lt;br /&gt;
 inetorgperson.schema&lt;br /&gt;
 samba.schema (oder samba3.schema)&lt;br /&gt;
 misc.schema&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für die slapd.conf wäre nun:&lt;br /&gt;
&lt;br /&gt;
 include /etc/openldap/schema/core.schema&lt;br /&gt;
 include /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include /etc/openldap/schema/nis.schema&lt;br /&gt;
 include /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include /etc/openldap/schema/samba.schema&lt;br /&gt;
 include /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
Die hier aufgeführten Schema Dateien z.B samba.schema nehmen das Thema Anbindung von Samba an LDAP schon ein wenig vorweg. Wer aber Samba noch nicht installiert haben sollte, kann auch vorerst das samba.schema raus lassen, da sich diese Datei im samba-doc Paket befindet und auch zu einem späteren Zeitpunkt eingebunden werden kann.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlicher Abhandlung über die Schema Dateien können wir uns auch für später aufheben wenn wir uns schon ein wenig mit den Funktionen von Openldap beschäftigt haben.&lt;br /&gt;
&lt;br /&gt;
Die nächste Stelle an der wir eingreifen müssen ist der Eintrag &amp;quot;suffix&amp;quot;&lt;br /&gt;
Suffix stellt das Root-Verzeichnis dar bei dem unser LDAP Sever beginnen soll sein Verzeichnis aufzubauen.&lt;br /&gt;
Nach unserer Vorüberlegung weiter oben soll dies für unseren Fall also :&lt;br /&gt;
&lt;br /&gt;
 suffix &amp;quot;o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sein. Dies wird auch der Punkt sein den wir später unserem LDAP-Client mitteilen müssen damit er das LDAP Verzeichnis finden kann.&lt;br /&gt;
&lt;br /&gt;
Als nächstes müssen wir einen Benutzer anlegen der in jeder Situation alle Rechte auf dieses Verzeichnis besitzt also immer schreibend auf unser Verzeichnis zugreifen kann. Dies passiert bei dem Punkt &amp;quot;rootdn&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Bitte beachten :''' &lt;br /&gt;
Dieser User mit der rootdn hat wirklich &amp;quot;immer&amp;quot; alle Rechte im Verzeichnis, selbst mit ACLs kann man dies nicht beeinflussen. Selbst wenn man später einen gleich lautenden Eintrag im Verzeichnis erstellt und dort ein anderes Passwort setzt bleibt das rootpw immer noch gültig. Das macht auch Sinn da man zu Anfang ja auch erstmal Daten in das Verzeichniss bekommen muß.&lt;br /&gt;
&lt;br /&gt;
Wir wählen also hier eine Kurzform die später nicht so viel Tiparbeit erfordert :&lt;br /&gt;
&lt;br /&gt;
 rootdn &amp;quot;cn=admin, o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Es folgt nun das rootpw, dies ist das Passwort des Users das wir mit dem Eintrag rootdn festgelegt haben.&lt;br /&gt;
&lt;br /&gt;
Rein theoretisch könnten wir hier auch ein Klartextpasswort einsetzten doch so etwas sollte man gar nicht erst anfangen.&lt;br /&gt;
&lt;br /&gt;
Um nun ein verschlüsseltes Passwort zu erstellen, bedienen wir uns am einfachsten slappasswd&lt;br /&gt;
&lt;br /&gt;
Die Syntax ist recht einfach, hier ein Beispiel, das man auf der Konsole eingibt.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 slappasswd &amp;gt;&amp;gt; passwort.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Inhalt dieser Datei, passwort.txt enthält nach der zweimaligen Eingabe des passworters auf der Console nun z.B für das Passwort &amp;quot;test&amp;quot; folgendes :&lt;br /&gt;
&lt;br /&gt;
 {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
Hinweis : Das ... &amp;gt;&amp;gt; ... leitet die Ausgabe des Komandos slappasswd in die Datei passwort.txt um die vorher nicht existieren muß. Dieser doppelte Pfeil hängt die Daten hinten an die Datei an und belässt die Datei ansonsten so wie sie vorher war.&lt;br /&gt;
&lt;br /&gt;
Vergisst man aber einen Pfeil ( ... &amp;gt; ... ) dann wird die Datei, wenn sie vorhanden ist vollständig gelehrt bzw. gelöscht und dann neu angelegt !!!&lt;br /&gt;
Das heißt, es ist auch möglich die Ausgabe von slappasswd direkt in die slapd.conf umzuleiten. Bevor man diesen Befehl jedoch eingibt sollte man erst eine Sicherhietskopie der slapd.conf anlegen und dreimal hinschauen das man auch wirklich ...&amp;gt;&amp;gt; ...dort stehen hat !!!&lt;br /&gt;
&lt;br /&gt;
Und egal ob wir das Passwort auf der Konsole kodiert haben oder die Ausgabe in eine Datei oder direkt in die /etc/openldap/slapd.conf umgeleitet haben ,mit dem Vorsatz rootpw und dem erzeugten Hash dahinter sollte diese Zeile :&lt;br /&gt;
&lt;br /&gt;
 rootpw {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
nun in unserer /etc/openldap/slapd.conf stehen und haben damit nun eine grundsätzlich funktionierende Konfiguration erzeugt und können die Datei nun abspeichern und den LDAP Server starten.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 rcldap start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eventuell muß man nun noch einen Schreibfehler korrigieren aber wenn der Server läuft können wir beginnen das Verzeichnis mit Daten zu füllen.&lt;br /&gt;
&lt;br /&gt;
Die slapd.conf erlaubt es uns allerdings noch eine ganze Reihe von Feintunning vorzunehmen (siehe -&amp;gt; man slapd.conf )&lt;br /&gt;
&lt;br /&gt;
Also finalen Test ob LDAP läuft überprüft man erstens mit rcldap status ... dort sollte ein grünes &amp;quot;running&amp;quot; auftauchen.&lt;br /&gt;
&lt;br /&gt;
Auch kann man mit :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 nmap localhost&lt;br /&gt;
&lt;br /&gt;
testen ob der Port 389 in Benutzung ist.&lt;br /&gt;
&lt;br /&gt;
Wenn man auf dem Rechner auf dem der Server läuft auch schon den Client eingerichtet hat (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
kann man auch mit ldapsearch -x die Verbindung mit dem LDAP Server testen.&lt;br /&gt;
&lt;br /&gt;
Wenn der Server nach den ersten beiden Punkten den Anschein macht zu laufen aber die Verbindung mit ldapsearch nicht klappt, sollte man erstens nachschauen ob die SuSEfirewall2 läuft und diese im Zweifel erst mal abschalten.&lt;br /&gt;
Hilft dies auch nicht sind die Einträge in der ldap.conf wohl falsch gesetzt (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
&lt;br /&gt;
Um diese Einstellungen erst einmal zu übergehen kann man ldapsearch ertsmal alle notwendigen Parameter mit auf den Weg geben:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 ldapsearch -x -h localhost -b o=meineFirma,c=de&lt;br /&gt;
 ... bzw.&lt;br /&gt;
 ldapsearch -x -h localhost -D cn=admin,o=meineFirma,c=de -W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bevor man weitergeht sollten zumindest die beiden ersten Test positiv laufen.&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
Um den LDAP-Tree nun mit Daten zu füttern können wir entweder ein Grafisches Frontend benutzen (z.B GQ ) oder wir erstellen eine Datei im ldif Format ( man ldif ) um die Daten z.B. mit dem Befehl ldapadd auf der Konsole in das Verzeichnis zu laden.&lt;br /&gt;
&lt;br /&gt;
Die beliebteste Variante ist es zurzeit, LDAP dazu zu benutzen, User sich&lt;br /&gt;
an der LDAP Datenbank anmelden zu lassen, und dies sowohl für die Linux User als auch Windows User über Samba.&lt;br /&gt;
&lt;br /&gt;
Wir beginnen mit der Anmeldung an einem Linux System.&lt;br /&gt;
Hierzu schauen wir uns als erstes an welche Informationen Linux braucht um einen User zu authentifizieren.&lt;br /&gt;
&lt;br /&gt;
Auf einem System ohne LDAP werden diese Informationen in normalen Dateien gespeichert und zwar in der /etc/passwd und der /etc/shadow sowie die Gruppeninformationen aus der /etc/group.&lt;br /&gt;
&lt;br /&gt;
Schauen wir uns so einen Eintrag in der passwd am Beispiel von root einmal an:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 root:x:0:0:root:/root:/bin/bash&lt;br /&gt;
&lt;br /&gt;
Wir haben hier den Usernamen(root), uid(0), gid(0), Homedirectory(/root) und die LoginShell (/bin/bash). Das x hinter dem Usernamen bedeutet das das Passwort in der /etc/shadow zu finden ist.&lt;br /&gt;
Aus der shadow brauchen wir dann auch nur das Passwort.&lt;br /&gt;
&lt;br /&gt;
Um nun alle diese Informationen in der LDAP Datenbank speichern zu können müssen bestimmte Attribute dort vorhanden sein.&lt;br /&gt;
Hierfür benötigen wir die Objektklasse &amp;quot;posixaccount&amp;quot; welche im nis.schema definiert ist.&lt;br /&gt;
&lt;br /&gt;
Bevor wir also weiter machen kontrollieren wir in der /etc/openldap/slapd.conf die eingetragenen Schemas, dies sollte dann so aussehen :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 include         /etc/openldap/schema/core.schema&lt;br /&gt;
 include         /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include         /etc/openldap/schema/nis.schema&lt;br /&gt;
 include         /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include         /etc/openldap/schema/samba.schema&lt;br /&gt;
 include         /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hinweis Das samba.schema sollte auch wirklich von der aktuell verwendeten Samba Version stammen, sonst kann es zu merkwürdigen Problemen kommen. Die findet man auf SuSE Systemen unter :&lt;br /&gt;
&lt;br /&gt;
 /usr/share/doc/packages/samba/examples/LDAP/samba.schema&lt;br /&gt;
&lt;br /&gt;
Und sollte dann nach /etc/openldap/schema kopiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Damit wären erst einmal die Grundvoraussetzung erfüllt ...&lt;br /&gt;
&lt;br /&gt;
'''HINWEIS :'''&lt;br /&gt;
Da es jede Menge Anleitungen gibt wie man mittels der LDIF Dateien sein Verzeichnis befüllen kann, spare ich mir dies hier und zeige das man auch ohne diese Dateien auskommt. Dennoch sollte sich jeder der sich mit diesem Thema beschäftigt auch die Variante mittels LDIF beherrschen da nicht immer eine grafische Oberfläche zur Verfügung steht.&lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns z.B. des Programms GQ ( http://gq-project.org/ ) welches geraume Zeit SuSE als RPM beiliegt, mitlerweile aber aus anderen Quellem siehe -&amp;gt; [http://www.linux-club.de/faq/Grafische_LDAP_Tools]Grafische_LDAP_Tools.&lt;br /&gt;
&lt;br /&gt;
Im &amp;quot;Browse&amp;quot; Reiter sollte man seinen Server sehen, und darunter wenn man diesen anklickt auch die dazu gehörende basedn (also den Eintrag der als suffix in der slapd.conf steht) sehen können.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist das Anlegen von Templates, dies geschieht wieder unter Einstellungen, diesmal unter dem Reiter &amp;quot;Muster&amp;quot;&lt;br /&gt;
Dort suchen wir für den Fall das man mehrere Server angegeben hat den Server aus für den wir die Templates erstellen möchten und klicken dann auf &amp;quot;Neu&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
In dem Fenster das sich nun öffnet können wir auf der linken Seite die benötigten Objektklassen auswählen und mit dem kleinen schwarzen Pfeil nach rechts, in den Bereich der aktuellen Vorlage bringen.&lt;br /&gt;
Unten links müssen wir dann noch einen aussagekräftigen Namen für das Template erstellen und fertig.&lt;br /&gt;
&lt;br /&gt;
Um nun alle erforderlichen Einträge in unserem Verzeichnis erstellen zu können brauchen wir mehrere Templates:&lt;br /&gt;
&lt;br /&gt;
 o (Organization)&lt;br /&gt;
 ou (Organizational Unit)&lt;br /&gt;
 posixAccount (Userdaten für Linux User)&lt;br /&gt;
 posixGroup (Gruppeninformationen für Linux)&lt;br /&gt;
&lt;br /&gt;
Bei jedem Template muß als erstes immer die ObjectClass top vorhanden sein.&lt;br /&gt;
Für o oder ou brauchen wir ansonsten nur die Objektklassen organization bzw. organizational Unit.&lt;br /&gt;
Für den User Account benötigen wir neben dem posixAccount noch die ObjectClass shadowAccount und inetOrgPerson.&lt;br /&gt;
Das Template posixGroup benötigt wiederum nur die ObjectClass posixGroup.&lt;br /&gt;
&lt;br /&gt;
Mit diesen vier Templates können wir nun beginnen unserem LDAP-Baum eine Struktur zu geben.&lt;br /&gt;
&lt;br /&gt;
Hierzu begeben wir uns wieder in die Browse Ansicht und markieren den dort sichtbaren Eintrag der basedn und wählen mit dem Menü das durch klicken der rechten Maustaste auftaucht den Punkt &amp;quot;New&amp;quot; aus.&lt;br /&gt;
Dort sieht man dann die Templates die schon erstellt wurden.&lt;br /&gt;
Für diesen ersten Eintrag wählen wir nun die Organization aus die ja in unserem Fall mit der rootdn übereinstimmt.&lt;br /&gt;
&lt;br /&gt;
In dem folgenden Fenster das sich für den neuen Eintrag öffnet sieht man nun eine Liste mit allen möglichen Attributen die in der im Template festgelegten Objektklassen.&lt;br /&gt;
In neueren Versionen von GQ , wie die die SuSE mitliefert, werden die Attribute die zwingend notwendig sind blau angezeigt.&lt;br /&gt;
&lt;br /&gt;
In diesem Fall ist das außer dem Eintrag dn noch das Attribut o.&lt;br /&gt;
Da wir uns im ersten Teil des Quick Start mit o=meineFirma,c=de umschrieben haben nehmen wir hier das gleiche Beispiel.&lt;br /&gt;
&lt;br /&gt;
Da wir hier die basedn als Ziel beim einfügen ausgewählt haben stimmt die dn schon fast, das Komma das GQ vor der basedn erzeugt müssen wir in diesem Fall entfernen.&lt;br /&gt;
In der Zeile von o können wir nun nochmals meineFirma einfügen, fertig.&lt;br /&gt;
&lt;br /&gt;
Weitere Attribute die nicht blau markiert sind können optional ausgefüllt werden, dienen aber keinem Zweck bei der Authentifizierung.&lt;br /&gt;
&lt;br /&gt;
Als nächstes erstellen wir mindestens zwei &amp;quot;Ordner&amp;quot; (organizationalUnits) auf die gleiche Weise, nur diesmal jeweils mit dem Template für ou und nennen diese dann einmal &amp;quot;users&amp;quot; und einmal &amp;quot;groups&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Nach diesem Prinzip können später dann auch andere &amp;quot;Ordner&amp;quot; z.B für Samba MaschinenAccounts erstellt werden.&lt;br /&gt;
&lt;br /&gt;
Bevor wir nun anfangen User oder Gruppen anzulegen sollten wir einen kurzen Moment überlegen in welchem Bereich die UserIDs und GruppenIDs liegen sollen ....&lt;br /&gt;
&lt;br /&gt;
Für dieses Beispiel nehme ich für die userIDs den Bereich zwischen 1000 - 1499 und für die groupIDs den Bereich zwischen 1500 - 1999.&lt;br /&gt;
&lt;br /&gt;
Beginnen wir mit einer Gruppe: Wir markieren den Ordner &amp;quot;groups&amp;quot; und erstellen aus dem Template posixGroup einen neuen Eintrag der dann ungefähr so aussieht:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: cn=user, ou=groups, o=meineFirma, c=de&lt;br /&gt;
 cn: user&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ähnlich sieht es bei dem Anlegen eines Users aus:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: uid=test, ou=users, o=meineFirma, c=de&lt;br /&gt;
 sn: test&lt;br /&gt;
 cn: test&lt;br /&gt;
 uidNumber: 1000&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
 loginShell: /bin/bash&lt;br /&gt;
 homeDirectory: /home/test&lt;br /&gt;
 userPassword: {SSHA}xyz1234567abc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das Passwort kann GQ erzeugen, jedoch mit dem Nachteil das es erst einmal im Klartext zu lesen ist (der algorytmus kann im Pulldown Menü eingestellt werden)&lt;br /&gt;
Beim Speichern wird das Passwort dann gecrypted.&lt;br /&gt;
Um dies im Zweifel nicht zu einem Risiko zu machen könnte man hier erst einmal ein Dummy-Passwort eintragen (z.B test) und dieses dann später auf der Konsole mit &amp;quot;passwd test&amp;quot; zu ändern.&lt;br /&gt;
&lt;br /&gt;
Da nun sowohl der User als auch seine primäre Gruppe in LDAP existiert kann sich dieser nun über LDAP authentifizieren ...&lt;br /&gt;
&lt;br /&gt;
Will man einen bestehenden Userstamm aus NIS oder der /etc/passwd einfach nur in LDAP übernehmen gibt es die Möglichkeit diese Arbeit von Migrations-Tools ausführen zu lassen.&lt;br /&gt;
Siehe z.B : http://www.padl.com/OSS/MigrationTools.html&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5530</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5530"/>
		<updated>2006-09-21T08:36:12Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Linux Authentifikation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
Wenn alle benötigten Pakete installiert sind (openldap2 und openldap2-Client und alle abhängigen)&lt;br /&gt;
kann man sich an die Arbeit machen das gelernte in die Tat umzusetzen.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei für den Server ist die /etc/openldap/slapd.conf , die bei der Installation schon einige Einträge und Kommentare enthält.&lt;br /&gt;
&lt;br /&gt;
Alle Möglichkeiten kann man in der Manpage von slapd.conf nachlesen.&lt;br /&gt;
&lt;br /&gt;
Da nur root im Normalfall Schreibrechte auf Konfigurationsdateien hat sollte man zum bearbeiten dann auch root-Rechte besitzen.&lt;br /&gt;
&lt;br /&gt;
Zum bearbeiten der Konfigurationsdateien selber kann man unter Linux jeden beliebigen Editor verwenden, bzw. den der einem persönlich am besten gefällt, auf der Konsole z.B vim, joe ... und unter KDE kate, kwrite usw.&lt;br /&gt;
&lt;br /&gt;
Wir öffnen nun die /etc/openldap/slapd.conf mit einem beliebigen Editor z.B auf einer root-Konsole und schauen uns ein wenig um.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:'''&lt;br /&gt;
&lt;br /&gt;
Um das LDAP Verzeichnis später gegen Missbrauch oder ähnlichem abzusichern gibt es in openldap z.B die Möglichkeit den Zugriff auf das Verzeichnis mit ACL' s einzuschränken (access ...)&lt;br /&gt;
&lt;br /&gt;
Diese Funktionen sind für die grundsätzliche Funktion nicht notwendig !!!&lt;br /&gt;
Dort verstecken sich einfach nur weitere Fehlerquellen die gerade zu Anfang einen Neuling in Sachen LDAP nur verwirren.&lt;br /&gt;
&lt;br /&gt;
Also sollten wir grundsätzlich erstmal nur Optionen aktivieren die für den Betrieb unbedingt notwendig sind, unser Server wird ja noch nicht produktiv eingesetzt.&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir uns nun um die eingebundenen Schemas kümmern. In den Schema Dateien finden wir die Definitionen der Objektklassen und der Attribute die wir brauchen um später überhaupt Daten speichern zu können.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig :'''&lt;br /&gt;
Hier ist darauf zu achten die richtige Reihenfolge für die Schema Dateien einzuhalten, da es vorkommen kann das ein Schema ein Attribut hinzufügen will, das eine bestimme ObjectClass erwartet, die aber nicht im gleichen Schema definiert ist. Dieses Schema muß also vorher schon eingebunden worden sein.&lt;br /&gt;
&lt;br /&gt;
Für unseren Zweck brauchen wir also erstmal die folgenden Schema-Dateien :&lt;br /&gt;
&lt;br /&gt;
 core.schema&lt;br /&gt;
 cosine.schema&lt;br /&gt;
 nis.schema&lt;br /&gt;
 inetorgperson.schema&lt;br /&gt;
 samba.schema (oder samba3.schema)&lt;br /&gt;
 misc.schema&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für die slapd.conf wäre nun:&lt;br /&gt;
&lt;br /&gt;
 include /etc/openldap/schema/core.schema&lt;br /&gt;
 include /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include /etc/openldap/schema/nis.schema&lt;br /&gt;
 include /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include /etc/openldap/schema/samba.schema&lt;br /&gt;
 include /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
Die hier aufgeführten Schema Dateien z.B samba.schema nehmen das Thema Anbindung von Samba an LDAP schon ein wenig vorweg. Wer aber Samba noch nicht installiert haben sollte, kann auch vorerst das samba.schema raus lassen, da sich diese Datei im samba-doc Paket befindet und auch zu einem späteren Zeitpunkt eingebunden werden kann.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlicher Abhandlung über die Schema Dateien können wir uns auch für später aufheben wenn wir uns schon ein wenig mit den Funktionen von Openldap beschäftigt haben.&lt;br /&gt;
&lt;br /&gt;
Die nächste Stelle an der wir eingreifen müssen ist der Eintrag &amp;quot;suffix&amp;quot;&lt;br /&gt;
Suffix stellt das Root-Verzeichnis dar bei dem unser LDAP Sever beginnen soll sein Verzeichnis aufzubauen.&lt;br /&gt;
Nach unserer Vorüberlegung weiter oben soll dies für unseren Fall also :&lt;br /&gt;
&lt;br /&gt;
 suffix &amp;quot;o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sein. Dies wird auch der Punkt sein den wir später unserem LDAP-Client mitteilen müssen damit er das LDAP Verzeichnis finden kann.&lt;br /&gt;
&lt;br /&gt;
Als nächstes müssen wir einen Benutzer anlegen der in jeder Situation alle Rechte auf dieses Verzeichnis besitzt also immer schreibend auf unser Verzeichnis zugreifen kann. Dies passiert bei dem Punkt &amp;quot;rootdn&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Bitte beachten :''' &lt;br /&gt;
Dieser User mit der rootdn hat wirklich &amp;quot;immer&amp;quot; alle Rechte im Verzeichnis, selbst mit ACLs kann man dies nicht beeinflussen. Selbst wenn man später einen gleich lautenden Eintrag im Verzeichnis erstellt und dort ein anderes Passwort setzt bleibt das rootpw immer noch gültig. Das macht auch Sinn da man zu Anfang ja auch erstmal Daten in das Verzeichniss bekommen muß.&lt;br /&gt;
&lt;br /&gt;
Wir wählen also hier eine Kurzform die später nicht so viel Tiparbeit erfordert :&lt;br /&gt;
&lt;br /&gt;
 rootdn &amp;quot;cn=admin, o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Es folgt nun das rootpw, dies ist das Passwort des Users das wir mit dem Eintrag rootdn festgelegt haben.&lt;br /&gt;
&lt;br /&gt;
Rein theoretisch könnten wir hier auch ein Klartextpasswort einsetzten doch so etwas sollte man gar nicht erst anfangen.&lt;br /&gt;
&lt;br /&gt;
Um nun ein verschlüsseltes Passwort zu erstellen, bedienen wir uns am einfachsten slappasswd&lt;br /&gt;
&lt;br /&gt;
Die Syntax ist recht einfach, hier ein Beispiel, das man auf der Konsole eingibt.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 slappasswd &amp;gt;&amp;gt; passwort.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Inhalt dieser Datei, passwort.txt enthält nach der zweimaligen Eingabe des passworters auf der Console nun z.B für das Passwort &amp;quot;test&amp;quot; folgendes :&lt;br /&gt;
&lt;br /&gt;
 {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
Hinweis : Das ... &amp;gt;&amp;gt; ... leitet die Ausgabe des Komandos slappasswd in die Datei passwort.txt um die vorher nicht existieren muß. Dieser doppelte Pfeil hängt die Daten hinten an die Datei an und belässt die Datei ansonsten so wie sie vorher war.&lt;br /&gt;
&lt;br /&gt;
Vergisst man aber einen Pfeil ( ... &amp;gt; ... ) dann wird die Datei, wenn sie vorhanden ist vollständig gelehrt bzw. gelöscht und dann neu angelegt !!!&lt;br /&gt;
Das heißt, es ist auch möglich die Ausgabe von slappasswd direkt in die slapd.conf umzuleiten. Bevor man diesen Befehl jedoch eingibt sollte man erst eine Sicherhietskopie der slapd.conf anlegen und dreimal hinschauen das man auch wirklich ...&amp;gt;&amp;gt; ...dort stehen hat !!!&lt;br /&gt;
&lt;br /&gt;
Und egal ob wir das Passwort auf der Konsole kodiert haben oder die Ausgabe in eine Datei oder direkt in die /etc/openldap/slapd.conf umgeleitet haben ,mit dem Vorsatz rootpw und dem erzeugten Hash dahinter sollte diese Zeile :&lt;br /&gt;
&lt;br /&gt;
 rootpw {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
nun in unserer /etc/openldap/slapd.conf stehen und haben damit nun eine grundsätzlich funktionierende Konfiguration erzeugt und können die Datei nun abspeichern und den LDAP Server starten.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 rcldap start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eventuell muß man nun noch einen Schreibfehler korrigieren aber wenn der Server läuft können wir beginnen das Verzeichnis mit Daten zu füllen.&lt;br /&gt;
&lt;br /&gt;
Die slapd.conf erlaubt es uns allerdings noch eine ganze Reihe von Feintunning vorzunehmen (siehe -&amp;gt; man slapd.conf )&lt;br /&gt;
&lt;br /&gt;
Also finalen Test ob LDAP läuft überprüft man erstens mit rcldap status ... dort sollte ein grünes &amp;quot;running&amp;quot; auftauchen.&lt;br /&gt;
&lt;br /&gt;
Auch kann man mit :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 nmap localhost&lt;br /&gt;
&lt;br /&gt;
testen ob der Port 389 in Benutzung ist.&lt;br /&gt;
&lt;br /&gt;
Wenn man auf dem Rechner auf dem der Server läuft auch schon den Client eingerichtet hat (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
kann man auch mit ldapsearch -x die Verbindung mit dem LDAP Server testen.&lt;br /&gt;
&lt;br /&gt;
Wenn der Server nach den ersten beiden Punkten den Anschein macht zu laufen aber die Verbindung mit ldapsearch nicht klappt, sollte man erstens nachschauen ob die SuSEfirewall2 läuft und diese im Zweifel erst mal abschalten.&lt;br /&gt;
Hilft dies auch nicht sind die Einträge in der ldap.conf wohl falsch gesetzt (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
&lt;br /&gt;
Um diese Einstellungen erst einmal zu übergehen kann man ldapsearch ertsmal alle notwendigen Parameter mit auf den Weg geben:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 ldapsearch -x -h localhost -b o=meineFirma,c=de&lt;br /&gt;
 ... bzw.&lt;br /&gt;
 ldapsearch -x -h localhost -D cn=admin,o=meineFirma,c=de -W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bevor man weitergeht sollten zumindest die beiden ersten Test positiv laufen.&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
Um den LDAP-Tree nun mit Daten zu füttern können wir entweder ein Grafisches Frontend benutzen (z.B GQ ) oder wir erstellen eine Datei im ldif Format ( man ldif ) um die Daten z.B. mit dem Befehl ldapadd auf der Konsole in das Verzeichnis zu laden.&lt;br /&gt;
&lt;br /&gt;
Die beliebteste Variante ist es zurzeit, LDAP dazu zu benutzen, User sich&lt;br /&gt;
an der LDAP Datenbank anmelden zu lassen, und dies sowohl für die Linux User als auch Windows User über Samba.&lt;br /&gt;
&lt;br /&gt;
Wir beginnen mit der Anmeldung an einem Linux System.&lt;br /&gt;
Hierzu schauen wir uns als erstes an welche Informationen Linux braucht um einen User zu authentifizieren.&lt;br /&gt;
&lt;br /&gt;
Auf einem System ohne LDAP werden diese Informationen in normalen Dateien gespeichert und zwar in der /etc/passwd und der /etc/shadow sowie die Gruppeninformationen aus der /etc/group.&lt;br /&gt;
&lt;br /&gt;
Schauen wir uns so einen Eintrag in der passwd am Beispiel von root einmal an:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 root:x:0:0:root:/root:/bin/bash&lt;br /&gt;
&lt;br /&gt;
Wir haben hier den Usernamen(root), uid(0), gid(0), Homedirectory(/root) und die LoginShell (/bin/bash). Das x hinter dem Usernamen bedeutet das das Passwort in der /etc/shadow zu finden ist.&lt;br /&gt;
Aus der shadow brauchen wir dann auch nur das Passwort.&lt;br /&gt;
&lt;br /&gt;
Um nun alle diese Informationen in der LDAP Datenbank speichern zu können müssen bestimmte Attribute dort vorhanden sein.&lt;br /&gt;
Hierfür benötigen wir die Objektklasse &amp;quot;posixaccount&amp;quot; welche im nis.schema definiert ist.&lt;br /&gt;
&lt;br /&gt;
Bevor wir also weiter machen kontrollieren wir in der /etc/openldap/slapd.conf die eingetragenen Schemas, dies sollte dann so aussehen :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 include         /etc/openldap/schema/core.schema&lt;br /&gt;
 include         /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include         /etc/openldap/schema/nis.schema&lt;br /&gt;
 include         /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include         /etc/openldap/schema/samba.schema&lt;br /&gt;
 include         /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hinweis Das samba.schema sollte auch wirklich von der aktuell verwendeten Samba Version stammen, sonst kann es zu merkwürdigen Problemen kommen. Die findet man auf SuSE Systemen unter :&lt;br /&gt;
&lt;br /&gt;
 /usr/share/doc/packages/samba/examples/LDAP/samba.schema&lt;br /&gt;
&lt;br /&gt;
Und sollte dann nach /etc/openldap/schema kopiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Damit wären erst einmal die Grundvoraussetzung erfüllt ...&lt;br /&gt;
&lt;br /&gt;
'''HINWEIS :'''&lt;br /&gt;
Da es jede Menge Anleitungen gibt wie man mittels der LDIF Dateien sein Verzeichnis befüllen kann, spare ich mir dies hier und zeige das man auch ohne diese Dateien auskommt. Dennoch sollte sich jeder der sich mit diesem Thema beschäftigt auch die Variante mittels LDIF beherrschen da nicht immer eine grafische Oberfläche zur Verfügung steht.&lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns z.B. des Programms GQ ( http://gq-project.org/ ) welches geraume Zeit SuSE als RPM beiliegt, mitlerweile aber aus anderen Quellem siehe -&amp;gt; [[http://www.linux-club.de/faq/Grafische_LDAP_Tools]]Grafische_LDAP_Tools.&lt;br /&gt;
&lt;br /&gt;
Im &amp;quot;Browse&amp;quot; Reiter sollte man seinen Server sehen, und darunter wenn man diesen anklickt auch die dazu gehörende basedn (also den Eintrag der als suffix in der slapd.conf steht) sehen können.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist das Anlegen von Templates, dies geschieht wieder unter Einstellungen, diesmal unter dem Reiter &amp;quot;Muster&amp;quot;&lt;br /&gt;
Dort suchen wir für den Fall das man mehrere Server angegeben hat den Server aus für den wir die Templates erstellen möchten und klicken dann auf &amp;quot;Neu&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
In dem Fenster das sich nun öffnet können wir auf der linken Seite die benötigten Objektklassen auswählen und mit dem kleinen schwarzen Pfeil nach rechts, in den Bereich der aktuellen Vorlage bringen.&lt;br /&gt;
Unten links müssen wir dann noch einen aussagekräftigen Namen für das Template erstellen und fertig.&lt;br /&gt;
&lt;br /&gt;
Um nun alle erforderlichen Einträge in unserem Verzeichnis erstellen zu können brauchen wir mehrere Templates:&lt;br /&gt;
&lt;br /&gt;
 o (Organization)&lt;br /&gt;
 ou (Organizational Unit)&lt;br /&gt;
 posixAccount (Userdaten für Linux User)&lt;br /&gt;
 posixGroup (Gruppeninformationen für Linux)&lt;br /&gt;
&lt;br /&gt;
Bei jedem Template muß als erstes immer die ObjectClass top vorhanden sein.&lt;br /&gt;
Für o oder ou brauchen wir ansonsten nur die Objektklassen organization bzw. organizational Unit.&lt;br /&gt;
Für den User Account benötigen wir neben dem posixAccount noch die ObjectClass shadowAccount und inetOrgPerson.&lt;br /&gt;
Das Template posixGroup benötigt wiederum nur die ObjectClass posixGroup.&lt;br /&gt;
&lt;br /&gt;
Mit diesen vier Templates können wir nun beginnen unserem LDAP-Baum eine Struktur zu geben.&lt;br /&gt;
&lt;br /&gt;
Hierzu begeben wir uns wieder in die Browse Ansicht und markieren den dort sichtbaren Eintrag der basedn und wählen mit dem Menü das durch klicken der rechten Maustaste auftaucht den Punkt &amp;quot;New&amp;quot; aus.&lt;br /&gt;
Dort sieht man dann die Templates die schon erstellt wurden.&lt;br /&gt;
Für diesen ersten Eintrag wählen wir nun die Organization aus die ja in unserem Fall mit der rootdn übereinstimmt.&lt;br /&gt;
&lt;br /&gt;
In dem folgenden Fenster das sich für den neuen Eintrag öffnet sieht man nun eine Liste mit allen möglichen Attributen die in der im Template festgelegten Objektklassen.&lt;br /&gt;
In neueren Versionen von GQ , wie die die SuSE mitliefert, werden die Attribute die zwingend notwendig sind blau angezeigt.&lt;br /&gt;
&lt;br /&gt;
In diesem Fall ist das außer dem Eintrag dn noch das Attribut o.&lt;br /&gt;
Da wir uns im ersten Teil des Quick Start mit o=meineFirma,c=de umschrieben haben nehmen wir hier das gleiche Beispiel.&lt;br /&gt;
&lt;br /&gt;
Da wir hier die basedn als Ziel beim einfügen ausgewählt haben stimmt die dn schon fast, das Komma das GQ vor der basedn erzeugt müssen wir in diesem Fall entfernen.&lt;br /&gt;
In der Zeile von o können wir nun nochmals meineFirma einfügen, fertig.&lt;br /&gt;
&lt;br /&gt;
Weitere Attribute die nicht blau markiert sind können optional ausgefüllt werden, dienen aber keinem Zweck bei der Authentifizierung.&lt;br /&gt;
&lt;br /&gt;
Als nächstes erstellen wir mindestens zwei &amp;quot;Ordner&amp;quot; (organizationalUnits) auf die gleiche Weise, nur diesmal jeweils mit dem Template für ou und nennen diese dann einmal &amp;quot;users&amp;quot; und einmal &amp;quot;groups&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Nach diesem Prinzip können später dann auch andere &amp;quot;Ordner&amp;quot; z.B für Samba MaschinenAccounts erstellt werden.&lt;br /&gt;
&lt;br /&gt;
Bevor wir nun anfangen User oder Gruppen anzulegen sollten wir einen kurzen Moment überlegen in welchem Bereich die UserIDs und GruppenIDs liegen sollen ....&lt;br /&gt;
&lt;br /&gt;
Für dieses Beispiel nehme ich für die userIDs den Bereich zwischen 1000 - 1499 und für die groupIDs den Bereich zwischen 1500 - 1999.&lt;br /&gt;
&lt;br /&gt;
Beginnen wir mit einer Gruppe: Wir markieren den Ordner &amp;quot;groups&amp;quot; und erstellen aus dem Template posixGroup einen neuen Eintrag der dann ungefähr so aussieht:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: cn=user, ou=groups, o=meineFirma, c=de&lt;br /&gt;
 cn: user&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ähnlich sieht es bei dem Anlegen eines Users aus:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: uid=test, ou=users, o=meineFirma, c=de&lt;br /&gt;
 sn: test&lt;br /&gt;
 cn: test&lt;br /&gt;
 uidNumber: 1000&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
 loginShell: /bin/bash&lt;br /&gt;
 homeDirectory: /home/test&lt;br /&gt;
 userPassword: {SSHA}xyz1234567abc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das Passwort kann GQ erzeugen, jedoch mit dem Nachteil das es erst einmal im Klartext zu lesen ist (der algorytmus kann im Pulldown Menü eingestellt werden)&lt;br /&gt;
Beim Speichern wird das Passwort dann gecrypted.&lt;br /&gt;
Um dies im Zweifel nicht zu einem Risiko zu machen könnte man hier erst einmal ein Dummy-Passwort eintragen (z.B test) und dieses dann später auf der Konsole mit &amp;quot;passwd test&amp;quot; zu ändern.&lt;br /&gt;
&lt;br /&gt;
Da nun sowohl der User als auch seine primäre Gruppe in LDAP existiert kann sich dieser nun über LDAP authentifizieren ...&lt;br /&gt;
&lt;br /&gt;
Will man einen bestehenden Userstamm aus NIS oder der /etc/passwd einfach nur in LDAP übernehmen gibt es die Möglichkeit diese Arbeit von Migrations-Tools ausführen zu lassen.&lt;br /&gt;
Siehe z.B : http://www.padl.com/OSS/MigrationTools.html&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5529</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5529"/>
		<updated>2006-09-21T08:35:30Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Linux Authentifikation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
Wenn alle benötigten Pakete installiert sind (openldap2 und openldap2-Client und alle abhängigen)&lt;br /&gt;
kann man sich an die Arbeit machen das gelernte in die Tat umzusetzen.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei für den Server ist die /etc/openldap/slapd.conf , die bei der Installation schon einige Einträge und Kommentare enthält.&lt;br /&gt;
&lt;br /&gt;
Alle Möglichkeiten kann man in der Manpage von slapd.conf nachlesen.&lt;br /&gt;
&lt;br /&gt;
Da nur root im Normalfall Schreibrechte auf Konfigurationsdateien hat sollte man zum bearbeiten dann auch root-Rechte besitzen.&lt;br /&gt;
&lt;br /&gt;
Zum bearbeiten der Konfigurationsdateien selber kann man unter Linux jeden beliebigen Editor verwenden, bzw. den der einem persönlich am besten gefällt, auf der Konsole z.B vim, joe ... und unter KDE kate, kwrite usw.&lt;br /&gt;
&lt;br /&gt;
Wir öffnen nun die /etc/openldap/slapd.conf mit einem beliebigen Editor z.B auf einer root-Konsole und schauen uns ein wenig um.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:'''&lt;br /&gt;
&lt;br /&gt;
Um das LDAP Verzeichnis später gegen Missbrauch oder ähnlichem abzusichern gibt es in openldap z.B die Möglichkeit den Zugriff auf das Verzeichnis mit ACL' s einzuschränken (access ...)&lt;br /&gt;
&lt;br /&gt;
Diese Funktionen sind für die grundsätzliche Funktion nicht notwendig !!!&lt;br /&gt;
Dort verstecken sich einfach nur weitere Fehlerquellen die gerade zu Anfang einen Neuling in Sachen LDAP nur verwirren.&lt;br /&gt;
&lt;br /&gt;
Also sollten wir grundsätzlich erstmal nur Optionen aktivieren die für den Betrieb unbedingt notwendig sind, unser Server wird ja noch nicht produktiv eingesetzt.&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir uns nun um die eingebundenen Schemas kümmern. In den Schema Dateien finden wir die Definitionen der Objektklassen und der Attribute die wir brauchen um später überhaupt Daten speichern zu können.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig :'''&lt;br /&gt;
Hier ist darauf zu achten die richtige Reihenfolge für die Schema Dateien einzuhalten, da es vorkommen kann das ein Schema ein Attribut hinzufügen will, das eine bestimme ObjectClass erwartet, die aber nicht im gleichen Schema definiert ist. Dieses Schema muß also vorher schon eingebunden worden sein.&lt;br /&gt;
&lt;br /&gt;
Für unseren Zweck brauchen wir also erstmal die folgenden Schema-Dateien :&lt;br /&gt;
&lt;br /&gt;
 core.schema&lt;br /&gt;
 cosine.schema&lt;br /&gt;
 nis.schema&lt;br /&gt;
 inetorgperson.schema&lt;br /&gt;
 samba.schema (oder samba3.schema)&lt;br /&gt;
 misc.schema&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für die slapd.conf wäre nun:&lt;br /&gt;
&lt;br /&gt;
 include /etc/openldap/schema/core.schema&lt;br /&gt;
 include /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include /etc/openldap/schema/nis.schema&lt;br /&gt;
 include /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include /etc/openldap/schema/samba.schema&lt;br /&gt;
 include /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
Die hier aufgeführten Schema Dateien z.B samba.schema nehmen das Thema Anbindung von Samba an LDAP schon ein wenig vorweg. Wer aber Samba noch nicht installiert haben sollte, kann auch vorerst das samba.schema raus lassen, da sich diese Datei im samba-doc Paket befindet und auch zu einem späteren Zeitpunkt eingebunden werden kann.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlicher Abhandlung über die Schema Dateien können wir uns auch für später aufheben wenn wir uns schon ein wenig mit den Funktionen von Openldap beschäftigt haben.&lt;br /&gt;
&lt;br /&gt;
Die nächste Stelle an der wir eingreifen müssen ist der Eintrag &amp;quot;suffix&amp;quot;&lt;br /&gt;
Suffix stellt das Root-Verzeichnis dar bei dem unser LDAP Sever beginnen soll sein Verzeichnis aufzubauen.&lt;br /&gt;
Nach unserer Vorüberlegung weiter oben soll dies für unseren Fall also :&lt;br /&gt;
&lt;br /&gt;
 suffix &amp;quot;o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sein. Dies wird auch der Punkt sein den wir später unserem LDAP-Client mitteilen müssen damit er das LDAP Verzeichnis finden kann.&lt;br /&gt;
&lt;br /&gt;
Als nächstes müssen wir einen Benutzer anlegen der in jeder Situation alle Rechte auf dieses Verzeichnis besitzt also immer schreibend auf unser Verzeichnis zugreifen kann. Dies passiert bei dem Punkt &amp;quot;rootdn&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Bitte beachten :''' &lt;br /&gt;
Dieser User mit der rootdn hat wirklich &amp;quot;immer&amp;quot; alle Rechte im Verzeichnis, selbst mit ACLs kann man dies nicht beeinflussen. Selbst wenn man später einen gleich lautenden Eintrag im Verzeichnis erstellt und dort ein anderes Passwort setzt bleibt das rootpw immer noch gültig. Das macht auch Sinn da man zu Anfang ja auch erstmal Daten in das Verzeichniss bekommen muß.&lt;br /&gt;
&lt;br /&gt;
Wir wählen also hier eine Kurzform die später nicht so viel Tiparbeit erfordert :&lt;br /&gt;
&lt;br /&gt;
 rootdn &amp;quot;cn=admin, o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Es folgt nun das rootpw, dies ist das Passwort des Users das wir mit dem Eintrag rootdn festgelegt haben.&lt;br /&gt;
&lt;br /&gt;
Rein theoretisch könnten wir hier auch ein Klartextpasswort einsetzten doch so etwas sollte man gar nicht erst anfangen.&lt;br /&gt;
&lt;br /&gt;
Um nun ein verschlüsseltes Passwort zu erstellen, bedienen wir uns am einfachsten slappasswd&lt;br /&gt;
&lt;br /&gt;
Die Syntax ist recht einfach, hier ein Beispiel, das man auf der Konsole eingibt.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 slappasswd &amp;gt;&amp;gt; passwort.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Inhalt dieser Datei, passwort.txt enthält nach der zweimaligen Eingabe des passworters auf der Console nun z.B für das Passwort &amp;quot;test&amp;quot; folgendes :&lt;br /&gt;
&lt;br /&gt;
 {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
Hinweis : Das ... &amp;gt;&amp;gt; ... leitet die Ausgabe des Komandos slappasswd in die Datei passwort.txt um die vorher nicht existieren muß. Dieser doppelte Pfeil hängt die Daten hinten an die Datei an und belässt die Datei ansonsten so wie sie vorher war.&lt;br /&gt;
&lt;br /&gt;
Vergisst man aber einen Pfeil ( ... &amp;gt; ... ) dann wird die Datei, wenn sie vorhanden ist vollständig gelehrt bzw. gelöscht und dann neu angelegt !!!&lt;br /&gt;
Das heißt, es ist auch möglich die Ausgabe von slappasswd direkt in die slapd.conf umzuleiten. Bevor man diesen Befehl jedoch eingibt sollte man erst eine Sicherhietskopie der slapd.conf anlegen und dreimal hinschauen das man auch wirklich ...&amp;gt;&amp;gt; ...dort stehen hat !!!&lt;br /&gt;
&lt;br /&gt;
Und egal ob wir das Passwort auf der Konsole kodiert haben oder die Ausgabe in eine Datei oder direkt in die /etc/openldap/slapd.conf umgeleitet haben ,mit dem Vorsatz rootpw und dem erzeugten Hash dahinter sollte diese Zeile :&lt;br /&gt;
&lt;br /&gt;
 rootpw {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
nun in unserer /etc/openldap/slapd.conf stehen und haben damit nun eine grundsätzlich funktionierende Konfiguration erzeugt und können die Datei nun abspeichern und den LDAP Server starten.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 rcldap start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eventuell muß man nun noch einen Schreibfehler korrigieren aber wenn der Server läuft können wir beginnen das Verzeichnis mit Daten zu füllen.&lt;br /&gt;
&lt;br /&gt;
Die slapd.conf erlaubt es uns allerdings noch eine ganze Reihe von Feintunning vorzunehmen (siehe -&amp;gt; man slapd.conf )&lt;br /&gt;
&lt;br /&gt;
Also finalen Test ob LDAP läuft überprüft man erstens mit rcldap status ... dort sollte ein grünes &amp;quot;running&amp;quot; auftauchen.&lt;br /&gt;
&lt;br /&gt;
Auch kann man mit :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 nmap localhost&lt;br /&gt;
&lt;br /&gt;
testen ob der Port 389 in Benutzung ist.&lt;br /&gt;
&lt;br /&gt;
Wenn man auf dem Rechner auf dem der Server läuft auch schon den Client eingerichtet hat (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
kann man auch mit ldapsearch -x die Verbindung mit dem LDAP Server testen.&lt;br /&gt;
&lt;br /&gt;
Wenn der Server nach den ersten beiden Punkten den Anschein macht zu laufen aber die Verbindung mit ldapsearch nicht klappt, sollte man erstens nachschauen ob die SuSEfirewall2 läuft und diese im Zweifel erst mal abschalten.&lt;br /&gt;
Hilft dies auch nicht sind die Einträge in der ldap.conf wohl falsch gesetzt (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
&lt;br /&gt;
Um diese Einstellungen erst einmal zu übergehen kann man ldapsearch ertsmal alle notwendigen Parameter mit auf den Weg geben:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 ldapsearch -x -h localhost -b o=meineFirma,c=de&lt;br /&gt;
 ... bzw.&lt;br /&gt;
 ldapsearch -x -h localhost -D cn=admin,o=meineFirma,c=de -W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bevor man weitergeht sollten zumindest die beiden ersten Test positiv laufen.&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
Um den LDAP-Tree nun mit Daten zu füttern können wir entweder ein Grafisches Frontend benutzen (z.B GQ ) oder wir erstellen eine Datei im ldif Format ( man ldif ) um die Daten z.B. mit dem Befehl ldapadd auf der Konsole in das Verzeichnis zu laden.&lt;br /&gt;
&lt;br /&gt;
Die beliebteste Variante ist es zurzeit, LDAP dazu zu benutzen, User sich&lt;br /&gt;
an der LDAP Datenbank anmelden zu lassen, und dies sowohl für die Linux User als auch Windows User über Samba.&lt;br /&gt;
&lt;br /&gt;
Wir beginnen mit der Anmeldung an einem Linux System.&lt;br /&gt;
Hierzu schauen wir uns als erstes an welche Informationen Linux braucht um einen User zu authentifizieren.&lt;br /&gt;
&lt;br /&gt;
Auf einem System ohne LDAP werden diese Informationen in normalen Dateien gespeichert und zwar in der /etc/passwd und der /etc/shadow sowie die Gruppeninformationen aus der /etc/group.&lt;br /&gt;
&lt;br /&gt;
Schauen wir uns so einen Eintrag in der passwd am Beispiel von root einmal an:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 root:x:0:0:root:/root:/bin/bash&lt;br /&gt;
&lt;br /&gt;
Wir haben hier den Usernamen(root), uid(0), gid(0), Homedirectory(/root) und die LoginShell (/bin/bash). Das x hinter dem Usernamen bedeutet das das Passwort in der /etc/shadow zu finden ist.&lt;br /&gt;
Aus der shadow brauchen wir dann auch nur das Passwort.&lt;br /&gt;
&lt;br /&gt;
Um nun alle diese Informationen in der LDAP Datenbank speichern zu können müssen bestimmte Attribute dort vorhanden sein.&lt;br /&gt;
Hierfür benötigen wir die Objektklasse &amp;quot;posixaccount&amp;quot; welche im nis.schema definiert ist.&lt;br /&gt;
&lt;br /&gt;
Bevor wir also weiter machen kontrollieren wir in der /etc/openldap/slapd.conf die eingetragenen Schemas, dies sollte dann so aussehen :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 include         /etc/openldap/schema/core.schema&lt;br /&gt;
 include         /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include         /etc/openldap/schema/nis.schema&lt;br /&gt;
 include         /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include         /etc/openldap/schema/samba.schema&lt;br /&gt;
 include         /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hinweis Das samba.schema sollte auch wirklich von der aktuell verwendeten Samba Version stammen, sonst kann es zu merkwürdigen Problemen kommen. Die findet man auf SuSE Systemen unter :&lt;br /&gt;
&lt;br /&gt;
 /usr/share/doc/packages/samba/examples/LDAP/samba.schema&lt;br /&gt;
&lt;br /&gt;
Und sollte dann nach /etc/openldap/schema kopiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Damit wären erst einmal die Grundvoraussetzung erfüllt ...&lt;br /&gt;
&lt;br /&gt;
'''HINWEIS :'''&lt;br /&gt;
Da es jede Menge Anleitungen gibt wie man mittels der LDIF Dateien sein Verzeichnis befüllen kann, spare ich mir dies hier und zeige das man auch ohne diese Dateien auskommt. Dennoch sollte sich jeder der sich mit diesem Thema beschäftigt auch die Variante mittels LDIF beherrschen da nicht immer eine grafische Oberfläche zur Verfügung steht.&lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns z.B. des Programms GQ ( http://gq-project.org/ ) welches geraume Zeit SuSE als RPM beiliegt, mitlerweile aber aus anderen Quellem siehe -&amp;gt; [[ http://www.linux-club.de/faq/Grafische_LDAP_Tools#GQ]]Grafische_LDAP_Tools.&lt;br /&gt;
&lt;br /&gt;
Im &amp;quot;Browse&amp;quot; Reiter sollte man seinen Server sehen, und darunter wenn man diesen anklickt auch die dazu gehörende basedn (also den Eintrag der als suffix in der slapd.conf steht) sehen können.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist das Anlegen von Templates, dies geschieht wieder unter Einstellungen, diesmal unter dem Reiter &amp;quot;Muster&amp;quot;&lt;br /&gt;
Dort suchen wir für den Fall das man mehrere Server angegeben hat den Server aus für den wir die Templates erstellen möchten und klicken dann auf &amp;quot;Neu&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
In dem Fenster das sich nun öffnet können wir auf der linken Seite die benötigten Objektklassen auswählen und mit dem kleinen schwarzen Pfeil nach rechts, in den Bereich der aktuellen Vorlage bringen.&lt;br /&gt;
Unten links müssen wir dann noch einen aussagekräftigen Namen für das Template erstellen und fertig.&lt;br /&gt;
&lt;br /&gt;
Um nun alle erforderlichen Einträge in unserem Verzeichnis erstellen zu können brauchen wir mehrere Templates:&lt;br /&gt;
&lt;br /&gt;
 o (Organization)&lt;br /&gt;
 ou (Organizational Unit)&lt;br /&gt;
 posixAccount (Userdaten für Linux User)&lt;br /&gt;
 posixGroup (Gruppeninformationen für Linux)&lt;br /&gt;
&lt;br /&gt;
Bei jedem Template muß als erstes immer die ObjectClass top vorhanden sein.&lt;br /&gt;
Für o oder ou brauchen wir ansonsten nur die Objektklassen organization bzw. organizational Unit.&lt;br /&gt;
Für den User Account benötigen wir neben dem posixAccount noch die ObjectClass shadowAccount und inetOrgPerson.&lt;br /&gt;
Das Template posixGroup benötigt wiederum nur die ObjectClass posixGroup.&lt;br /&gt;
&lt;br /&gt;
Mit diesen vier Templates können wir nun beginnen unserem LDAP-Baum eine Struktur zu geben.&lt;br /&gt;
&lt;br /&gt;
Hierzu begeben wir uns wieder in die Browse Ansicht und markieren den dort sichtbaren Eintrag der basedn und wählen mit dem Menü das durch klicken der rechten Maustaste auftaucht den Punkt &amp;quot;New&amp;quot; aus.&lt;br /&gt;
Dort sieht man dann die Templates die schon erstellt wurden.&lt;br /&gt;
Für diesen ersten Eintrag wählen wir nun die Organization aus die ja in unserem Fall mit der rootdn übereinstimmt.&lt;br /&gt;
&lt;br /&gt;
In dem folgenden Fenster das sich für den neuen Eintrag öffnet sieht man nun eine Liste mit allen möglichen Attributen die in der im Template festgelegten Objektklassen.&lt;br /&gt;
In neueren Versionen von GQ , wie die die SuSE mitliefert, werden die Attribute die zwingend notwendig sind blau angezeigt.&lt;br /&gt;
&lt;br /&gt;
In diesem Fall ist das außer dem Eintrag dn noch das Attribut o.&lt;br /&gt;
Da wir uns im ersten Teil des Quick Start mit o=meineFirma,c=de umschrieben haben nehmen wir hier das gleiche Beispiel.&lt;br /&gt;
&lt;br /&gt;
Da wir hier die basedn als Ziel beim einfügen ausgewählt haben stimmt die dn schon fast, das Komma das GQ vor der basedn erzeugt müssen wir in diesem Fall entfernen.&lt;br /&gt;
In der Zeile von o können wir nun nochmals meineFirma einfügen, fertig.&lt;br /&gt;
&lt;br /&gt;
Weitere Attribute die nicht blau markiert sind können optional ausgefüllt werden, dienen aber keinem Zweck bei der Authentifizierung.&lt;br /&gt;
&lt;br /&gt;
Als nächstes erstellen wir mindestens zwei &amp;quot;Ordner&amp;quot; (organizationalUnits) auf die gleiche Weise, nur diesmal jeweils mit dem Template für ou und nennen diese dann einmal &amp;quot;users&amp;quot; und einmal &amp;quot;groups&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Nach diesem Prinzip können später dann auch andere &amp;quot;Ordner&amp;quot; z.B für Samba MaschinenAccounts erstellt werden.&lt;br /&gt;
&lt;br /&gt;
Bevor wir nun anfangen User oder Gruppen anzulegen sollten wir einen kurzen Moment überlegen in welchem Bereich die UserIDs und GruppenIDs liegen sollen ....&lt;br /&gt;
&lt;br /&gt;
Für dieses Beispiel nehme ich für die userIDs den Bereich zwischen 1000 - 1499 und für die groupIDs den Bereich zwischen 1500 - 1999.&lt;br /&gt;
&lt;br /&gt;
Beginnen wir mit einer Gruppe: Wir markieren den Ordner &amp;quot;groups&amp;quot; und erstellen aus dem Template posixGroup einen neuen Eintrag der dann ungefähr so aussieht:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: cn=user, ou=groups, o=meineFirma, c=de&lt;br /&gt;
 cn: user&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ähnlich sieht es bei dem Anlegen eines Users aus:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: uid=test, ou=users, o=meineFirma, c=de&lt;br /&gt;
 sn: test&lt;br /&gt;
 cn: test&lt;br /&gt;
 uidNumber: 1000&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
 loginShell: /bin/bash&lt;br /&gt;
 homeDirectory: /home/test&lt;br /&gt;
 userPassword: {SSHA}xyz1234567abc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das Passwort kann GQ erzeugen, jedoch mit dem Nachteil das es erst einmal im Klartext zu lesen ist (der algorytmus kann im Pulldown Menü eingestellt werden)&lt;br /&gt;
Beim Speichern wird das Passwort dann gecrypted.&lt;br /&gt;
Um dies im Zweifel nicht zu einem Risiko zu machen könnte man hier erst einmal ein Dummy-Passwort eintragen (z.B test) und dieses dann später auf der Konsole mit &amp;quot;passwd test&amp;quot; zu ändern.&lt;br /&gt;
&lt;br /&gt;
Da nun sowohl der User als auch seine primäre Gruppe in LDAP existiert kann sich dieser nun über LDAP authentifizieren ...&lt;br /&gt;
&lt;br /&gt;
Will man einen bestehenden Userstamm aus NIS oder der /etc/passwd einfach nur in LDAP übernehmen gibt es die Möglichkeit diese Arbeit von Migrations-Tools ausführen zu lassen.&lt;br /&gt;
Siehe z.B : http://www.padl.com/OSS/MigrationTools.html&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5528</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5528"/>
		<updated>2006-09-21T08:34:44Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Linux Authentifikation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
Wenn alle benötigten Pakete installiert sind (openldap2 und openldap2-Client und alle abhängigen)&lt;br /&gt;
kann man sich an die Arbeit machen das gelernte in die Tat umzusetzen.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei für den Server ist die /etc/openldap/slapd.conf , die bei der Installation schon einige Einträge und Kommentare enthält.&lt;br /&gt;
&lt;br /&gt;
Alle Möglichkeiten kann man in der Manpage von slapd.conf nachlesen.&lt;br /&gt;
&lt;br /&gt;
Da nur root im Normalfall Schreibrechte auf Konfigurationsdateien hat sollte man zum bearbeiten dann auch root-Rechte besitzen.&lt;br /&gt;
&lt;br /&gt;
Zum bearbeiten der Konfigurationsdateien selber kann man unter Linux jeden beliebigen Editor verwenden, bzw. den der einem persönlich am besten gefällt, auf der Konsole z.B vim, joe ... und unter KDE kate, kwrite usw.&lt;br /&gt;
&lt;br /&gt;
Wir öffnen nun die /etc/openldap/slapd.conf mit einem beliebigen Editor z.B auf einer root-Konsole und schauen uns ein wenig um.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:'''&lt;br /&gt;
&lt;br /&gt;
Um das LDAP Verzeichnis später gegen Missbrauch oder ähnlichem abzusichern gibt es in openldap z.B die Möglichkeit den Zugriff auf das Verzeichnis mit ACL' s einzuschränken (access ...)&lt;br /&gt;
&lt;br /&gt;
Diese Funktionen sind für die grundsätzliche Funktion nicht notwendig !!!&lt;br /&gt;
Dort verstecken sich einfach nur weitere Fehlerquellen die gerade zu Anfang einen Neuling in Sachen LDAP nur verwirren.&lt;br /&gt;
&lt;br /&gt;
Also sollten wir grundsätzlich erstmal nur Optionen aktivieren die für den Betrieb unbedingt notwendig sind, unser Server wird ja noch nicht produktiv eingesetzt.&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir uns nun um die eingebundenen Schemas kümmern. In den Schema Dateien finden wir die Definitionen der Objektklassen und der Attribute die wir brauchen um später überhaupt Daten speichern zu können.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig :'''&lt;br /&gt;
Hier ist darauf zu achten die richtige Reihenfolge für die Schema Dateien einzuhalten, da es vorkommen kann das ein Schema ein Attribut hinzufügen will, das eine bestimme ObjectClass erwartet, die aber nicht im gleichen Schema definiert ist. Dieses Schema muß also vorher schon eingebunden worden sein.&lt;br /&gt;
&lt;br /&gt;
Für unseren Zweck brauchen wir also erstmal die folgenden Schema-Dateien :&lt;br /&gt;
&lt;br /&gt;
 core.schema&lt;br /&gt;
 cosine.schema&lt;br /&gt;
 nis.schema&lt;br /&gt;
 inetorgperson.schema&lt;br /&gt;
 samba.schema (oder samba3.schema)&lt;br /&gt;
 misc.schema&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für die slapd.conf wäre nun:&lt;br /&gt;
&lt;br /&gt;
 include /etc/openldap/schema/core.schema&lt;br /&gt;
 include /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include /etc/openldap/schema/nis.schema&lt;br /&gt;
 include /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include /etc/openldap/schema/samba.schema&lt;br /&gt;
 include /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
Die hier aufgeführten Schema Dateien z.B samba.schema nehmen das Thema Anbindung von Samba an LDAP schon ein wenig vorweg. Wer aber Samba noch nicht installiert haben sollte, kann auch vorerst das samba.schema raus lassen, da sich diese Datei im samba-doc Paket befindet und auch zu einem späteren Zeitpunkt eingebunden werden kann.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlicher Abhandlung über die Schema Dateien können wir uns auch für später aufheben wenn wir uns schon ein wenig mit den Funktionen von Openldap beschäftigt haben.&lt;br /&gt;
&lt;br /&gt;
Die nächste Stelle an der wir eingreifen müssen ist der Eintrag &amp;quot;suffix&amp;quot;&lt;br /&gt;
Suffix stellt das Root-Verzeichnis dar bei dem unser LDAP Sever beginnen soll sein Verzeichnis aufzubauen.&lt;br /&gt;
Nach unserer Vorüberlegung weiter oben soll dies für unseren Fall also :&lt;br /&gt;
&lt;br /&gt;
 suffix &amp;quot;o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sein. Dies wird auch der Punkt sein den wir später unserem LDAP-Client mitteilen müssen damit er das LDAP Verzeichnis finden kann.&lt;br /&gt;
&lt;br /&gt;
Als nächstes müssen wir einen Benutzer anlegen der in jeder Situation alle Rechte auf dieses Verzeichnis besitzt also immer schreibend auf unser Verzeichnis zugreifen kann. Dies passiert bei dem Punkt &amp;quot;rootdn&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Bitte beachten :''' &lt;br /&gt;
Dieser User mit der rootdn hat wirklich &amp;quot;immer&amp;quot; alle Rechte im Verzeichnis, selbst mit ACLs kann man dies nicht beeinflussen. Selbst wenn man später einen gleich lautenden Eintrag im Verzeichnis erstellt und dort ein anderes Passwort setzt bleibt das rootpw immer noch gültig. Das macht auch Sinn da man zu Anfang ja auch erstmal Daten in das Verzeichniss bekommen muß.&lt;br /&gt;
&lt;br /&gt;
Wir wählen also hier eine Kurzform die später nicht so viel Tiparbeit erfordert :&lt;br /&gt;
&lt;br /&gt;
 rootdn &amp;quot;cn=admin, o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Es folgt nun das rootpw, dies ist das Passwort des Users das wir mit dem Eintrag rootdn festgelegt haben.&lt;br /&gt;
&lt;br /&gt;
Rein theoretisch könnten wir hier auch ein Klartextpasswort einsetzten doch so etwas sollte man gar nicht erst anfangen.&lt;br /&gt;
&lt;br /&gt;
Um nun ein verschlüsseltes Passwort zu erstellen, bedienen wir uns am einfachsten slappasswd&lt;br /&gt;
&lt;br /&gt;
Die Syntax ist recht einfach, hier ein Beispiel, das man auf der Konsole eingibt.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 slappasswd &amp;gt;&amp;gt; passwort.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Inhalt dieser Datei, passwort.txt enthält nach der zweimaligen Eingabe des passworters auf der Console nun z.B für das Passwort &amp;quot;test&amp;quot; folgendes :&lt;br /&gt;
&lt;br /&gt;
 {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
Hinweis : Das ... &amp;gt;&amp;gt; ... leitet die Ausgabe des Komandos slappasswd in die Datei passwort.txt um die vorher nicht existieren muß. Dieser doppelte Pfeil hängt die Daten hinten an die Datei an und belässt die Datei ansonsten so wie sie vorher war.&lt;br /&gt;
&lt;br /&gt;
Vergisst man aber einen Pfeil ( ... &amp;gt; ... ) dann wird die Datei, wenn sie vorhanden ist vollständig gelehrt bzw. gelöscht und dann neu angelegt !!!&lt;br /&gt;
Das heißt, es ist auch möglich die Ausgabe von slappasswd direkt in die slapd.conf umzuleiten. Bevor man diesen Befehl jedoch eingibt sollte man erst eine Sicherhietskopie der slapd.conf anlegen und dreimal hinschauen das man auch wirklich ...&amp;gt;&amp;gt; ...dort stehen hat !!!&lt;br /&gt;
&lt;br /&gt;
Und egal ob wir das Passwort auf der Konsole kodiert haben oder die Ausgabe in eine Datei oder direkt in die /etc/openldap/slapd.conf umgeleitet haben ,mit dem Vorsatz rootpw und dem erzeugten Hash dahinter sollte diese Zeile :&lt;br /&gt;
&lt;br /&gt;
 rootpw {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
nun in unserer /etc/openldap/slapd.conf stehen und haben damit nun eine grundsätzlich funktionierende Konfiguration erzeugt und können die Datei nun abspeichern und den LDAP Server starten.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 rcldap start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eventuell muß man nun noch einen Schreibfehler korrigieren aber wenn der Server läuft können wir beginnen das Verzeichnis mit Daten zu füllen.&lt;br /&gt;
&lt;br /&gt;
Die slapd.conf erlaubt es uns allerdings noch eine ganze Reihe von Feintunning vorzunehmen (siehe -&amp;gt; man slapd.conf )&lt;br /&gt;
&lt;br /&gt;
Also finalen Test ob LDAP läuft überprüft man erstens mit rcldap status ... dort sollte ein grünes &amp;quot;running&amp;quot; auftauchen.&lt;br /&gt;
&lt;br /&gt;
Auch kann man mit :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 nmap localhost&lt;br /&gt;
&lt;br /&gt;
testen ob der Port 389 in Benutzung ist.&lt;br /&gt;
&lt;br /&gt;
Wenn man auf dem Rechner auf dem der Server läuft auch schon den Client eingerichtet hat (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
kann man auch mit ldapsearch -x die Verbindung mit dem LDAP Server testen.&lt;br /&gt;
&lt;br /&gt;
Wenn der Server nach den ersten beiden Punkten den Anschein macht zu laufen aber die Verbindung mit ldapsearch nicht klappt, sollte man erstens nachschauen ob die SuSEfirewall2 läuft und diese im Zweifel erst mal abschalten.&lt;br /&gt;
Hilft dies auch nicht sind die Einträge in der ldap.conf wohl falsch gesetzt (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
&lt;br /&gt;
Um diese Einstellungen erst einmal zu übergehen kann man ldapsearch ertsmal alle notwendigen Parameter mit auf den Weg geben:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 ldapsearch -x -h localhost -b o=meineFirma,c=de&lt;br /&gt;
 ... bzw.&lt;br /&gt;
 ldapsearch -x -h localhost -D cn=admin,o=meineFirma,c=de -W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bevor man weitergeht sollten zumindest die beiden ersten Test positiv laufen.&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
Um den LDAP-Tree nun mit Daten zu füttern können wir entweder ein Grafisches Frontend benutzen (z.B GQ ) oder wir erstellen eine Datei im ldif Format ( man ldif ) um die Daten z.B. mit dem Befehl ldapadd auf der Konsole in das Verzeichnis zu laden.&lt;br /&gt;
&lt;br /&gt;
Die beliebteste Variante ist es zurzeit, LDAP dazu zu benutzen, User sich&lt;br /&gt;
an der LDAP Datenbank anmelden zu lassen, und dies sowohl für die Linux User als auch Windows User über Samba.&lt;br /&gt;
&lt;br /&gt;
Wir beginnen mit der Anmeldung an einem Linux System.&lt;br /&gt;
Hierzu schauen wir uns als erstes an welche Informationen Linux braucht um einen User zu authentifizieren.&lt;br /&gt;
&lt;br /&gt;
Auf einem System ohne LDAP werden diese Informationen in normalen Dateien gespeichert und zwar in der /etc/passwd und der /etc/shadow sowie die Gruppeninformationen aus der /etc/group.&lt;br /&gt;
&lt;br /&gt;
Schauen wir uns so einen Eintrag in der passwd am Beispiel von root einmal an:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 root:x:0:0:root:/root:/bin/bash&lt;br /&gt;
&lt;br /&gt;
Wir haben hier den Usernamen(root), uid(0), gid(0), Homedirectory(/root) und die LoginShell (/bin/bash). Das x hinter dem Usernamen bedeutet das das Passwort in der /etc/shadow zu finden ist.&lt;br /&gt;
Aus der shadow brauchen wir dann auch nur das Passwort.&lt;br /&gt;
&lt;br /&gt;
Um nun alle diese Informationen in der LDAP Datenbank speichern zu können müssen bestimmte Attribute dort vorhanden sein.&lt;br /&gt;
Hierfür benötigen wir die Objektklasse &amp;quot;posixaccount&amp;quot; welche im nis.schema definiert ist.&lt;br /&gt;
&lt;br /&gt;
Bevor wir also weiter machen kontrollieren wir in der /etc/openldap/slapd.conf die eingetragenen Schemas, dies sollte dann so aussehen :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 include         /etc/openldap/schema/core.schema&lt;br /&gt;
 include         /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include         /etc/openldap/schema/nis.schema&lt;br /&gt;
 include         /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include         /etc/openldap/schema/samba.schema&lt;br /&gt;
 include         /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hinweis Das samba.schema sollte auch wirklich von der aktuell verwendeten Samba Version stammen, sonst kann es zu merkwürdigen Problemen kommen. Die findet man auf SuSE Systemen unter :&lt;br /&gt;
&lt;br /&gt;
 /usr/share/doc/packages/samba/examples/LDAP/samba.schema&lt;br /&gt;
&lt;br /&gt;
Und sollte dann nach /etc/openldap/schema kopiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Damit wären erst einmal die Grundvoraussetzung erfüllt ...&lt;br /&gt;
&lt;br /&gt;
'''HINWEIS :'''&lt;br /&gt;
Da es jede Menge Anleitungen gibt wie man mittels der LDIF Dateien sein Verzeichnis befüllen kann, spare ich mir dies hier und zeige das man auch ohne diese Dateien auskommt. Dennoch sollte sich jeder der sich mit diesem Thema beschäftigt auch die Variante mittels LDIF beherrschen da nicht immer eine grafische Oberfläche zur Verfügung steht.&lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns z.B. des Programms GQ ( http://gq-project.org/ ) welches geraume Zeit SuSE als RPM beiliegt, mitlerweile aber aus anderen Quellem siehe -&amp;gt; [[ Grafische_LDAP_Tools http://www.linux-club.de/faq/Grafische_LDAP_Tools#GQ]].&lt;br /&gt;
&lt;br /&gt;
Im &amp;quot;Browse&amp;quot; Reiter sollte man seinen Server sehen, und darunter wenn man diesen anklickt auch die dazu gehörende basedn (also den Eintrag der als suffix in der slapd.conf steht) sehen können.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist das Anlegen von Templates, dies geschieht wieder unter Einstellungen, diesmal unter dem Reiter &amp;quot;Muster&amp;quot;&lt;br /&gt;
Dort suchen wir für den Fall das man mehrere Server angegeben hat den Server aus für den wir die Templates erstellen möchten und klicken dann auf &amp;quot;Neu&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
In dem Fenster das sich nun öffnet können wir auf der linken Seite die benötigten Objektklassen auswählen und mit dem kleinen schwarzen Pfeil nach rechts, in den Bereich der aktuellen Vorlage bringen.&lt;br /&gt;
Unten links müssen wir dann noch einen aussagekräftigen Namen für das Template erstellen und fertig.&lt;br /&gt;
&lt;br /&gt;
Um nun alle erforderlichen Einträge in unserem Verzeichnis erstellen zu können brauchen wir mehrere Templates:&lt;br /&gt;
&lt;br /&gt;
 o (Organization)&lt;br /&gt;
 ou (Organizational Unit)&lt;br /&gt;
 posixAccount (Userdaten für Linux User)&lt;br /&gt;
 posixGroup (Gruppeninformationen für Linux)&lt;br /&gt;
&lt;br /&gt;
Bei jedem Template muß als erstes immer die ObjectClass top vorhanden sein.&lt;br /&gt;
Für o oder ou brauchen wir ansonsten nur die Objektklassen organization bzw. organizational Unit.&lt;br /&gt;
Für den User Account benötigen wir neben dem posixAccount noch die ObjectClass shadowAccount und inetOrgPerson.&lt;br /&gt;
Das Template posixGroup benötigt wiederum nur die ObjectClass posixGroup.&lt;br /&gt;
&lt;br /&gt;
Mit diesen vier Templates können wir nun beginnen unserem LDAP-Baum eine Struktur zu geben.&lt;br /&gt;
&lt;br /&gt;
Hierzu begeben wir uns wieder in die Browse Ansicht und markieren den dort sichtbaren Eintrag der basedn und wählen mit dem Menü das durch klicken der rechten Maustaste auftaucht den Punkt &amp;quot;New&amp;quot; aus.&lt;br /&gt;
Dort sieht man dann die Templates die schon erstellt wurden.&lt;br /&gt;
Für diesen ersten Eintrag wählen wir nun die Organization aus die ja in unserem Fall mit der rootdn übereinstimmt.&lt;br /&gt;
&lt;br /&gt;
In dem folgenden Fenster das sich für den neuen Eintrag öffnet sieht man nun eine Liste mit allen möglichen Attributen die in der im Template festgelegten Objektklassen.&lt;br /&gt;
In neueren Versionen von GQ , wie die die SuSE mitliefert, werden die Attribute die zwingend notwendig sind blau angezeigt.&lt;br /&gt;
&lt;br /&gt;
In diesem Fall ist das außer dem Eintrag dn noch das Attribut o.&lt;br /&gt;
Da wir uns im ersten Teil des Quick Start mit o=meineFirma,c=de umschrieben haben nehmen wir hier das gleiche Beispiel.&lt;br /&gt;
&lt;br /&gt;
Da wir hier die basedn als Ziel beim einfügen ausgewählt haben stimmt die dn schon fast, das Komma das GQ vor der basedn erzeugt müssen wir in diesem Fall entfernen.&lt;br /&gt;
In der Zeile von o können wir nun nochmals meineFirma einfügen, fertig.&lt;br /&gt;
&lt;br /&gt;
Weitere Attribute die nicht blau markiert sind können optional ausgefüllt werden, dienen aber keinem Zweck bei der Authentifizierung.&lt;br /&gt;
&lt;br /&gt;
Als nächstes erstellen wir mindestens zwei &amp;quot;Ordner&amp;quot; (organizationalUnits) auf die gleiche Weise, nur diesmal jeweils mit dem Template für ou und nennen diese dann einmal &amp;quot;users&amp;quot; und einmal &amp;quot;groups&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Nach diesem Prinzip können später dann auch andere &amp;quot;Ordner&amp;quot; z.B für Samba MaschinenAccounts erstellt werden.&lt;br /&gt;
&lt;br /&gt;
Bevor wir nun anfangen User oder Gruppen anzulegen sollten wir einen kurzen Moment überlegen in welchem Bereich die UserIDs und GruppenIDs liegen sollen ....&lt;br /&gt;
&lt;br /&gt;
Für dieses Beispiel nehme ich für die userIDs den Bereich zwischen 1000 - 1499 und für die groupIDs den Bereich zwischen 1500 - 1999.&lt;br /&gt;
&lt;br /&gt;
Beginnen wir mit einer Gruppe: Wir markieren den Ordner &amp;quot;groups&amp;quot; und erstellen aus dem Template posixGroup einen neuen Eintrag der dann ungefähr so aussieht:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: cn=user, ou=groups, o=meineFirma, c=de&lt;br /&gt;
 cn: user&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ähnlich sieht es bei dem Anlegen eines Users aus:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: uid=test, ou=users, o=meineFirma, c=de&lt;br /&gt;
 sn: test&lt;br /&gt;
 cn: test&lt;br /&gt;
 uidNumber: 1000&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
 loginShell: /bin/bash&lt;br /&gt;
 homeDirectory: /home/test&lt;br /&gt;
 userPassword: {SSHA}xyz1234567abc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das Passwort kann GQ erzeugen, jedoch mit dem Nachteil das es erst einmal im Klartext zu lesen ist (der algorytmus kann im Pulldown Menü eingestellt werden)&lt;br /&gt;
Beim Speichern wird das Passwort dann gecrypted.&lt;br /&gt;
Um dies im Zweifel nicht zu einem Risiko zu machen könnte man hier erst einmal ein Dummy-Passwort eintragen (z.B test) und dieses dann später auf der Konsole mit &amp;quot;passwd test&amp;quot; zu ändern.&lt;br /&gt;
&lt;br /&gt;
Da nun sowohl der User als auch seine primäre Gruppe in LDAP existiert kann sich dieser nun über LDAP authentifizieren ...&lt;br /&gt;
&lt;br /&gt;
Will man einen bestehenden Userstamm aus NIS oder der /etc/passwd einfach nur in LDAP übernehmen gibt es die Möglichkeit diese Arbeit von Migrations-Tools ausführen zu lassen.&lt;br /&gt;
Siehe z.B : http://www.padl.com/OSS/MigrationTools.html&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5527</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5527"/>
		<updated>2006-09-21T08:33:43Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Linux Authentifikation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
Wenn alle benötigten Pakete installiert sind (openldap2 und openldap2-Client und alle abhängigen)&lt;br /&gt;
kann man sich an die Arbeit machen das gelernte in die Tat umzusetzen.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei für den Server ist die /etc/openldap/slapd.conf , die bei der Installation schon einige Einträge und Kommentare enthält.&lt;br /&gt;
&lt;br /&gt;
Alle Möglichkeiten kann man in der Manpage von slapd.conf nachlesen.&lt;br /&gt;
&lt;br /&gt;
Da nur root im Normalfall Schreibrechte auf Konfigurationsdateien hat sollte man zum bearbeiten dann auch root-Rechte besitzen.&lt;br /&gt;
&lt;br /&gt;
Zum bearbeiten der Konfigurationsdateien selber kann man unter Linux jeden beliebigen Editor verwenden, bzw. den der einem persönlich am besten gefällt, auf der Konsole z.B vim, joe ... und unter KDE kate, kwrite usw.&lt;br /&gt;
&lt;br /&gt;
Wir öffnen nun die /etc/openldap/slapd.conf mit einem beliebigen Editor z.B auf einer root-Konsole und schauen uns ein wenig um.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:'''&lt;br /&gt;
&lt;br /&gt;
Um das LDAP Verzeichnis später gegen Missbrauch oder ähnlichem abzusichern gibt es in openldap z.B die Möglichkeit den Zugriff auf das Verzeichnis mit ACL' s einzuschränken (access ...)&lt;br /&gt;
&lt;br /&gt;
Diese Funktionen sind für die grundsätzliche Funktion nicht notwendig !!!&lt;br /&gt;
Dort verstecken sich einfach nur weitere Fehlerquellen die gerade zu Anfang einen Neuling in Sachen LDAP nur verwirren.&lt;br /&gt;
&lt;br /&gt;
Also sollten wir grundsätzlich erstmal nur Optionen aktivieren die für den Betrieb unbedingt notwendig sind, unser Server wird ja noch nicht produktiv eingesetzt.&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir uns nun um die eingebundenen Schemas kümmern. In den Schema Dateien finden wir die Definitionen der Objektklassen und der Attribute die wir brauchen um später überhaupt Daten speichern zu können.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig :'''&lt;br /&gt;
Hier ist darauf zu achten die richtige Reihenfolge für die Schema Dateien einzuhalten, da es vorkommen kann das ein Schema ein Attribut hinzufügen will, das eine bestimme ObjectClass erwartet, die aber nicht im gleichen Schema definiert ist. Dieses Schema muß also vorher schon eingebunden worden sein.&lt;br /&gt;
&lt;br /&gt;
Für unseren Zweck brauchen wir also erstmal die folgenden Schema-Dateien :&lt;br /&gt;
&lt;br /&gt;
 core.schema&lt;br /&gt;
 cosine.schema&lt;br /&gt;
 nis.schema&lt;br /&gt;
 inetorgperson.schema&lt;br /&gt;
 samba.schema (oder samba3.schema)&lt;br /&gt;
 misc.schema&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für die slapd.conf wäre nun:&lt;br /&gt;
&lt;br /&gt;
 include /etc/openldap/schema/core.schema&lt;br /&gt;
 include /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include /etc/openldap/schema/nis.schema&lt;br /&gt;
 include /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include /etc/openldap/schema/samba.schema&lt;br /&gt;
 include /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
Die hier aufgeführten Schema Dateien z.B samba.schema nehmen das Thema Anbindung von Samba an LDAP schon ein wenig vorweg. Wer aber Samba noch nicht installiert haben sollte, kann auch vorerst das samba.schema raus lassen, da sich diese Datei im samba-doc Paket befindet und auch zu einem späteren Zeitpunkt eingebunden werden kann.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlicher Abhandlung über die Schema Dateien können wir uns auch für später aufheben wenn wir uns schon ein wenig mit den Funktionen von Openldap beschäftigt haben.&lt;br /&gt;
&lt;br /&gt;
Die nächste Stelle an der wir eingreifen müssen ist der Eintrag &amp;quot;suffix&amp;quot;&lt;br /&gt;
Suffix stellt das Root-Verzeichnis dar bei dem unser LDAP Sever beginnen soll sein Verzeichnis aufzubauen.&lt;br /&gt;
Nach unserer Vorüberlegung weiter oben soll dies für unseren Fall also :&lt;br /&gt;
&lt;br /&gt;
 suffix &amp;quot;o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sein. Dies wird auch der Punkt sein den wir später unserem LDAP-Client mitteilen müssen damit er das LDAP Verzeichnis finden kann.&lt;br /&gt;
&lt;br /&gt;
Als nächstes müssen wir einen Benutzer anlegen der in jeder Situation alle Rechte auf dieses Verzeichnis besitzt also immer schreibend auf unser Verzeichnis zugreifen kann. Dies passiert bei dem Punkt &amp;quot;rootdn&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Bitte beachten :''' &lt;br /&gt;
Dieser User mit der rootdn hat wirklich &amp;quot;immer&amp;quot; alle Rechte im Verzeichnis, selbst mit ACLs kann man dies nicht beeinflussen. Selbst wenn man später einen gleich lautenden Eintrag im Verzeichnis erstellt und dort ein anderes Passwort setzt bleibt das rootpw immer noch gültig. Das macht auch Sinn da man zu Anfang ja auch erstmal Daten in das Verzeichniss bekommen muß.&lt;br /&gt;
&lt;br /&gt;
Wir wählen also hier eine Kurzform die später nicht so viel Tiparbeit erfordert :&lt;br /&gt;
&lt;br /&gt;
 rootdn &amp;quot;cn=admin, o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Es folgt nun das rootpw, dies ist das Passwort des Users das wir mit dem Eintrag rootdn festgelegt haben.&lt;br /&gt;
&lt;br /&gt;
Rein theoretisch könnten wir hier auch ein Klartextpasswort einsetzten doch so etwas sollte man gar nicht erst anfangen.&lt;br /&gt;
&lt;br /&gt;
Um nun ein verschlüsseltes Passwort zu erstellen, bedienen wir uns am einfachsten slappasswd&lt;br /&gt;
&lt;br /&gt;
Die Syntax ist recht einfach, hier ein Beispiel, das man auf der Konsole eingibt.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 slappasswd &amp;gt;&amp;gt; passwort.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Inhalt dieser Datei, passwort.txt enthält nach der zweimaligen Eingabe des passworters auf der Console nun z.B für das Passwort &amp;quot;test&amp;quot; folgendes :&lt;br /&gt;
&lt;br /&gt;
 {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
Hinweis : Das ... &amp;gt;&amp;gt; ... leitet die Ausgabe des Komandos slappasswd in die Datei passwort.txt um die vorher nicht existieren muß. Dieser doppelte Pfeil hängt die Daten hinten an die Datei an und belässt die Datei ansonsten so wie sie vorher war.&lt;br /&gt;
&lt;br /&gt;
Vergisst man aber einen Pfeil ( ... &amp;gt; ... ) dann wird die Datei, wenn sie vorhanden ist vollständig gelehrt bzw. gelöscht und dann neu angelegt !!!&lt;br /&gt;
Das heißt, es ist auch möglich die Ausgabe von slappasswd direkt in die slapd.conf umzuleiten. Bevor man diesen Befehl jedoch eingibt sollte man erst eine Sicherhietskopie der slapd.conf anlegen und dreimal hinschauen das man auch wirklich ...&amp;gt;&amp;gt; ...dort stehen hat !!!&lt;br /&gt;
&lt;br /&gt;
Und egal ob wir das Passwort auf der Konsole kodiert haben oder die Ausgabe in eine Datei oder direkt in die /etc/openldap/slapd.conf umgeleitet haben ,mit dem Vorsatz rootpw und dem erzeugten Hash dahinter sollte diese Zeile :&lt;br /&gt;
&lt;br /&gt;
 rootpw {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
nun in unserer /etc/openldap/slapd.conf stehen und haben damit nun eine grundsätzlich funktionierende Konfiguration erzeugt und können die Datei nun abspeichern und den LDAP Server starten.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 rcldap start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eventuell muß man nun noch einen Schreibfehler korrigieren aber wenn der Server läuft können wir beginnen das Verzeichnis mit Daten zu füllen.&lt;br /&gt;
&lt;br /&gt;
Die slapd.conf erlaubt es uns allerdings noch eine ganze Reihe von Feintunning vorzunehmen (siehe -&amp;gt; man slapd.conf )&lt;br /&gt;
&lt;br /&gt;
Also finalen Test ob LDAP läuft überprüft man erstens mit rcldap status ... dort sollte ein grünes &amp;quot;running&amp;quot; auftauchen.&lt;br /&gt;
&lt;br /&gt;
Auch kann man mit :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 nmap localhost&lt;br /&gt;
&lt;br /&gt;
testen ob der Port 389 in Benutzung ist.&lt;br /&gt;
&lt;br /&gt;
Wenn man auf dem Rechner auf dem der Server läuft auch schon den Client eingerichtet hat (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
kann man auch mit ldapsearch -x die Verbindung mit dem LDAP Server testen.&lt;br /&gt;
&lt;br /&gt;
Wenn der Server nach den ersten beiden Punkten den Anschein macht zu laufen aber die Verbindung mit ldapsearch nicht klappt, sollte man erstens nachschauen ob die SuSEfirewall2 läuft und diese im Zweifel erst mal abschalten.&lt;br /&gt;
Hilft dies auch nicht sind die Einträge in der ldap.conf wohl falsch gesetzt (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
&lt;br /&gt;
Um diese Einstellungen erst einmal zu übergehen kann man ldapsearch ertsmal alle notwendigen Parameter mit auf den Weg geben:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 ldapsearch -x -h localhost -b o=meineFirma,c=de&lt;br /&gt;
 ... bzw.&lt;br /&gt;
 ldapsearch -x -h localhost -D cn=admin,o=meineFirma,c=de -W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bevor man weitergeht sollten zumindest die beiden ersten Test positiv laufen.&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
Um den LDAP-Tree nun mit Daten zu füttern können wir entweder ein Grafisches Frontend benutzen (z.B GQ ) oder wir erstellen eine Datei im ldif Format ( man ldif ) um die Daten z.B. mit dem Befehl ldapadd auf der Konsole in das Verzeichnis zu laden.&lt;br /&gt;
&lt;br /&gt;
Die beliebteste Variante ist es zurzeit, LDAP dazu zu benutzen, User sich&lt;br /&gt;
an der LDAP Datenbank anmelden zu lassen, und dies sowohl für die Linux User als auch Windows User über Samba.&lt;br /&gt;
&lt;br /&gt;
Wir beginnen mit der Anmeldung an einem Linux System.&lt;br /&gt;
Hierzu schauen wir uns als erstes an welche Informationen Linux braucht um einen User zu authentifizieren.&lt;br /&gt;
&lt;br /&gt;
Auf einem System ohne LDAP werden diese Informationen in normalen Dateien gespeichert und zwar in der /etc/passwd und der /etc/shadow sowie die Gruppeninformationen aus der /etc/group.&lt;br /&gt;
&lt;br /&gt;
Schauen wir uns so einen Eintrag in der passwd am Beispiel von root einmal an:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 root:x:0:0:root:/root:/bin/bash&lt;br /&gt;
&lt;br /&gt;
Wir haben hier den Usernamen(root), uid(0), gid(0), Homedirectory(/root) und die LoginShell (/bin/bash). Das x hinter dem Usernamen bedeutet das das Passwort in der /etc/shadow zu finden ist.&lt;br /&gt;
Aus der shadow brauchen wir dann auch nur das Passwort.&lt;br /&gt;
&lt;br /&gt;
Um nun alle diese Informationen in der LDAP Datenbank speichern zu können müssen bestimmte Attribute dort vorhanden sein.&lt;br /&gt;
Hierfür benötigen wir die Objektklasse &amp;quot;posixaccount&amp;quot; welche im nis.schema definiert ist.&lt;br /&gt;
&lt;br /&gt;
Bevor wir also weiter machen kontrollieren wir in der /etc/openldap/slapd.conf die eingetragenen Schemas, dies sollte dann so aussehen :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 include         /etc/openldap/schema/core.schema&lt;br /&gt;
 include         /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include         /etc/openldap/schema/nis.schema&lt;br /&gt;
 include         /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include         /etc/openldap/schema/samba.schema&lt;br /&gt;
 include         /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hinweis Das samba.schema sollte auch wirklich von der aktuell verwendeten Samba Version stammen, sonst kann es zu merkwürdigen Problemen kommen. Die findet man auf SuSE Systemen unter :&lt;br /&gt;
&lt;br /&gt;
 /usr/share/doc/packages/samba/examples/LDAP/samba.schema&lt;br /&gt;
&lt;br /&gt;
Und sollte dann nach /etc/openldap/schema kopiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Damit wären erst einmal die Grundvoraussetzung erfüllt ...&lt;br /&gt;
&lt;br /&gt;
'''HINWEIS :'''&lt;br /&gt;
Da es jede Menge Anleitungen gibt wie man mittels der LDIF Dateien sein Verzeichnis befüllen kann, spare ich mir dies hier und zeige das man auch ohne diese Dateien auskommt. Dennoch sollte sich jeder der sich mit diesem Thema beschäftigt auch die Variante mittels LDIF beherrschen da nicht immer eine grafische Oberfläche zur Verfügung steht.&lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns z.B. des Programms GQ ( http://gq-project.org/ ) welches geraume Zeit SuSE als RPM beiliegt, mitlerweile aber aus anderen Quellem siehe -&amp;gt; [[http://www.linux-club.de/faq/Grafische_LDAP_Tools#GQ]].&lt;br /&gt;
&lt;br /&gt;
Im &amp;quot;Browse&amp;quot; Reiter sollte man seinen Server sehen, und darunter wenn man diesen anklickt auch die dazu gehörende basedn (also den Eintrag der als suffix in der slapd.conf steht) sehen können.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist das Anlegen von Templates, dies geschieht wieder unter Einstellungen, diesmal unter dem Reiter &amp;quot;Muster&amp;quot;&lt;br /&gt;
Dort suchen wir für den Fall das man mehrere Server angegeben hat den Server aus für den wir die Templates erstellen möchten und klicken dann auf &amp;quot;Neu&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
In dem Fenster das sich nun öffnet können wir auf der linken Seite die benötigten Objektklassen auswählen und mit dem kleinen schwarzen Pfeil nach rechts, in den Bereich der aktuellen Vorlage bringen.&lt;br /&gt;
Unten links müssen wir dann noch einen aussagekräftigen Namen für das Template erstellen und fertig.&lt;br /&gt;
&lt;br /&gt;
Um nun alle erforderlichen Einträge in unserem Verzeichnis erstellen zu können brauchen wir mehrere Templates:&lt;br /&gt;
&lt;br /&gt;
 o (Organization)&lt;br /&gt;
 ou (Organizational Unit)&lt;br /&gt;
 posixAccount (Userdaten für Linux User)&lt;br /&gt;
 posixGroup (Gruppeninformationen für Linux)&lt;br /&gt;
&lt;br /&gt;
Bei jedem Template muß als erstes immer die ObjectClass top vorhanden sein.&lt;br /&gt;
Für o oder ou brauchen wir ansonsten nur die Objektklassen organization bzw. organizational Unit.&lt;br /&gt;
Für den User Account benötigen wir neben dem posixAccount noch die ObjectClass shadowAccount und inetOrgPerson.&lt;br /&gt;
Das Template posixGroup benötigt wiederum nur die ObjectClass posixGroup.&lt;br /&gt;
&lt;br /&gt;
Mit diesen vier Templates können wir nun beginnen unserem LDAP-Baum eine Struktur zu geben.&lt;br /&gt;
&lt;br /&gt;
Hierzu begeben wir uns wieder in die Browse Ansicht und markieren den dort sichtbaren Eintrag der basedn und wählen mit dem Menü das durch klicken der rechten Maustaste auftaucht den Punkt &amp;quot;New&amp;quot; aus.&lt;br /&gt;
Dort sieht man dann die Templates die schon erstellt wurden.&lt;br /&gt;
Für diesen ersten Eintrag wählen wir nun die Organization aus die ja in unserem Fall mit der rootdn übereinstimmt.&lt;br /&gt;
&lt;br /&gt;
In dem folgenden Fenster das sich für den neuen Eintrag öffnet sieht man nun eine Liste mit allen möglichen Attributen die in der im Template festgelegten Objektklassen.&lt;br /&gt;
In neueren Versionen von GQ , wie die die SuSE mitliefert, werden die Attribute die zwingend notwendig sind blau angezeigt.&lt;br /&gt;
&lt;br /&gt;
In diesem Fall ist das außer dem Eintrag dn noch das Attribut o.&lt;br /&gt;
Da wir uns im ersten Teil des Quick Start mit o=meineFirma,c=de umschrieben haben nehmen wir hier das gleiche Beispiel.&lt;br /&gt;
&lt;br /&gt;
Da wir hier die basedn als Ziel beim einfügen ausgewählt haben stimmt die dn schon fast, das Komma das GQ vor der basedn erzeugt müssen wir in diesem Fall entfernen.&lt;br /&gt;
In der Zeile von o können wir nun nochmals meineFirma einfügen, fertig.&lt;br /&gt;
&lt;br /&gt;
Weitere Attribute die nicht blau markiert sind können optional ausgefüllt werden, dienen aber keinem Zweck bei der Authentifizierung.&lt;br /&gt;
&lt;br /&gt;
Als nächstes erstellen wir mindestens zwei &amp;quot;Ordner&amp;quot; (organizationalUnits) auf die gleiche Weise, nur diesmal jeweils mit dem Template für ou und nennen diese dann einmal &amp;quot;users&amp;quot; und einmal &amp;quot;groups&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Nach diesem Prinzip können später dann auch andere &amp;quot;Ordner&amp;quot; z.B für Samba MaschinenAccounts erstellt werden.&lt;br /&gt;
&lt;br /&gt;
Bevor wir nun anfangen User oder Gruppen anzulegen sollten wir einen kurzen Moment überlegen in welchem Bereich die UserIDs und GruppenIDs liegen sollen ....&lt;br /&gt;
&lt;br /&gt;
Für dieses Beispiel nehme ich für die userIDs den Bereich zwischen 1000 - 1499 und für die groupIDs den Bereich zwischen 1500 - 1999.&lt;br /&gt;
&lt;br /&gt;
Beginnen wir mit einer Gruppe: Wir markieren den Ordner &amp;quot;groups&amp;quot; und erstellen aus dem Template posixGroup einen neuen Eintrag der dann ungefähr so aussieht:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: cn=user, ou=groups, o=meineFirma, c=de&lt;br /&gt;
 cn: user&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ähnlich sieht es bei dem Anlegen eines Users aus:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 dn: uid=test, ou=users, o=meineFirma, c=de&lt;br /&gt;
 sn: test&lt;br /&gt;
 cn: test&lt;br /&gt;
 uidNumber: 1000&lt;br /&gt;
 gidNumber: 1500&lt;br /&gt;
 loginShell: /bin/bash&lt;br /&gt;
 homeDirectory: /home/test&lt;br /&gt;
 userPassword: {SSHA}xyz1234567abc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das Passwort kann GQ erzeugen, jedoch mit dem Nachteil das es erst einmal im Klartext zu lesen ist (der algorytmus kann im Pulldown Menü eingestellt werden)&lt;br /&gt;
Beim Speichern wird das Passwort dann gecrypted.&lt;br /&gt;
Um dies im Zweifel nicht zu einem Risiko zu machen könnte man hier erst einmal ein Dummy-Passwort eintragen (z.B test) und dieses dann später auf der Konsole mit &amp;quot;passwd test&amp;quot; zu ändern.&lt;br /&gt;
&lt;br /&gt;
Da nun sowohl der User als auch seine primäre Gruppe in LDAP existiert kann sich dieser nun über LDAP authentifizieren ...&lt;br /&gt;
&lt;br /&gt;
Will man einen bestehenden Userstamm aus NIS oder der /etc/passwd einfach nur in LDAP übernehmen gibt es die Möglichkeit diese Arbeit von Migrations-Tools ausführen zu lassen.&lt;br /&gt;
Siehe z.B : http://www.padl.com/OSS/MigrationTools.html&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5526</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5526"/>
		<updated>2006-09-21T08:31:19Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Linux Authentifikation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
Wenn alle benötigten Pakete installiert sind (openldap2 und openldap2-Client und alle abhängigen)&lt;br /&gt;
kann man sich an die Arbeit machen das gelernte in die Tat umzusetzen.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei für den Server ist die /etc/openldap/slapd.conf , die bei der Installation schon einige Einträge und Kommentare enthält.&lt;br /&gt;
&lt;br /&gt;
Alle Möglichkeiten kann man in der Manpage von slapd.conf nachlesen.&lt;br /&gt;
&lt;br /&gt;
Da nur root im Normalfall Schreibrechte auf Konfigurationsdateien hat sollte man zum bearbeiten dann auch root-Rechte besitzen.&lt;br /&gt;
&lt;br /&gt;
Zum bearbeiten der Konfigurationsdateien selber kann man unter Linux jeden beliebigen Editor verwenden, bzw. den der einem persönlich am besten gefällt, auf der Konsole z.B vim, joe ... und unter KDE kate, kwrite usw.&lt;br /&gt;
&lt;br /&gt;
Wir öffnen nun die /etc/openldap/slapd.conf mit einem beliebigen Editor z.B auf einer root-Konsole und schauen uns ein wenig um.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:'''&lt;br /&gt;
&lt;br /&gt;
Um das LDAP Verzeichnis später gegen Missbrauch oder ähnlichem abzusichern gibt es in openldap z.B die Möglichkeit den Zugriff auf das Verzeichnis mit ACL' s einzuschränken (access ...)&lt;br /&gt;
&lt;br /&gt;
Diese Funktionen sind für die grundsätzliche Funktion nicht notwendig !!!&lt;br /&gt;
Dort verstecken sich einfach nur weitere Fehlerquellen die gerade zu Anfang einen Neuling in Sachen LDAP nur verwirren.&lt;br /&gt;
&lt;br /&gt;
Also sollten wir grundsätzlich erstmal nur Optionen aktivieren die für den Betrieb unbedingt notwendig sind, unser Server wird ja noch nicht produktiv eingesetzt.&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir uns nun um die eingebundenen Schemas kümmern. In den Schema Dateien finden wir die Definitionen der Objektklassen und der Attribute die wir brauchen um später überhaupt Daten speichern zu können.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig :'''&lt;br /&gt;
Hier ist darauf zu achten die richtige Reihenfolge für die Schema Dateien einzuhalten, da es vorkommen kann das ein Schema ein Attribut hinzufügen will, das eine bestimme ObjectClass erwartet, die aber nicht im gleichen Schema definiert ist. Dieses Schema muß also vorher schon eingebunden worden sein.&lt;br /&gt;
&lt;br /&gt;
Für unseren Zweck brauchen wir also erstmal die folgenden Schema-Dateien :&lt;br /&gt;
&lt;br /&gt;
 core.schema&lt;br /&gt;
 cosine.schema&lt;br /&gt;
 nis.schema&lt;br /&gt;
 inetorgperson.schema&lt;br /&gt;
 samba.schema (oder samba3.schema)&lt;br /&gt;
 misc.schema&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für die slapd.conf wäre nun:&lt;br /&gt;
&lt;br /&gt;
 include /etc/openldap/schema/core.schema&lt;br /&gt;
 include /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include /etc/openldap/schema/nis.schema&lt;br /&gt;
 include /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include /etc/openldap/schema/samba.schema&lt;br /&gt;
 include /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
Die hier aufgeführten Schema Dateien z.B samba.schema nehmen das Thema Anbindung von Samba an LDAP schon ein wenig vorweg. Wer aber Samba noch nicht installiert haben sollte, kann auch vorerst das samba.schema raus lassen, da sich diese Datei im samba-doc Paket befindet und auch zu einem späteren Zeitpunkt eingebunden werden kann.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlicher Abhandlung über die Schema Dateien können wir uns auch für später aufheben wenn wir uns schon ein wenig mit den Funktionen von Openldap beschäftigt haben.&lt;br /&gt;
&lt;br /&gt;
Die nächste Stelle an der wir eingreifen müssen ist der Eintrag &amp;quot;suffix&amp;quot;&lt;br /&gt;
Suffix stellt das Root-Verzeichnis dar bei dem unser LDAP Sever beginnen soll sein Verzeichnis aufzubauen.&lt;br /&gt;
Nach unserer Vorüberlegung weiter oben soll dies für unseren Fall also :&lt;br /&gt;
&lt;br /&gt;
 suffix &amp;quot;o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sein. Dies wird auch der Punkt sein den wir später unserem LDAP-Client mitteilen müssen damit er das LDAP Verzeichnis finden kann.&lt;br /&gt;
&lt;br /&gt;
Als nächstes müssen wir einen Benutzer anlegen der in jeder Situation alle Rechte auf dieses Verzeichnis besitzt also immer schreibend auf unser Verzeichnis zugreifen kann. Dies passiert bei dem Punkt &amp;quot;rootdn&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Bitte beachten :''' &lt;br /&gt;
Dieser User mit der rootdn hat wirklich &amp;quot;immer&amp;quot; alle Rechte im Verzeichnis, selbst mit ACLs kann man dies nicht beeinflussen. Selbst wenn man später einen gleich lautenden Eintrag im Verzeichnis erstellt und dort ein anderes Passwort setzt bleibt das rootpw immer noch gültig. Das macht auch Sinn da man zu Anfang ja auch erstmal Daten in das Verzeichniss bekommen muß.&lt;br /&gt;
&lt;br /&gt;
Wir wählen also hier eine Kurzform die später nicht so viel Tiparbeit erfordert :&lt;br /&gt;
&lt;br /&gt;
 rootdn &amp;quot;cn=admin, o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Es folgt nun das rootpw, dies ist das Passwort des Users das wir mit dem Eintrag rootdn festgelegt haben.&lt;br /&gt;
&lt;br /&gt;
Rein theoretisch könnten wir hier auch ein Klartextpasswort einsetzten doch so etwas sollte man gar nicht erst anfangen.&lt;br /&gt;
&lt;br /&gt;
Um nun ein verschlüsseltes Passwort zu erstellen, bedienen wir uns am einfachsten slappasswd&lt;br /&gt;
&lt;br /&gt;
Die Syntax ist recht einfach, hier ein Beispiel, das man auf der Konsole eingibt.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 slappasswd &amp;gt;&amp;gt; passwort.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Inhalt dieser Datei, passwort.txt enthält nach der zweimaligen Eingabe des passworters auf der Console nun z.B für das Passwort &amp;quot;test&amp;quot; folgendes :&lt;br /&gt;
&lt;br /&gt;
 {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
Hinweis : Das ... &amp;gt;&amp;gt; ... leitet die Ausgabe des Komandos slappasswd in die Datei passwort.txt um die vorher nicht existieren muß. Dieser doppelte Pfeil hängt die Daten hinten an die Datei an und belässt die Datei ansonsten so wie sie vorher war.&lt;br /&gt;
&lt;br /&gt;
Vergisst man aber einen Pfeil ( ... &amp;gt; ... ) dann wird die Datei, wenn sie vorhanden ist vollständig gelehrt bzw. gelöscht und dann neu angelegt !!!&lt;br /&gt;
Das heißt, es ist auch möglich die Ausgabe von slappasswd direkt in die slapd.conf umzuleiten. Bevor man diesen Befehl jedoch eingibt sollte man erst eine Sicherhietskopie der slapd.conf anlegen und dreimal hinschauen das man auch wirklich ...&amp;gt;&amp;gt; ...dort stehen hat !!!&lt;br /&gt;
&lt;br /&gt;
Und egal ob wir das Passwort auf der Konsole kodiert haben oder die Ausgabe in eine Datei oder direkt in die /etc/openldap/slapd.conf umgeleitet haben ,mit dem Vorsatz rootpw und dem erzeugten Hash dahinter sollte diese Zeile :&lt;br /&gt;
&lt;br /&gt;
 rootpw {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
nun in unserer /etc/openldap/slapd.conf stehen und haben damit nun eine grundsätzlich funktionierende Konfiguration erzeugt und können die Datei nun abspeichern und den LDAP Server starten.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 rcldap start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eventuell muß man nun noch einen Schreibfehler korrigieren aber wenn der Server läuft können wir beginnen das Verzeichnis mit Daten zu füllen.&lt;br /&gt;
&lt;br /&gt;
Die slapd.conf erlaubt es uns allerdings noch eine ganze Reihe von Feintunning vorzunehmen (siehe -&amp;gt; man slapd.conf )&lt;br /&gt;
&lt;br /&gt;
Also finalen Test ob LDAP läuft überprüft man erstens mit rcldap status ... dort sollte ein grünes &amp;quot;running&amp;quot; auftauchen.&lt;br /&gt;
&lt;br /&gt;
Auch kann man mit :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 nmap localhost&lt;br /&gt;
&lt;br /&gt;
testen ob der Port 389 in Benutzung ist.&lt;br /&gt;
&lt;br /&gt;
Wenn man auf dem Rechner auf dem der Server läuft auch schon den Client eingerichtet hat (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
kann man auch mit ldapsearch -x die Verbindung mit dem LDAP Server testen.&lt;br /&gt;
&lt;br /&gt;
Wenn der Server nach den ersten beiden Punkten den Anschein macht zu laufen aber die Verbindung mit ldapsearch nicht klappt, sollte man erstens nachschauen ob die SuSEfirewall2 läuft und diese im Zweifel erst mal abschalten.&lt;br /&gt;
Hilft dies auch nicht sind die Einträge in der ldap.conf wohl falsch gesetzt (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
&lt;br /&gt;
Um diese Einstellungen erst einmal zu übergehen kann man ldapsearch ertsmal alle notwendigen Parameter mit auf den Weg geben:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 ldapsearch -x -h localhost -b o=meineFirma,c=de&lt;br /&gt;
 ... bzw.&lt;br /&gt;
 ldapsearch -x -h localhost -D cn=admin,o=meineFirma,c=de -W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bevor man weitergeht sollten zumindest die beiden ersten Test positiv laufen.&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
Um den LDAP-Tree nun mit Daten zu füttern können wir entweder ein Grafisches Frontend benutzen (z.B GQ ) oder wir erstellen eine Datei im ldif Format ( man ldif ) um die Daten z.B. mit dem Befehl ldapadd auf der Konsole in das Verzeichnis zu laden.&lt;br /&gt;
&lt;br /&gt;
Die beliebteste Variante ist es zurzeit, LDAP dazu zu benutzen, User sich&lt;br /&gt;
an der LDAP Datenbank anmelden zu lassen, und dies sowohl für die Linux User als auch Windows User über Samba.&lt;br /&gt;
&lt;br /&gt;
Wir beginnen mit der Anmeldung an einem Linux System.&lt;br /&gt;
Hierzu schauen wir uns als erstes an welche Informationen Linux braucht um einen User zu authentifizieren.&lt;br /&gt;
&lt;br /&gt;
Auf einem System ohne LDAP werden diese Informationen in normalen Dateien gespeichert und zwar in der /etc/passwd und der /etc/shadow sowie die Gruppeninformationen aus der /etc/group.&lt;br /&gt;
&lt;br /&gt;
Schauen wir uns so einen Eintrag in der passwd am Beispiel von root einmal an:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 root:x:0:0:root:/root:/bin/bash&lt;br /&gt;
&lt;br /&gt;
Wir haben hier den Usernamen(root), uid(0), gid(0), Homedirectory(/root) und die LoginShell (/bin/bash). Das x hinter dem Usernamen bedeutet das das Passwort in der /etc/shadow zu finden ist.&lt;br /&gt;
Aus der shadow brauchen wir dann auch nur das Passwort.&lt;br /&gt;
&lt;br /&gt;
Um nun alle diese Informationen in der LDAP Datenbank speichern zu können müssen bestimmte Attribute dort vorhanden sein.&lt;br /&gt;
Hierfür benötigen wir die Objektklasse &amp;quot;posixaccount&amp;quot; welche im nis.schema definiert ist.&lt;br /&gt;
&lt;br /&gt;
Bevor wir also weiter machen kontrollieren wir in der /etc/openldap/slapd.conf die eingetragenen Schemas, dies sollte dann so aussehen :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 include         /etc/openldap/schema/core.schema&lt;br /&gt;
 include         /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include         /etc/openldap/schema/nis.schema&lt;br /&gt;
 include         /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include         /etc/openldap/schema/samba.schema&lt;br /&gt;
 include         /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hinweis Das samba.schema sollte auch wirklich von der aktuell verwendeten Samba Version stammen, sonst kann es zu merkwürdigen Problemen kommen. Die findet man auf SuSE Systemen unter :&lt;br /&gt;
&lt;br /&gt;
 /usr/share/doc/packages/samba/examples/LDAP/samba.schema&lt;br /&gt;
&lt;br /&gt;
Und sollte dann nach /etc/openldap/schema kopiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Damit wären erst einmal die Grundvoraussetzung erfüllt ...&lt;br /&gt;
&lt;br /&gt;
'''HINWEIS :'''&lt;br /&gt;
Da es jede Menge Anleitungen gibt wie man mittels der LDIF Dateien sein Verzeichnis befüllen kann, spare ich mir dies hier und zeige das man auch ohne diese Dateien auskommt. Dennoch sollte sich jeder der sich mit diesem Thema beschäftigt auch die Variante mittels LDIF beherrschen da nicht immer eine grafische Oberfläche zur Verfügung steht.&lt;br /&gt;
&lt;br /&gt;
Wir bedienen uns z.B. des Programms GQ ( http://gq-project.org/ ) welches geraume Zeit SuSE als RPM beiliegt, mitlerweile aber aus anderen Quellem siehe -&amp;gt; http://www.linux-club.de/faq/Grafische_LDAP_Tools.&lt;br /&gt;
&lt;br /&gt;
Im &amp;quot;Browse&amp;quot; Reiter sollte man seinen Server sehen, und darunter wenn man diesen anklickt auch die dazu gehörende basedn (also den Eintrag der als suffix in der slapd.conf steht) sehen können.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist das Anlegen von Templates, dies geschieht wieder unter Einstellungen, diesmal unter dem Reiter &amp;quot;Muster&amp;quot;&lt;br /&gt;
Dort suchen wir für den Fall das man mehrere Server angegeben hat den Server aus für den wir die Templates erstellen möchten und klicken dann auf &amp;quot;Neu&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
In dem Fenster das sich nun öffnet können wir auf der linken Seite die benötigten Objektklassen auswählen und mit dem kleinen schwarzen Pfeil nach rechts, in den Bereich der aktuellen Vorlage bringen.&lt;br /&gt;
Unten links müssen wir dann noch einen aussagekräftigen Namen für das Template erstellen und fertig.&lt;br /&gt;
&lt;br /&gt;
Um nun alle erforderlichen Einträge in unserem Verzeichnis erstellen zu können brauchen wir mehrere Templates:&lt;br /&gt;
&lt;br /&gt;
o (Organization)&lt;br /&gt;
ou (Organizational Unit)&lt;br /&gt;
posixAccount (Userdaten für Linux User)&lt;br /&gt;
posixGroup (Gruppeninformationen für Linux)&lt;br /&gt;
&lt;br /&gt;
Bei jedem Template muß als erstes immer die ObjectClass top vorhanden sein.&lt;br /&gt;
Für o oder ou brauchen wir ansonsten nur die Objektklassen organization bzw. organizational Unit.&lt;br /&gt;
Für den User Account benötigen wir neben dem posixAccount noch die ObjectClass shadowAccount und inetOrgPerson.&lt;br /&gt;
Das Template posixGroup benötigt wiederum nur die ObjectClass posixGroup.&lt;br /&gt;
&lt;br /&gt;
Mit diesen vier Templates können wir nun beginnen unserem LDAP-Baum eine Struktur zu geben.&lt;br /&gt;
&lt;br /&gt;
Hierzu begeben wir uns wieder in die Browse Ansicht und markieren den dort sichtbaren Eintrag der basedn und wählen mit dem Menü das durch klicken der rechten Maustaste auftaucht den Punkt &amp;quot;New&amp;quot; aus.&lt;br /&gt;
Dort sieht man dann die Templates die schon erstellt wurden.&lt;br /&gt;
Für diesen ersten Eintrag wählen wir nun die Organization aus die ja in unserem Fall mit der rootdn übereinstimmt.&lt;br /&gt;
&lt;br /&gt;
In dem folgenden Fenster das sich für den neuen Eintrag öffnet sieht man nun eine Liste mit allen möglichen Attributen die in der im Template festgelegten Objektklassen.&lt;br /&gt;
In neueren Versionen von GQ , wie die die SuSE mitliefert, werden die Attribute die zwingend notwendig sind blau angezeigt.&lt;br /&gt;
&lt;br /&gt;
In diesem Fall ist das außer dem Eintrag dn noch das Attribut o.&lt;br /&gt;
Da wir uns im ersten Teil des Quick Start mit o=meineFirma,c=de umschrieben haben nehmen wir hier das gleiche Beispiel.&lt;br /&gt;
&lt;br /&gt;
Da wir hier die basedn als Ziel beim einfügen ausgewählt haben stimmt die dn schon fast, das Komma das GQ vor der basedn erzeugt müssen wir in diesem Fall entfernen.&lt;br /&gt;
In der Zeile von o können wir nun nochmals meineFirma einfügen, fertig.&lt;br /&gt;
&lt;br /&gt;
Weitere Attribute die nicht blau markiert sind können optional ausgefüllt werden, dienen aber keinem Zweck bei der Authentifizierung.&lt;br /&gt;
&lt;br /&gt;
Als nächstes erstellen wir mindestens zwei &amp;quot;Ordner&amp;quot; (organizationalUnits) auf die gleiche Weise, nur diesmal jeweils mit dem Template für ou und nennen diese dann einmal &amp;quot;users&amp;quot; und einmal &amp;quot;groups&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Nach diesem Prinzip können später dann auch andere &amp;quot;Ordner&amp;quot; z.B für Samba MaschinenAccounts erstellt werden.&lt;br /&gt;
&lt;br /&gt;
Bevor wir nun anfangen User oder Gruppen anzulegen sollten wir einen kurzen Moment überlegen in welchem Bereich die UserIDs und GruppenIDs liegen sollen ....&lt;br /&gt;
&lt;br /&gt;
Für dieses Beispiel nehme ich für die userIDs den Bereich zwischen 1000 - 1499 und für die groupIDs den Bereich zwischen 1500 - 1999.&lt;br /&gt;
&lt;br /&gt;
Beginnen wir mit einer Gruppe: Wir markieren den Ordner &amp;quot;groups&amp;quot; und erstellen aus dem Template posixGroup einen neuen Eintrag der dann ungefähr so aussieht:&lt;br /&gt;
&lt;br /&gt;
Code:&lt;br /&gt;
&lt;br /&gt;
dn: cn=user, ou=groups, o=meineFirma, c=de&lt;br /&gt;
cn: user&lt;br /&gt;
gidNumber: 1500&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ähnlich sieht es bei dem Anlegen eines Users aus:&lt;br /&gt;
&lt;br /&gt;
Code:&lt;br /&gt;
&lt;br /&gt;
dn: uid=test, ou=users, o=meineFirma, c=de&lt;br /&gt;
sn: test&lt;br /&gt;
cn: test&lt;br /&gt;
uidNumber: 1000&lt;br /&gt;
gidNumber: 1500&lt;br /&gt;
loginShell: /bin/bash&lt;br /&gt;
homeDirectory: /home/test&lt;br /&gt;
userPassword: {SSHA}xyz1234567abc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das Passwort kann GQ erzeugen, jedoch mit dem Nachteil das es erst einmal im Klartext zu lesen ist (der algorytmus kann im Pulldown Menü eingestellt werden)&lt;br /&gt;
Beim Speichern wird das Passwort dann gecrypted.&lt;br /&gt;
Um dies im Zweifel nicht zu einem Risiko zu machen könnte man hier erst einmal ein Dummy-Passwort eintragen (z.B test) und dieses dann später auf der Konsole mit &amp;quot;passwd test&amp;quot; zu ändern.&lt;br /&gt;
&lt;br /&gt;
Da nun sowohl der User als auch seine primäre Gruppe in LDAP existiert kann sich dieser nun über LDAP authentifizieren ...&lt;br /&gt;
&lt;br /&gt;
Will man einen bestehenden Userstamm aus NIS oder der /etc/passwd einfach nur in LDAP übernehmen gibt es die Möglichkeit diese Arbeit von Migrations-Tools ausführen zu lassen.&lt;br /&gt;
Siehe z.B : http://www.padl.com/OSS/MigrationTools.html&lt;br /&gt;
_________________&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5467</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5467"/>
		<updated>2006-09-18T11:12:39Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Aufsetzen eines Openldap-Servers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
Wenn alle benötigten Pakete installiert sind (openldap2 und openldap2-Client und alle abhängigen)&lt;br /&gt;
kann man sich an die Arbeit machen das gelernte in die Tat umzusetzen.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei für den Server ist die /etc/openldap/slapd.conf , die bei der Installation schon einige Einträge und Kommentare enthält.&lt;br /&gt;
&lt;br /&gt;
Alle Möglichkeiten kann man in der Manpage von slapd.conf nachlesen.&lt;br /&gt;
&lt;br /&gt;
Da nur root im Normalfall Schreibrechte auf Konfigurationsdateien hat sollte man zum bearbeiten dann auch root-Rechte besitzen.&lt;br /&gt;
&lt;br /&gt;
Zum bearbeiten der Konfigurationsdateien selber kann man unter Linux jeden beliebigen Editor verwenden, bzw. den der einem persönlich am besten gefällt, auf der Konsole z.B vim, joe ... und unter KDE kate, kwrite usw.&lt;br /&gt;
&lt;br /&gt;
Wir öffnen nun die /etc/openldap/slapd.conf mit einem beliebigen Editor z.B auf einer root-Konsole und schauen uns ein wenig um.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:'''&lt;br /&gt;
&lt;br /&gt;
Um das LDAP Verzeichnis später gegen Missbrauch oder ähnlichem abzusichern gibt es in openldap z.B die Möglichkeit den Zugriff auf das Verzeichnis mit ACL' s einzuschränken (access ...)&lt;br /&gt;
&lt;br /&gt;
Diese Funktionen sind für die grundsätzliche Funktion nicht notwendig !!!&lt;br /&gt;
Dort verstecken sich einfach nur weitere Fehlerquellen die gerade zu Anfang einen Neuling in Sachen LDAP nur verwirren.&lt;br /&gt;
&lt;br /&gt;
Also sollten wir grundsätzlich erstmal nur Optionen aktivieren die für den Betrieb unbedingt notwendig sind, unser Server wird ja noch nicht produktiv eingesetzt.&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir uns nun um die eingebundenen Schemas kümmern. In den Schema Dateien finden wir die Definitionen der Objektklassen und der Attribute die wir brauchen um später überhaupt Daten speichern zu können.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig :'''&lt;br /&gt;
Hier ist darauf zu achten die richtige Reihenfolge für die Schema Dateien einzuhalten, da es vorkommen kann das ein Schema ein Attribut hinzufügen will, das eine bestimme ObjectClass erwartet, die aber nicht im gleichen Schema definiert ist. Dieses Schema muß also vorher schon eingebunden worden sein.&lt;br /&gt;
&lt;br /&gt;
Für unseren Zweck brauchen wir also erstmal die folgenden Schema-Dateien :&lt;br /&gt;
&lt;br /&gt;
 core.schema&lt;br /&gt;
 cosine.schema&lt;br /&gt;
 nis.schema&lt;br /&gt;
 inetorgperson.schema&lt;br /&gt;
 samba.schema (oder samba3.schema)&lt;br /&gt;
 misc.schema&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für die slapd.conf wäre nun:&lt;br /&gt;
&lt;br /&gt;
 include /etc/openldap/schema/core.schema&lt;br /&gt;
 include /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include /etc/openldap/schema/nis.schema&lt;br /&gt;
 include /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include /etc/openldap/schema/samba.schema&lt;br /&gt;
 include /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
Die hier aufgeführten Schema Dateien z.B samba.schema nehmen das Thema Anbindung von Samba an LDAP schon ein wenig vorweg. Wer aber Samba noch nicht installiert haben sollte, kann auch vorerst das samba.schema raus lassen, da sich diese Datei im samba-doc Paket befindet und auch zu einem späteren Zeitpunkt eingebunden werden kann.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlicher Abhandlung über die Schema Dateien können wir uns auch für später aufheben wenn wir uns schon ein wenig mit den Funktionen von Openldap beschäftigt haben.&lt;br /&gt;
&lt;br /&gt;
Die nächste Stelle an der wir eingreifen müssen ist der Eintrag &amp;quot;suffix&amp;quot;&lt;br /&gt;
Suffix stellt das Root-Verzeichnis dar bei dem unser LDAP Sever beginnen soll sein Verzeichnis aufzubauen.&lt;br /&gt;
Nach unserer Vorüberlegung weiter oben soll dies für unseren Fall also :&lt;br /&gt;
&lt;br /&gt;
 suffix &amp;quot;o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sein. Dies wird auch der Punkt sein den wir später unserem LDAP-Client mitteilen müssen damit er das LDAP Verzeichnis finden kann.&lt;br /&gt;
&lt;br /&gt;
Als nächstes müssen wir einen Benutzer anlegen der in jeder Situation alle Rechte auf dieses Verzeichnis besitzt also immer schreibend auf unser Verzeichnis zugreifen kann. Dies passiert bei dem Punkt &amp;quot;rootdn&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Bitte beachten :''' &lt;br /&gt;
Dieser User mit der rootdn hat wirklich &amp;quot;immer&amp;quot; alle Rechte im Verzeichnis, selbst mit ACLs kann man dies nicht beeinflussen. Selbst wenn man später einen gleich lautenden Eintrag im Verzeichnis erstellt und dort ein anderes Passwort setzt bleibt das rootpw immer noch gültig. Das macht auch Sinn da man zu Anfang ja auch erstmal Daten in das Verzeichniss bekommen muß.&lt;br /&gt;
&lt;br /&gt;
Wir wählen also hier eine Kurzform die später nicht so viel Tiparbeit erfordert :&lt;br /&gt;
&lt;br /&gt;
 rootdn &amp;quot;cn=admin, o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Es folgt nun das rootpw, dies ist das Passwort des Users das wir mit dem Eintrag rootdn festgelegt haben.&lt;br /&gt;
&lt;br /&gt;
Rein theoretisch könnten wir hier auch ein Klartextpasswort einsetzten doch so etwas sollte man gar nicht erst anfangen.&lt;br /&gt;
&lt;br /&gt;
Um nun ein verschlüsseltes Passwort zu erstellen, bedienen wir uns am einfachsten slappasswd&lt;br /&gt;
&lt;br /&gt;
Die Syntax ist recht einfach, hier ein Beispiel, das man auf der Konsole eingibt.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 slappasswd &amp;gt;&amp;gt; passwort.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Inhalt dieser Datei, passwort.txt enthält nach der zweimaligen Eingabe des passworters auf der Console nun z.B für das Passwort &amp;quot;test&amp;quot; folgendes :&lt;br /&gt;
&lt;br /&gt;
 {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
Hinweis : Das ... &amp;gt;&amp;gt; ... leitet die Ausgabe des Komandos slappasswd in die Datei passwort.txt um die vorher nicht existieren muß. Dieser doppelte Pfeil hängt die Daten hinten an die Datei an und belässt die Datei ansonsten so wie sie vorher war.&lt;br /&gt;
&lt;br /&gt;
Vergisst man aber einen Pfeil ( ... &amp;gt; ... ) dann wird die Datei, wenn sie vorhanden ist vollständig gelehrt bzw. gelöscht und dann neu angelegt !!!&lt;br /&gt;
Das heißt, es ist auch möglich die Ausgabe von slappasswd direkt in die slapd.conf umzuleiten. Bevor man diesen Befehl jedoch eingibt sollte man erst eine Sicherhietskopie der slapd.conf anlegen und dreimal hinschauen das man auch wirklich ...&amp;gt;&amp;gt; ...dort stehen hat !!!&lt;br /&gt;
&lt;br /&gt;
Und egal ob wir das Passwort auf der Konsole kodiert haben oder die Ausgabe in eine Datei oder direkt in die /etc/openldap/slapd.conf umgeleitet haben ,mit dem Vorsatz rootpw und dem erzeugten Hash dahinter sollte diese Zeile :&lt;br /&gt;
&lt;br /&gt;
 rootpw {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
nun in unserer /etc/openldap/slapd.conf stehen und haben damit nun eine grundsätzlich funktionierende Konfiguration erzeugt und können die Datei nun abspeichern und den LDAP Server starten.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 rcldap start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eventuell muß man nun noch einen Schreibfehler korrigieren aber wenn der Server läuft können wir beginnen das Verzeichnis mit Daten zu füllen.&lt;br /&gt;
&lt;br /&gt;
Die slapd.conf erlaubt es uns allerdings noch eine ganze Reihe von Feintunning vorzunehmen (siehe -&amp;gt; man slapd.conf )&lt;br /&gt;
&lt;br /&gt;
Also finalen Test ob LDAP läuft überprüft man erstens mit rcldap status ... dort sollte ein grünes &amp;quot;running&amp;quot; auftauchen.&lt;br /&gt;
&lt;br /&gt;
Auch kann man mit :&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 nmap localhost&lt;br /&gt;
&lt;br /&gt;
testen ob der Port 389 in Benutzung ist.&lt;br /&gt;
&lt;br /&gt;
Wenn man auf dem Rechner auf dem der Server läuft auch schon den Client eingerichtet hat (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
kann man auch mit ldapsearch -x die Verbindung mit dem LDAP Server testen.&lt;br /&gt;
&lt;br /&gt;
Wenn der Server nach den ersten beiden Punkten den Anschein macht zu laufen aber die Verbindung mit ldapsearch nicht klappt, sollte man erstens nachschauen ob die SuSEfirewall2 läuft und diese im Zweifel erst mal abschalten.&lt;br /&gt;
Hilft dies auch nicht sind die Einträge in der ldap.conf wohl falsch gesetzt (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
&lt;br /&gt;
Um diese Einstellungen erst einmal zu übergehen kann man ldapsearch ertsmal alle notwendigen Parameter mit auf den Weg geben:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 ldapsearch -x -h localhost -b o=meineFirma,c=de&lt;br /&gt;
 ... bzw.&lt;br /&gt;
 ldapsearch -x -h localhost -D cn=admin,o=meineFirma,c=de -W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bevor man weitergeht sollten zumindest die beiden ersten Test positiv laufen.&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5466</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5466"/>
		<updated>2006-09-18T11:11:07Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: /* Aufsetzen eines Openldap-Servers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
Wenn alle benötigten Pakete installiert sind (openldap2 und openldap2-Client und alle abhängigen)&lt;br /&gt;
kann man sich an die Arbeit machen das gelernte in die Tat umzusetzen.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei für den Server ist die /etc/openldap/slapd.conf , die bei der Installation schon einige Einträge und Kommentare enthält.&lt;br /&gt;
&lt;br /&gt;
Alle Möglichkeiten kann man in der Manpage von slapd.conf nachlesen.&lt;br /&gt;
&lt;br /&gt;
Da nur root im Normalfall Schreibrechte auf Konfigurationsdateien hat sollte man zum bearbeiten dann auch root-Rechte besitzen.&lt;br /&gt;
&lt;br /&gt;
Zum bearbeiten der Konfigurationsdateien selber kann man unter Linux jeden beliebigen Editor verwenden, bzw. den der einem persönlich am besten gefällt, auf der Konsole z.B vim, joe ... und unter KDE kate, kwrite usw.&lt;br /&gt;
&lt;br /&gt;
Wir öffnen nun die /etc/openldap/slapd.conf mit einem beliebigen Editor z.B auf einer root-Konsole und schauen uns ein wenig um.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:'''&lt;br /&gt;
&lt;br /&gt;
Um das LDAP Verzeichnis später gegen Missbrauch oder ähnlichem abzusichern gibt es in openldap z.B die Möglichkeit den Zugriff auf das Verzeichnis mit ACL' s einzuschränken (access ...)&lt;br /&gt;
&lt;br /&gt;
Diese Funktionen sind für die grundsätzliche Funktion nicht notwendig !!!&lt;br /&gt;
Dort verstecken sich einfach nur weitere Fehlerquellen die gerade zu Anfang einen Neuling in Sachen LDAP nur verwirren.&lt;br /&gt;
&lt;br /&gt;
Also sollten wir grundsätzlich erstmal nur Optionen aktivieren die für den Betrieb unbedingt notwendig sind, unser Server wird ja noch nicht produktiv eingesetzt.&lt;br /&gt;
&lt;br /&gt;
Als erstes müssen wir uns nun um die eingebundenen Schemas kümmern. In den Schema Dateien finden wir die Definitionen der Objektklassen und der Attribute die wir brauchen um später überhaupt Daten speichern zu können.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig :'''&lt;br /&gt;
Hier ist darauf zu achten die richtige Reihenfolge für die Schema Dateien einzuhalten, da es vorkommen kann das ein Schema ein Attribut hinzufügen will, das eine bestimme ObjectClass erwartet, die aber nicht im gleichen Schema definiert ist. Dieses Schema muß also vorher schon eingebunden worden sein.&lt;br /&gt;
&lt;br /&gt;
Für unseren Zweck brauchen wir also erstmal die folgenden Schema-Dateien :&lt;br /&gt;
&lt;br /&gt;
 core.schema&lt;br /&gt;
 cosine.schema&lt;br /&gt;
 nis.schema&lt;br /&gt;
 inetorgperson.schema&lt;br /&gt;
 samba.schema (oder samba3.schema)&lt;br /&gt;
 misc.schema&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel für die slapd.conf wäre nun:&lt;br /&gt;
&lt;br /&gt;
 include /etc/openldap/schema/core.schema&lt;br /&gt;
 include /etc/openldap/schema/cosine.schema&lt;br /&gt;
 include /etc/openldap/schema/nis.schema&lt;br /&gt;
 include /etc/openldap/schema/inetorgperson.schema&lt;br /&gt;
 include /etc/openldap/schema/samba.schema&lt;br /&gt;
 include /etc/openldap/schema/misc.schema&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
Die hier aufgeführten Schema Dateien z.B samba.schema nehmen das Thema Anbindung von Samba an LDAP schon ein wenig vorweg. Wer aber Samba noch nicht installiert haben sollte, kann auch vorerst das samba.schema raus lassen, da sich diese Datei im samba-doc Paket befindet und auch zu einem späteren Zeitpunkt eingebunden werden kann.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlicher Abhandlung über die Schema Dateien können wir uns auch für später aufheben wenn wir uns schon ein wenig mit den Funktionen von Openldap beschäftigt haben.&lt;br /&gt;
&lt;br /&gt;
Die nächste Stelle an der wir eingreifen müssen ist der Eintrag &amp;quot;suffix&amp;quot;&lt;br /&gt;
Suffix stellt das Root-Verzeichnis dar bei dem unser LDAP Sever beginnen soll sein Verzeichnis aufzubauen.&lt;br /&gt;
Nach unserer Vorüberlegung weiter oben soll dies für unseren Fall also :&lt;br /&gt;
&lt;br /&gt;
 suffix &amp;quot;o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sein. Dies wird auch der Punkt sein den wir später unserem LDAP-Client mitteilen müssen damit er das LDAP Verzeichnis finden kann.&lt;br /&gt;
&lt;br /&gt;
Als nächstes müssen wir einen Benutzer anlegen der in jeder Situation alle Rechte auf dieses Verzeichnis besitzt also immer schreibend auf unser Verzeichnis zugreifen kann. Dies passiert bei dem Punkt &amp;quot;rootdn&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Bitte beachten :''' &lt;br /&gt;
Dieser User mit der rootdn hat wirklich &amp;quot;immer&amp;quot; alle Rechte im Verzeichnis, selbst mit ACLs kann man dies nicht beeinflussen. Selbst wenn man später einen gleich lautenden Eintrag im Verzeichnis erstellt und dort ein anderes Passwort setzt bleibt das rootpw immer noch gültig. Das macht auch Sinn da man zu Anfang ja auch erstmal Daten in das Verzeichniss bekommen muß.&lt;br /&gt;
&lt;br /&gt;
Wir wählen also hier eine Kurzform die später nicht so viel Tiparbeit erfordert :&lt;br /&gt;
&lt;br /&gt;
 rootdn &amp;quot;cn=admin, o=meineFirma, c=de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Es folgt nun das rootpw, dies ist das Passwort des Users das wir mit dem Eintrag rootdn festgelegt haben.&lt;br /&gt;
&lt;br /&gt;
Rein theoretisch könnten wir hier auch ein Klartextpasswort einsetzten doch so etwas sollte man gar nicht erst anfangen.&lt;br /&gt;
&lt;br /&gt;
Um nun ein verschlüsseltes Passwort zu erstellen, bedienen wir uns am einfachsten slappasswd&lt;br /&gt;
&lt;br /&gt;
Die Syntax ist recht einfach, hier ein Beispiel, das man auf der Konsole eingibt.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 slappasswd &amp;gt;&amp;gt; passwort.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Inhalt dieser Datei, passwort.txt enthält nach der zweimaligen Eingabe des passworters auf der Console nun z.B für das Passwort &amp;quot;test&amp;quot; folgendes :&lt;br /&gt;
&lt;br /&gt;
 {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
Hinweis : Das ... &amp;gt;&amp;gt; ... leitet die Ausgabe des Komandos slappasswd in die Datei passwort.txt um die vorher nicht existieren muß. Dieser doppelte Pfeil hängt die Daten hinten an die Datei an und belässt die Datei ansonsten so wie sie vorher war.&lt;br /&gt;
&lt;br /&gt;
Vergisst man aber einen Pfeil ( ... &amp;gt; ... ) dann wird die Datei, wenn sie vorhanden ist vollständig gelehrt bzw. gelöscht und dann neu angelegt !!!&lt;br /&gt;
Das heißt, es ist auch möglich die Ausgabe von slappasswd direkt in die slapd.conf umzuleiten. Bevor man diesen Befehl jedoch eingibt sollte man erst eine Sicherhietskopie der slapd.conf anlegen und dreimal hinschauen das man auch wirklich ...&amp;gt;&amp;gt; ...dort stehen hat !!!&lt;br /&gt;
&lt;br /&gt;
Und egal ob wir das Passwort auf der Konsole kodiert haben oder die Ausgabe in eine Datei oder direkt in die /etc/openldap/slapd.conf umgeleitet haben ,mit dem Vorsatz rootpw und dem erzeugten Hash dahinter sollte diese Zeile :&lt;br /&gt;
&lt;br /&gt;
 rootpw {SSHA}w31rbfsjdOHw/2SJFGnQyVrcE5MKOS1C&lt;br /&gt;
&lt;br /&gt;
nun in unserer /etc/openldap/slapd.conf stehen und haben damit nun eine grundsätzlich funktionierende Konfiguration erzeugt und können die Datei nun abspeichern und den LDAP Server starten.&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
 rcldap start&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eventuell muß man nun noch einen Schreibfehler korrigieren aber wenn der Server läuft können wir beginnen das Verzeichnis mit Daten zu füllen.&lt;br /&gt;
&lt;br /&gt;
Die slapd.conf erlaubt es uns allerdings noch eine ganze Reihe von Feintunning vorzunehmen (siehe -&amp;gt; man slapd.conf )&lt;br /&gt;
&lt;br /&gt;
Also finalen Test ob LDAP läuft überprüft man erstens mit rcldap status ... dort sollte ein grünes &amp;quot;running&amp;quot; auftauchen.&lt;br /&gt;
&lt;br /&gt;
Auch kann man mit :&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 nmap localhost&lt;br /&gt;
&lt;br /&gt;
testen ob der Port 389 in Benutzung ist.&lt;br /&gt;
&lt;br /&gt;
Wenn man auf dem Rechner auf dem der Server läuft auch schon den Client eingerichtet hat (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
kann man auch mit ldapsearch -x die Verbindung mit dem LDAP Server testen.&lt;br /&gt;
&lt;br /&gt;
Wenn der Server nach den ersten beiden Punkten den Anschein macht zu laufen aber die Verbindung mit ldapsearch nicht klappt, sollte man erstens nachschauen ob die SuSEfirewall2 läuft und diese im Zweifel erst mal abschalten.&lt;br /&gt;
Hilft dies auch nicht sind die Einträge in der ldap.conf wohl falsch gesetzt (siehe unten -&amp;gt; Einrichten eines LDAP Client )&lt;br /&gt;
&lt;br /&gt;
Um diese Einstellungen erst einmal zu übergehen kann man ldapsearch ertsmal alle notwendigen Parameter mit auf den Weg geben:&lt;br /&gt;
&lt;br /&gt;
'''Code:'''&lt;br /&gt;
&lt;br /&gt;
 ldapsearch -x -h localhost -b o=meineFirma,c=de&lt;br /&gt;
 ... bzw.&lt;br /&gt;
 ldapsearch -x -h localhost -D cn=admin,o=meineFirma,c=de -W&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bevor man weitergeht sollten zumindest die beiden ersten Test positiv laufen.&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
	<entry>
		<id>https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5465</id>
		<title>OpenLDAP</title>
		<link rel="alternate" type="text/html" href="https://linupedia.org/wiki/mediawiki/index.php?title=OpenLDAP&amp;diff=5465"/>
		<updated>2006-09-18T11:04:48Z</updated>

		<summary type="html">&lt;p&gt;ThomasF: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UnderConstruction}}&lt;br /&gt;
&lt;br /&gt;
Also hier versuche ich jetzt mal eine Anleitung nach dem Motto &amp;quot; Quick and Dirty &amp;quot; zu erstellen.&lt;br /&gt;
&lt;br /&gt;
Ich bin der Ansicht, das man am besten mehr über die Materie lernt wenn man sie auch praktisch anwendet.&lt;br /&gt;
&lt;br /&gt;
Dies bedeutet aber, das man sich diesen LDAP Server am besten in einer Testumgebung aufsetzt, &lt;br /&gt;
da hier am Anfang noch keine Absicherung der Verbindungen, ACLs usw. eingesetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
=== Theorie ===&lt;br /&gt;
&lt;br /&gt;
LDAP ist ein Verzeichnisdienst, eine Datenbank in der wir alle möglichen Daten speichern können.&lt;br /&gt;
&lt;br /&gt;
Ein LDAP Verzeichnis ist für lesenden Zugriff optimiert, somit sollten sich die Daten nicht so häufig ändern müssen.&lt;br /&gt;
 &lt;br /&gt;
Typische Anwendungen sind z.B. ein Adressbuch oder auch die Benutzerauthentifizierung.&lt;br /&gt;
&lt;br /&gt;
Die Struktur in einem LDAP Verzeichnis ist eine hierarchische Struktur, also eine Art Baum, der in einem Punkt beginnt (Wurzelverzeichnis) und sich von hier aus immer weiter verzweigt.&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel das hier zum Beispiel jeder kennen sollte, ist das Filesystem auf einer Festplatte, die Festplatte oder eine Partition auf dieser hat einen Mountpoint oder Laufwerksbuchstaben, dies stellt das Wurzelverzeichnis dar.&lt;br /&gt;
Unterhalb der Wurzel können nun Dateien und Ordner existieren. In den Ordnern können nun wiederum Dateien und Ordner existieren und so weiter und so fort ....&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vergleich ist zum Beispiel eine Internet Domain, denn bei einer Domain wird die vollständige Adresse von rechts nach links gebildet. &lt;br /&gt;
Ganz rechts steht die Länderdomain, links davor der Domainname und noch davor dann der Zielrechner oder eine beliebige weitere Unterteilung.&lt;br /&gt;
&lt;br /&gt;
Auch ein LDAP Verzeichnis baut sich so auf, es gibt Container-Objekte (Ordner) und es gibt Blattobjekte (Dateien), wobei Containerobjekte weitere Container-Objekte oder Blattobjekte enthalten können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel ist es nun die Struktur eines Unternehmens oder einfach eines Netzwerkes in dem LDAP Verzeichnis abzubilden und so eine sehr übersichtliche Form zu erhalten in der die Daten abgespeichert werden können.&lt;br /&gt;
&lt;br /&gt;
Diese Daten können nun alles mögliche sein, angefangen von Adressen oder Telefonnummern bishin zu Passwörtern und sogar Binärdaten wie z.B Fotos.&lt;br /&gt;
&lt;br /&gt;
Daten können jedoch nicht beliebig irgendwo hin gespeichert werden, sie müssen wie in jeder Datenbank mit einem Begriff verbunden sein der den Inhalt dieser Speicherstelle sozusagen beschreibt und auch eindeutig identifiziert.&lt;br /&gt;
&lt;br /&gt;
Diese Beschreibung zusammen nennt man bei LDAP Attribut. Attribute müssen bevor man sie zur Speicherung verwenden kann erst einmal definiert werden. Bei der Definition werden mehrere Attribute die man später erfahrungsgemäß auch zusammen verwendet, in sogenannten Objektklassen zusammen gefasst.&lt;br /&gt;
Die Objektklassen wiederum werden, je nach ihrem Einsatzzweck, auch wieder zusammen gefasst in sogenannten Schemen.&lt;br /&gt;
&lt;br /&gt;
Sowohl Schemen, Objektklassen als auch Attribute haben in LDAP meist aussagekräftige Bezeichnungen, so das man im LDAP Verzeichnis schnell auf die gesuchten Daten zugreifen kann.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :'''&lt;br /&gt;
&lt;br /&gt;
 Keine Bange vor den Abkürzungen und Fachausdrücken, wenn man erst ein wenig Übung im Umgang mit diesen entwickelt hat, benutzt man diese wie selbstverständlich.&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Containerobjekte :''' &lt;br /&gt;
 c : Country&lt;br /&gt;
 o : Organization&lt;br /&gt;
 ou : Organizational Unit&lt;br /&gt;
&lt;br /&gt;
Diese Container bauen aufeinander auf, will heißen das das County Objekt nur direkt unter dem Root-Verzeichnis vorkommen kann, aber nicht unterhalb von o oder ou.&lt;br /&gt;
&lt;br /&gt;
In der Realität z. B. in einem Unternehmen bedeutet dies, das direkt unter dem Root-Container, dem Startpunkt des Verzeichnisses sich die Länder Objekte befinden, da ein großes internationales Unternehmen durchaus Firmen in verschiedenen Länder besitzen kann die in einem einzigen Verzeichnis verwaltet werden sollen.&lt;br /&gt;
Es macht im Normalfall jedoch keinen Sinn zuerst das Verzeichnis in Organizations zu unterteilen und dann erst Firmenstandorte in verschieden Ländern zu organisieren.&lt;br /&gt;
&lt;br /&gt;
Genauso sieht es mit den Organization Objekt aus, dieses kann nur unterhalb eines Country Objekts vorkommen, falls dieses nicht existiert unterhalb des Root-Objekts, aber niemals unterhalb eines ou Objekts.&lt;br /&gt;
&lt;br /&gt;
Auch dies macht in der Praxis Sinn, da in einem Unternehmen ja durchaus mehrere Abteilungen existieren können (Organizational Unit / Verwaltungseinheit) aber unterhalb einer Abteilung liegt im Normalfall keine Organisation, da diese ja viel sinnvoller parallel zu den anderen Organizations angelegt werden kann.&lt;br /&gt;
&lt;br /&gt;
Und schließlich das Organizational Unit Objekt das nur unterhalb eines Organization Objekts vorkommen kann aber beliebig viele weitere Organizational Unit Objekte enthalten kann.&lt;br /&gt;
&lt;br /&gt;
Das Organzational Unit Objekt ist also nun das Container Objekt mit dem ein Unternehmen beliebig weiter verschachtelt werden kann&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Blattobjekte :''' &lt;br /&gt;
&lt;br /&gt;
 cn : Common Name&lt;br /&gt;
 uid: UserID&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
'''Beispiele für Attribute:''' &lt;br /&gt;
&lt;br /&gt;
 userPassword&lt;br /&gt;
 homeDirectory&lt;br /&gt;
 loginShell&lt;br /&gt;
 telephoneNumber&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Zu den Blatt Objekten soll vielleicht noch gesagt sein, das darunter auch wieder Organizational Units angelegt werden könnten , um z.B. Adressen von einem speziellen User verwalten zu können.&lt;br /&gt;
Dies sollte aber vermieden werden, da dies schnell unübersichtlich werden kann und nicht dem Standard entspricht, auch wenn es praktisch funktioniert.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Wissen können wir nun anfangen unseren ersten Verzeichnisbaum zu planen.&lt;br /&gt;
&lt;br /&gt;
Welche Objektklassen und Attribute es alles gibt ist zur Zeit noch nicht so wichtig, da man diese mit der Zeit und je nach Einsatzzweck des Verzeichnisses kennen lernen wird.&lt;br /&gt;
&lt;br /&gt;
== Planung ==&lt;br /&gt;
&lt;br /&gt;
Die Planung will gut überdacht sein da dieser sich nachträglich nur ändern lässt indem man den ganzen Baum neu aufbaut, &lt;br /&gt;
also je nach Größe des Verzeichnisses ist das sehr viel Arbeit.&lt;br /&gt;
&lt;br /&gt;
Als erstes brauchen wir ein Root-Verzeichnis. Hierfür bietet sich der Name des Unternehmens an, Privatpersonen oder Betreiber kleiner SOHO Netze können aber praktisch den Namen frei wählen.&lt;br /&gt;
&lt;br /&gt;
Ich wähle hier jetzt die allgemeine Form meineFirma und gehe davon aus das wir hier in Deutschland bleiben.&lt;br /&gt;
&lt;br /&gt;
'''Hinweis :''' &lt;br /&gt;
 Anstatt o=meineFirma ,c=de sollte jeder für sich eine entsprechende Bezeichnung für das Root-Objekt wählen&lt;br /&gt;
 und dann bei dieser auch bleiben !!!&lt;br /&gt;
 Jeder spätere Eintrag im Verzeichnis endet immer mit diesem Root-Objekt. &lt;br /&gt;
 Selbst die kleinste Abweichung in der Schreibweise wird dann einen Fehler erzeugen, der schwer zu finden ist !!!&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel mit der Festplatte ist hier nicht ganz passend da die Wurzel ja immer ganz links steht.&lt;br /&gt;
In diesem Fall ist der gesamte Ausdruck &amp;quot;o=meineFirma ,c=de&amp;quot; die Wurzel (basedn)&lt;br /&gt;
&lt;br /&gt;
Besser passt in diesem Fall der Vergleich mit einer Internet-Domain. &lt;br /&gt;
Wenn man eine Domain registriert die z.B. meineFirma.de heißt, kann man in dieser Domain sozusagen machen was man will, solange die richtige Domain am Ende steht. Würde man hier einen Schreibfehler machen wäre das so, als wolle man auf die Domain von jemand anderen zugreifen um dort etwas zu verändern.&lt;br /&gt;
&lt;br /&gt;
Gut, also das Root-Objekt hat also in unserem Beispiel die Form :&lt;br /&gt;
&lt;br /&gt;
 dn: o=meineFirma, c=de&lt;br /&gt;
&lt;br /&gt;
Wenn man schon andere Doku gelesen hat findet man evtl. auch die Form : dc=meineFirma,dc=de&lt;br /&gt;
&lt;br /&gt;
dc steht für Domain Component und will damit aussagen das diese Firma auch eine Domain mit diesem Namen besitzt.&lt;br /&gt;
Wenn jemand jedoch plant seine DNS oder DHCP Einträge für sein Netz auch in LDAP zu speichern ist unter Umständen die Schreibweise mit dc zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Diese Einsatzmöglichkeit ist für uns hier noch uninteressant und selbst wenn es auch mit dc geht, &lt;br /&gt;
ist es meiner Meinung nach übersichtlicher mit den Attributen c, o, ou usw. zu arbeiten.&lt;br /&gt;
Zumal auch ohne Verwendung von &amp;quot;dc&amp;quot; der Aufbau eines DNS über LDAP möglich ist.&lt;br /&gt;
&lt;br /&gt;
Der nächste Schritt ist zu überlegen welche Daten gespeichert werden sollen.&lt;br /&gt;
Die meisten Linux-User werden wie zu Anfang erwähnt, LDAP zur Benutzerauthentifizierung nutzen wollen. &lt;br /&gt;
Und in diesem Zusammenhang wahrscheinlich sowohl Linux- und Samba-User.&lt;br /&gt;
&lt;br /&gt;
Um die Übersicht zu bewahren, speichert man deshalb nach dem Motto &amp;quot;Gleich und gleich gesellt sich gerne&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Die erste Frage lautet also kann man die User in verschiedene Gruppen teilen die Organisatorisch zusammen gehören ?&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel hierfür wäre die Unterteilung in Einkauf, Verkauf und Versand.&lt;br /&gt;
Dieser Schritt macht in den meisten Fällen jedoch nur ab einer bestimmen Unternehmensgröße Sinn, &lt;br /&gt;
sodass wir hier diesen Fall nicht berücksichtigen.&lt;br /&gt;
&lt;br /&gt;
Die nächste Unterteilung könnte dann sinnvollerweise in Users, Groups und Workstations gemacht werden.&lt;br /&gt;
&lt;br /&gt;
Hierfür würden wir drei ou Containerobjekte anlegen in denen dann später die jeweiligen Daten gespeichert werden :&lt;br /&gt;
&lt;br /&gt;
 ou = Users&lt;br /&gt;
 ou = Groups&lt;br /&gt;
 ou = Workstations&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen eines Openldap-Servers ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Linux Authentifikation ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Einrichten eines LDAP Client ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LDAP und SAMBA ==&lt;br /&gt;
&lt;br /&gt;
[[LDAP]]&lt;br /&gt;
[[Category:LDAP]]&lt;/div&gt;</summary>
		<author><name>ThomasF</name></author>
		
	</entry>
</feed>