In fast allen Betrieben werden heutzutage heterogene Netzwerke betrieben. Als heterogene Umgebungen werden Netzwerkumgebungen bezeichnet, in denen Rechner mit verschiedenen Betriebsystemen kooperativ eingesetzt werden. Diese Architektur birgt große Probleme im Bereich der Benutzerverwaltung. Es ist standardmäßig nicht vorgesehen alle Benutzerkonten, die in einem heterogenen Netzwerk vorkommen, zentral über eine Einheit zu verwalten.
Um dies dennoch realisieren zu können wurde im Rahmen der Untersuchung eine heterogene Testumgebung aufgebaut. Um dabei mit einem Minimum an Ressourcen auszukommen, wurde diese Testumgebung mit virtuellen Systemen aufgebaut. Nachdem ein Überblick über die Dienste „OpenLDAP“, „Active Directory“ und „Network Information Service“ vorhanden war, wurde der Microsoft Active Directory Server (ADS) als zentraler Verzeichnisserver gewählt. Basierend auf diesem Server wurde ein plattformübergreifendes Benutzerverwaltungssystem entwickelt.
Um während der Laufzeit dieser Umgebung eine Möglichkeit zu bieten, sämtliche Benutzer des heterogenen Umfelds von jedem beliebigen System aus zu verwalten wurde eine Web – basierte Oberfläche geplant, konzipiert und umgesetzt. Diese plattformunabhängige Oberfläche ermöglicht die Administration von gemischten Benutzerkonten (Benutzerkonten die gleichermaßen auf Windows – und Unix – Rechnern funktionieren), welche auf dem Active Directory Server abgelegt werden.
Glossar
Abbildung in dieser Leseprobe nicht enthalten
Inhalt
1 Einleitung
1.1 Problem in Unternehmensnetzwerken
1.1.1 Breiter Einsatz von EDV
1.1.2 Einsatz heterogener Betriebssystemwelten
1.1.3 Nachteile heterogener Betriebssystemwelten
1.2 Einheitliche Benutzerverwaltung: Die Herausforderung
1.3 Lösungsvorschlag
1.3.1 Plattformübergreifende Lösung
1.3.2 Plattforumunabhängige Lösung
1.4 Vorgehensweise
2 Grundlagen der Benutzerverwaltung
2.1 Begriffe
2.1.1 Single Sign On (SSO)
2.2 Protokolle und Standards
2.2.1 Directory Access Protokoll - X.500
2.2.2 ISO / OSI Referenzmodell
2.2.3 Lightweight Directory Access Protokoll - X.509
2.2.3.1 Distinguished Name - DN
2.2.3.2 Attribute
2.2.3.3 LDAP Schema
2.2.4 Kerberos
2.3 Dienste
2.3.1 Verzeichnisdienst
2.3.2 Microsoft Active Directory
2.3.2.1 Microsoft Management Console - MMC
2.3.2.2 Passwortprotokolle und Techniken
2.3.2.3 Namensauflösung
2.3.3 Domain Name Service - DNS
2.3.4 Internet Information Service - IIS
2.3.5 Hypertext Präprozessor- PHP
2.4 Unix
2.4.1 lokale Benutzerverwaltung
2.4.2 Name Service Switch - NSS
2.4.3 Pluggable Authentication Module - PAM
3 Projektrelevante Software
3.1 Betriebssysteme
3.1.1 Microsoft Windows Server
3.1.2 Unix - basiertes System
3.1.3 Microsoft Windows Client
3.2 Verzeichnisdienste
3.2.1 Network Information Service - NIS
3.2.2 OpenLDAP
3.2.3 Microsoft Active Directory
3.3 Vintela Authentication Software - VAS
3.4 Testen der Lösung
3.4.1 Verbindung zu einem Windows System
3.4.2 Verbindung zu einem Unix - basierten System
4 Testumgebung
4.1 Hardware
4.2 Virtualisierung
4.2.1 VMware ESX Server
4.3 Setup der Testsysteme
4.4 Vernetzung der Testsysteme
4.5 Installation der Server - Komponenten
5 Plattformübergreifende Benutzerverwaltung
5.2 Vorgaben zur Umsetzung
5.2.1 Unix - Maschinenkonto in MS AD
5.2.2 Unix - Benutzer in MS AD
5.3 Umsetzung: Erstellung des Maschinenkontos
5.3.1 Ä nderung am Windows Server
5.3.2 Ä nderungen am Unix - basierten Server
5.3.2.1 Installierte Zusatzsoftware
5.3.2.2 Konfiguration der installierten Komponenten
5.3.2.3 Ü bersicht und Funktionsweise
5.3.3 Einbindung in das Active Directory
5.4 Umsetzung: Erstellung des Benutzerkontos
5.4.1 Problem der Attributnutzung
5.4.2 Untersuchung der Windows Attribute
5.4.2.1 Wichtige Windows Attribute
5.4.3 Untersuchung der Unix Attribute
5.4.3.1 Relevante Unix Attribute
5.4.4 Schemaerweiterung
5.5 Test der plattformübergreifenden Benutzerverwaltungslösung
6 Plattformunabhängige Administration der Benutzerverwaltungslösung
6.1 Notwendigkeit der Eigenentwicklung
6.1.1 Benötigter Funktionsumfang
6.1.2 Vorhandene Software
6.2 Planung des Verwaltungstools
6.2.1 Wahl der Programmiersprache
6.2.2 Architektur der geplanten Lösung
6.2.3 Basisfunktionen der php_ldap.dll Bibliothek
6.2.4 Entwicklungsumgebung
6.3 Konzeption des Verwaltungstools
6.3.1 Design der Benutzeroberfläche
6.4 Probleme bei der Umsetzung
6.4.1 Problem mit Microsofts Sicherheitsstrategie
6.4.2 Vorgaben zur Nutzung von PHP_LDAP mit Active Directory
6.4.3 Probleme mit Dokumentation und Ressourcen
6.5 Ergebnis
6.5.1 Layout der Oberfläche
6.5.2 Funktionsübersicht
6.5.2.1 Kontoinformationen
6.5.2.2 Konto hinzufügen
6.5.2.3 Konto verändern
6.5.2.4 Konto löschen
6.5.2.5 Konto einer Gruppe zuordnen
6.5.2.6 Passwort setzen
6.5.2.7 Konto aktivieren / deaktivieren
7 Abschlussbetrachtung
7.1 Erreichter Funktionsumfang
7.2 Technischer Überblick
8 Verzeichnis
8.1 Quellen
8.1.1 Bücher
8.1.2 Microsoft Knowledge Base / TechNet Artikel
8.1.3 Webseiten
8.1.4 Foren
8.1.5 Usenet
8.2 Abbildungen
1 Einleitung
1.1 Problem in Unternehmensnetzwerken
1.1.1 Breiter Einsatz von EDV
In einem modernen Betrieb gibt es eine Vielzahl von Aufgaben, die mit Hilfe elektronischer Datenverarbeitung erledigt werden. Bei Aufgaben wie Datenverwaltung, interne Kommunikation und Entwicklung werden verschiedenste Software - Lösungen eingesetzt. Um diese betreiben zu können, müssen in der Praxis verschiedene Betriebssysteme eingesetzt werden, da solche Anwendungen in der Regel für ein bestimmtes Betriebssystem optimiert, und nur auf diesem lauffähig sind. Es gibt nur wenig speziell entwickelte sog. „ plattformübergreifende “ Software, die auf verschiedenen Betriebssystemen einsetzbar ist.
1.1.2 Einsatz heterogener Betriebssystemwelten
Um eine Tendenz festzustellen, welche Betriebssysteme am häufigsten eingesetzt werden gibt es eine Studieüber IT - Budgets in Bezug auf Betriebssysteme. Diese ergibt, dass die Kombination aus Windows Systemen und Unix - basierten Systemen den gr öß ten Teil aller verwendeten Betriebssysteme bildet.
In einer Online-Befragung wurden zwischen Dezember 2003 und Januar 2004 insgesamt 496 IT - Manager und IT - Verantwortliche aus deutschen Unternehmen zu ihren Investitionsplänen für das laufende Jahr interviewt. Die Umfrage wurde von der „ Informationweek “ durchgeführt. Die Analyse der Daten erfolgte mit Unterstützung von Mummert Consulting. Die Studie ist unter www.mummert- consulting.de erhältlich.
Investitionspläne für Betriebssysteme: (Mehrfachnennungen möglich):
1. Windows 2000 (82,5 Prozent)
2. Windows XP (70,0 Prozent)
3. Windows NT (52,8 Prozent)
4. Linux (51,4 Prozent)
5. Windows 98 (33,3 Prozent)
6. Unix (29,2 Prozent)
7. Windows Server 2003 (26,6 Prozent)
8. Novell Netware (20,4 Prozent)
9. Apple (Mac OS) (8,3 Prozent)
10. Windows 95 (7,9 Prozent)
11. Sonstige (14,5 Prozent)
Werden Windows und Unix - basierte Systeme in einem gemeinsamen Netzwerk eingesetzt, spricht man von einem gemischten oder heterogenen Netzwerk.
1.1.3 Nachteile heterogener Betriebssystemwelten
In vielen Firmen, die ein heterogenes Netzwerk betreiben, ist eine Aufspaltung hinsichtlich der Benutzerverwaltung zu erkennen. Es gibt auf der einen Seite Windows - Rechner, mit einem eigenem Benutzerverwaltungsdienst und oftmals auch einer eigenen Abteilung für die Administration. Auf der anderen Seite stehen die Unix - basierten Systeme mit einem separaten Benutzerverwaltungsdienst. Diese Art der Benutzerverwaltung ist zwar einfach zu implementieren, zieht aber einige Nachteile nach sich.
- Für Mitarbeiter, die auf beiden Systemen arbeiten wollen, müssen zwei separate Benutzerkonten angelegt werden.
- Mitarbeiter, die nur auf Windows Systemen arbeiten, haben keinen Zugriff auf Unix - Ressourcen.
- Mitarbeiter, die beide Systeme benutzen, müssen bei einer Passwortänderung diese Ä nderung auf beiden Systemen durchführen.
- Der Einsatz einer firmenweiten Groupware - Lösung lässt sich nicht an ein zentrales Benutzerverzeichnis koppeln.
- Die Daten der Mitarbeiter, die beide Systeme benutzen, werden doppelt gehalten, was nicht nur den doppelten Speicherplatz verbraucht sondern auch Konsistenzprobleme mit sich bringt.
1.2 Einheitliche Benutzerverwaltung: Die Herausforderung
Der Herausforderung ist die Implementierung eines zentralen Benutzerverwaltungsdienstes, der sämtliche Benutzerkonten verwalten kann. Damit dieser in einem heterogenen Umfeld die Benutzer der Unix - basierten und Windows Systeme verwalten kann, ist eine tiefgreifende Konfigurationsarbeit notwendig. Mit einem solchen System ist jedoch die erste zentrale Vorgabe einer plattformübergreifenden Lösung erfüllt Das Problem ist, dass derlei Dienste für spezielle Plattformen optimiert sind und dass es - normalerweise - nicht möglich ist, für Rechner mit verschiedenen Betriebssystemen Benutzerkonten einzurichten. Es muss also ein Weg gefunden werden, diese Rechner so zu konfigurieren, dass sie von einem Dienst verwaltet werden können. Außerdem müssen alle verschiedenen Typen von Benutzerkonten unterstützt werden.
Des weiteren muss es möglich sein, diese Konten von verschiedenen Betriebssystemen aus zu verwalten. Es soll die Option bestehen, von jedem beliebigen System aus die Benutzer zu verwalten, damit ein Administrator auf seinem bevorzugtem System arbeiten kann. Die zweite zentrale Vorgabe ist somit die Umsetzung einer plattformunabhängigen Benutzerverwaltungsoberfl]äche.
1.3 Lösungsvorschlag
1.3.1 Plattformübergreifende Lösung
Um eine plattformübergreifende Benutzerverwaltungslösung umzusetzen muss ein zentraler Verzeichnisserver aufgesetzt werden, der alle nötigen technischen Möglichkeiten bietet, um Windows und Unix - basierte Systeme zu verwalten, wofür diese Systeme in den Verzeichnisserver eingebunden werden müssen. Dabei ist es möglicherweise notwendig, das Windows - oder Unix - System mit notwendiger Zusatzsoftware auszustatten, die eine Einbindung ermöglicht.
1.3.2 Plattforumunabhängige Lösung
Eine Möglichkeit, eine spezielle Serveraufgabe plattformunabhängig zu administrieren, ist die Nutzung einer Web - basierten Lösung. Durch die Implementierung einer Web - basierten Oberfläche zur Administration dieses Verzeichnisdienstes wäre Vorgabe der plattformunabhängigen Administration erfüllt.
1.4 Vorgehensweise
Um eine Umsetzung dieser Lösung zu ermöglichen, muss eine Testumgebung aufgebaut werden. In dieser Testumgebung sollen die notwendigen Server und Clients installiert und vernetzt werden. Der Aufbau der Testumgebung umfasst die Wahl der Server - Betriebssysteme, die Wahl der Client - Betriebssysteme und auch die Wahl der möglicherweise benötigten Zusatzsoftware für die Clients. In einem weiteren Schritt sollen alle notwendigen Systeme aufgesetzt werden und mit der notwendigen Zusatzsoftware ausgestattet werden.
In dieser heterogenen Testumgebung wird ein zentraler Verzeichnisserver installiert, in dem die vorhandenen Windows und Unix - basierten Systeme eingebunden werden. Es muss ein Verzeichnisdienst gewählt werden, der alle benötigten Techniken und Protokolle für eine Umsetzung der plattformübergreifenden Lösung unterstützt.
Im nächsten Schritt wird geklärt, welche Modifikationen an diesem Verzeichnisserver und an den Client - Rechnern notwendig sind, um Windows - und Unix - Benutzerkonten anlegen zu können. Fener wird untersucht, ob mit den gegebenen Mitteln alle benötigten Benutzer - und Gruppenkonten angelegt werden können.
Um die Vorgabe der plattformunabhängigen Administration dieser Lösung zu erfüllen, wird im letzten Schritt eine Web - basierte Oberfläche konzipiert und umgesetzt, die es ermöglicht die Benutzerkonten auf dem Verzeichnisserver zu verwalten.
2 Grundlagen der Benutzerverwaltung
2.1 Begriffe
2.1.1 Single Sign On (SSO)
Der Begriff „ Single Sign On “ bedeutet „ einmalige Anmeldung “ und beschreibt den Vorgang der einmaligen Authentifizierung eines Benutzers für die Benutzung von verschiedenen Anwendungen und Rechnern. Der Benutzer muss sich nur einmal an einem Rechner anmelden und sein Passwort angeben. Die Authentifizierung bei weiteren Rechnern und Anwendungen wird von einem Mechanismus erledigt, der in der Lage ist, ohne weitere Sicherheitsabfragen beim Benutzer, dessen Authentizität zu garantieren.
2.2 Protokolle und Standards
2.2.1 Directory Access Protokoll - X.500
Der X.500 Standard wurde vom ITU-T entwickelt und beschreibt den Aufbau eines Verzeichnisdienstes. Dabei handelt es sich um einen sehr umfangreichen Standard, der eine Implementierungüber den gesamten ISO/OSI - Stapel voraussetzt. Der X.500 Standard hat sich nicht durchgesetzt, da es sehr aufwendig und rechenintensiv ist, diesen zu implementieren.
2.2.2 ISO / OSI Referenzmodell
Das ISO/OSI - Referenzmodell ist die Grundlage für alle Netzwerkprotokolle, die derzeit eingesetzt werden. Die verschiedenen Protokolle werden ihren Aufgaben entsprechend in sieben Schichten unterteilt. Dabei nimmt der Abstraktionsgrad von Schicht zu Schicht zu. Jede der Schichten ist so konzipiert, dass sie die Aufgaben, die ihr zugeordnet sind, unabhängig von den anderen Schichten ausführen kann.
Die Schichten werden folgendermaßen betitelt:
- Anwendungsschicht, Schicht 7, die oberste der sieben hierarchischen Schichten.
- Darstellungsschicht, Schicht 6.
- Sitzungsschicht, Schicht 5
- Transportschicht, Schicht 4
- Netzwerkschicht, Schicht 3
- Sicherungsschicht, Schicht 2
- Physikalische Schicht, Schicht 1, die niedrigste Schicht.
Das Transport Control Protocol (TCP) beispielsweise liegt auf Schicht vier dieses Modells. Es ist ein Teil des Ethernet - Standards und somit weit verbreitet.
2.2.3 Lightweight Directory Access Protokoll - X.509
Das Lightweight Directory Access Protokoll - LDAP ist ein Protokoll, das eine Schnittstelle für den Zugriff auf einen hierarchischen Verzeichnisdienst beschreibt. Dabei erlaubt es das Eintragen, Modifizieren und Löschen eines Eintrags. Es ist nach dem Standard X.509 des IETF aufgebaut. Das LDAP Protokoll hat sich aus dem sehr komplexen Standard X.500 entwickelt und wird als „ Lightweight “ bezeichnet, weil es nur auf das sehr weit verbreitete TCP/IP - Modell aufsetzt und somit eine einfachere und schlankere Lösung darstellt als der X.500 Standard.
Basierend auf diesem Protokoll haben viele Firmen und Entwicklergruppen Verzeichnisdienste implementiert, die ihre Daten in einer relationalen Datenbank halten. Die Begriffe „ LDAP - Verzeichnisserver “ oder „ LDAP - Verzeichnisdienst “ sind etwas verwirrend, da LDAP selbst keine Daten speichern oder verwalten kann, sondern nur eine Schnittstelle darstellt. Mittlerweile sind aber Verzeichnisdienste so fest mit dem LDAP - Protokoll gekoppelt, dass die oben genannten Begriff sich dennoch langsam durchsetzen.
Jeder LDAP - basierte Verzeichnisdienst unterliegt einer fest definierten hierarchischen Struktur, welche in den LDAP - Schemata fest definiert ist. Jedes Schema definiert wiederum Objektklassen, die die Typen der einzelnen Einträge beschreiben. Für jeden Eintrag wird sein erlaubtes Attribut - Set durch genau eine Klasse definiert und mit einem eindeutigem Namen versehen, dem „ Distinguished Name “ - DN.
2.2.3.1 Distinguished Name - DN
Jedem Eintrag (Objekt) wird ein eindeutiger DN zugewiesen, welcher sich aus dem hierarchischen Pfad des Objekts und aus dem Objekt selbst zusammensetzt. Als Wurzel - Objekt wird dabei die Wurzel - Domäne des Verzeichnisservers gewählt und ausgehend von dieser Wurzel der gesamte Pfad angegeben. Beispielsweise hat der Benutzer „ Ahlfons “ , der im Container „ Users “ auf einem Server mit dem Wurzel - Objekt „ Domain.com “ folgenden DN:
CN=Ahlfons,CN=Users,DC=Domain,DC=com
Die vorangesellten Kürzel (CN, DN, DC) sind Abkürzungen der im Verzeichnisdienst vorkommenden Attribute.
2.2.3.2 Attribute
In jedem Objekt können verschiedene Informationen abgelegt werden. Bei einem Benutzerkonto beispielsweise können sich Daten wie die Telefonnummer, die Adresse und die Email - Adresse des Benutzers speichern lassen. Auch Systemangaben wie „ Heimat - Verzeichnis “ oder „ Gruppen - Nummer “ . Dabei muss jedoch für jede mögliche Information ein Attribut existieren.
Jedes mögliche Attribut hat einen bestimmten Typ und einen oder mehrere Werte. Dabei wird jedes Attribut mit einem einprägsamen Kürzel wie beispielsweise CN für „ Common Name “ , DC für „ Domain Controller “ oder O für „ Organisation “ beschrieben. Die möglichen Werte der verschiedenen Attribute und die möglichen Attribute selbst werden im LDAP Schema definiert.
2.2.3.3 LDAP Schema
Im LDAP Schema werden die Hierarchie des LDAP - Servers und die Attribute der alle möglichen Objekte definiert.
Da das LDAP - Protokoll plattformübergreifend verfügbar ist, gibt es eine Vielzahl an verschiedenen Implementierungen, die alle eigene Schemata verwenden. Die Vorstellung eines globalen, allumfassenden Verzeichnisdienstes ist somit nicht realistisch. LDAP - Server werden als zentraler Verzeichnisdienst für verschiedene Zwecke in verschiedenen Gr öß en eingesetzt, die Objekt-Hierarchie bleibt aber in der Regel auf eine Organisation beschränkt.
2.2.4 Kerberos
Das Kerberos Protokoll wurde vorüber einem Jahrzehnt im MIT (Massachusetts Institute of Technology) entwickelt. Die Hauptaufgabe von Kerberos ist es, in ungesicherten Netzwerken mit gesicherten Rechnern eine vertrauenswürdige Authentifizierung zu bieten. Dabei gibt es drei Parteien: Den Client, den Server und den Kerberos - Server. Bei dem Kerberos System wird jede dieser drei Parteien gegenüber der anderen authentifiziert.
Der Kerberos - Server vergibt sogenannte „ Tickets “ die Clients für weitere Authentifizierungsschritte nutzen können, weswegen wird der Kerberos - Server als „ Key Distribution Center “ KDC bezeichnet wird. Ein KDC hat die Aufgabe, vertrauenswürdige Schlüssel (Tickets) zu verteilen. Damit ein KDC vertrauenswürdige Schlüssel ausstellen kann muss er von einer höheren Instanz als vertrauenswürdig eingestuft, oder selbst als höchste Instanz deklariert werden.
Jeder Client, derüber einen Kerberos - Dienst authentifiziert werden muss, wird von einem sogenannten „ User Principal Name “ - UPN identifiziert. Dieser UPN besteht auf dem Benutzernamen und der Domäne des ADS, getrennt durch ein „ @ “ . Der User Principal Name ist somit die Email - Adresse des Benutzers.
Am Anfang einer Sitzung muss der Client während der Anmeldung ein solches Ticket anfordern. Um diese zu bekommen muss er einmalig ein Passwort eingeben, für weitere Tickets steht ihm dann der TGT - „ Ticket Granting Service “ zur Verfügung, der je nach Bedarf weitere Tickets für verschiedene Anwendungen oder Betriebssystem - Anmeldungen vergibt. Kerberos unterstützt somit eine SSO - Funktionalität.
Jeder Kerberos - Server ist für seinen Bereich, den sogenannten „ Realm “ zuständig. Ein solcher Bereich ist normalerweise eine einzelne Domäne. Da ein Rechner in nur maximal einer Domäne vorhanden sein darf, kann ein Kerberos - Server nur die Rechner verwalten, die in seiner Domäne liegen. Es ist allerdings möglich zwischen zwei Domänen eine Kerberos - Vertrauensstellung zu erstellen um damit eine authentifizierungüber die Grenzen einer Domäne hinweg zu gewährleisten.
Es gibt zwei Implementierungen von Kerberos.
- Heimdal Kerberos - http://www.pdc.kth.se/heimdal
- Die Implementierung des Massachusetts Institute of Technology - MIT Kerberos - http://web.mit.edu/kerberos/www/
Damit ein Netzwerkdienst Kerberos nutzen kann ist es nötig, dass der Dienst in der Lage ist mit Kerberos - Tickets umzugehen. Auf dem Server und Client Rechner muss jeweils ein Kerberos - Client installiert und konfiguriert sein. Sowohl die Client als auch die Server - Software muss Kerberos unterstützen. Für die aktuelle Kerberos Version 5 müssen Client, Server und Kerberos-Server ein gemeinsames Verschlüsselungs- und Prüfsummenverfahren unterstützen.
2.3 Dienste
2.3.1 Verzeichnisdienst
Ein Verzeichnisdienst ist ein zentraler Server, der von allen in einem Betrieb vorkommenden Objekten (wie Organisationen, Organisationseinheiten, Gruppen, Abteilungen, Personen, Rechner, Drucker, etc...) beliebige Attribute (wie Name, Bezeichnung, Adresse, Mitglieder etc...) speichern kann. Da sich im Bereich der Verzeichnisdienste das LDAP - Protokoll durchgesetzt hat, werden die Daten gem äß diesem Standard abgelegt und verwaltet.
Ein Verzeichnisdienst sind darüber hinaus meistens mit einem Authentifizierungsdienst gekoppelt, womit er sich als zentraler Authentifizierungsserver einsetzen lässt.
2.3.2 Microsoft Active Directory
Microsoft Active Directory (AD) ist ein Verzeichnisdienst, der auf dem LDAP - Protokoll aufsetzt und die Daten in einer X.500 - basierten Hierarchie ablegt. AD unterstützt Kerberos als Netzwerk - Authentifizierungsdienst. Es werden allerdings nur RC4 und DES - Verschlüsselung unterstützt, was den Active Directory Server verwundbar für Angriffe macht.
Der Active Directory Server ist bei den Betriebssystemen
- Microsoft Windows 2000 Server
- Microsoft Windows Server 2003 integriert.
Wie im Kapitel Kerberos beschrieben funktioniert die Authentifizierung der Benutzerüber den „ Ticket Granting Service “ TGT. Dabei kann der ADS (Active Directory Server) nur die Rechner verwalten, die sich in seinem Bereich (Realm) befinden. Da jeder Bereich mit einer Domäne beschrieben wird, muss also jeder Rechner, der verwaltet werden soll, in die Domäne des Kerberos - Servers eingebunden werden.
Ein Beispiel soll die Arbeitsweise des ADS - Authentifizierungsdienstes näher erläutern:
Möchte sich ein Benutzer direkt an seiner Workstation, die sich im Bereich des ADS befindet, anmelden, so verbindet sich die Workstation mit dem ADS und sendet die Benutzerkennung an den Server. Dieser prüft, ob der Benutzername vorhanden ist und sendet eine Anfrage auf das entsprechende Passwort. Nach erfolgreicher Authentifizierung wird der Benutzer autorisiert und bekommt ein Ticket für die Benutzung der Workstation und den sich darauf befindlichen Programmen.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 1 - Authentifizierung über Verzeichnisdienst
Möchte sich dieser Benutzer nun von seiner Workstation remote auf beispielsweise einem Application Server anmelden, so läuft auch hier der gesamte Prozessüber den ADS. Der Benutzer versucht auf den Application Server zuzugreifen und stellt damit eine Anfrage an den ADS womit er automatisch ein neues Ticket für die Authentifizierung anfordert. Befindet sich der Application Server im Bereich (Realm) des ADS Server, so kann der ADS für den Benutzer ein passendes Ticket für die Authentifizierung an dem Application Server ausstellen.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2 - Authentifizierung durch ADS - Kerberos
2.3.2.1 Microsoft Management Console - MMC
Die Microsoft Management Console (MMC) ist eine Strategie von Microsoft, eine dem Windows - Explorerähnliche Oberfläche zu bieten, bei der sich alle auf dem Server befindlichen Microsoft Produkte zentral verwalten lassen. Jeder Dienst und jede Funktion wird dabei von einem passendem „ Snap - In “ aus verwaltet. Beispielsweise gibt es für die Verwaltung des ADS vier entsprechende Snap - Ins die eingebunden werden können:
1. Active Directory Benutzer und Gruppen
2. Active Directory Domänen und Vertrauensstellungen
3. Active Directory Standorte und Dienste
4. Active Directory Schema
2.3.2.2 Passwortprotokolle und Techniken
Das Passwort wird bei einem ADS in einem verstecktem Attribut gespeichert. Dieses Attribut heißt „ unicodePwd “ und kann nicht ausgelesen werden. Es kann lediglich gesetzt oderüberschrieben werden. Wie der Name bereits suggeriert, wird das Passwort im Unicode - Format kodiert.
Ändern kann das Passwort jeder, der die entsprechende Berechtigung hierfür besitzt. Also der Benutzer selbst oder ein Administrator. Da jedes Betriebssystem und der Verzeichnisserver verschiedene Techniken benutzen, um ein Passwort zu setzen, müssen alle dazu notwendigen Protokolle und Techniken unterstützt werden. Der ADS unterstützt sechs:
1. Das NetUserChangePassword Protokoll
2. Das NetUserSetInfo Protokoll
3. Das Kerberos change-password Protokoll (IETF - Standardisiert)
4. Das Kerberos set-password Protokoll (Port 464)
5. Das LDAP - Protokoll (nurüber 128 Bit SSL Verbindungen)
6. Die XACT-SMB pre - Windows NT Kompatibilität
Je nachdem, von welchem Betriebssystem ausüber welche Technik zugegriffen wird, wird ein entsprechendes Protokoll genutzt. Ein Windows Server horcht auf allen sechs Protokollen nach gewünschten Passwortänderungen. Die Wahl der verschiedenen Protokolle soll in einigen Beispielen näher erläutert werden:
- Möchte ein Windows 2000 / XP Benutzer sein Passwortändern indem er die Tastenkombination STRG+ALT+ENTF drückt und auf „ Passwortändern “ klickt, so wird die NetUserChangePassword Methode angewandt, falls das Ziel eine Domäne ist. Ist das Ziel eine Kerberos - Umgebung so wird die Methode 5 angewandt.
- Möchte ein Rechner mit dem Betriebssystem Windows NT 3.xoder 4.0 sein Passwortändern, so werden die ersten beiden Methoden benutzt.
- Anfragen zur Passwortänderung von Computern mit Windows 95 oder 98 nutzen die XACT-SMB Methode. (6)
- Ein Programm, das die „ ChangePassword “ Methodeüber das Active Directory Service Interface (ADSI) IaDSUser Interface versucht zuerst das LDAP Protokoll (Methode 5) und dann das NetUserChangePassword Protokoll (Methode 1) zu nutzen.
- Ein Programm, das die „ SetPassword “ Methodeüber das ADSI IaDSUser Interfacde zuändern, versucht erst das Passwortüber LDAP (Methode 5), dannüber das Kerberos „ set-password “ Protokoll (Methode 4) und schlussendlichüber das „ NetUserSetInfo “ Protokoll (Methode 2) das Passwort zu setzen.
- Das Active Directory „ Benutzer und Computer “ - SnapIn der Windows Management Konsole nutzt ADSI - Operationen zur Passwortänderungen
- Ein Unix - Rechner nutzt je nach Konfiguration die SetPassword - Protokolle mittels LDAP oder Kerberos.
2.3.2.3 Namensauflösung
Um die Namensauflösung in die IP - Adressen umzusetzen nutzt ein ADS einen „ Domain Name Service “ - DNS.
2.3.3 Domain Name Service - DNS
Ein DNS - Server verwaltet Namensräume von Rechnern. Die Hauptaufgabe eines DNS Servers ist die Auflösung von Rechnernamen wie „ proldap “ in IP - Adressen wie „ 10.0.213.32 “ und umgekehrt. Ein solcher Server ist vergleichbar mit einem Telefonbuch, das die Namen der Personen den entsprechenden Telefonnummern gegenüberstellt.
2.3.4 Internet Information Service - IIS
Die Microsoft Internet Information Services sind eine Sammlung von Diensten um Web -, FTP -, SMTP -, WebDAV - und Index - Server für das Internet oder ein Intranet bereitzustellen. Im Rahmen dieser Untersuchung wird allerdings nur der Werbserver der Internet Information Services genutzt.
Standardm äß ig wird der IIS dazu verwendet um Microsofts Active Server Pages (ASP) darzustellen. Es ist allerdings möglich, weitere Interpretersprachen wie PHP (Hypertext Präprozessor) einzubinden.
[...]
-
-
-
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X.