[LinuxFocus-icon]
Home  |  Plan  |  Index  |  Suchen

Nachrichten | Archiv | Links | Über uns  
Dieses Dokument ist verfübar auf: English  Deutsch  Francais  Nederlands  Portugues  Russian  Turkce  

convert to palmConvert to GutenPalm
or to PalmDoc

[Frederic]
von Frédéric Raynal

Über den Autor:
Frédéric Raynal schreibt gerade seine Diplomarbeit in Informatik am INRIA. Er liest gerne (Tolkien genauso wie Balzac) und hört gerne Musik(von Mozart bis zu Philip Glass und von Led Zeppelin bis zu Massive Attack über Björk und Boris Vian, vermeidet aber sorgfältig rap, techno und einige andere Arten dieses Lärms ;-)
Inhalt:

 

Yellow Pages 2 : Auf der Seite des Clients

[Illustration]

Zusammenfassung:

Im vorherigen Artikel ging es um die Einführung in die Konzepte der yellow pages (YPs). In diesem Artikel sehen wir, wie der Client konfiguriert wird, ein praktisches Beispiel zur Arbeitsweise des Clients und eine Darstellung der verschiedenen Tools. Zum Schluß gibt es noch Informationen über NIS+.



 

Einführung

Die Client-Dienste, die zu yellow pages gehören, basieren auf dem ypbind Dämon. Er sendet die Anforderungen an den YP-Server. Wir erklären zunächst seine Arbeitsweise und die Konfiguration. Danach sehen wir, wie das NIS-Protokoll arbeitet. Der letzte Teil des Artikels befasst sich mit den verschiedenen Tools, die auf der Client-Seite zur Verfügung stehen).

 

Konfiguration des NIS-Clients

Die einzige Voraussetzung, um einen NIS-Client zur Verfügung zu haben, ist der Start des ypbind-Dämons.  

ypbind

ypbind etabliert die Verbindung zwischen Client und dem NIS-Server. Diese Verbindung wird sichtbar durch eine Datei im Verzeichnis /var/yp/binding1 , die normalerweise in der Form domainname.version benannt ist. Die einzige z. Z. unterstützte Version ist Version 2. Wenn der Name meiner NIS-Domäne etwa "messiah" lautet, heißt die Datei halt messiah.2

Das Programm ypbind gehört dem Super-User (d. h. root), demzufolge findet es sich entweder in /sbin oder /usr/sbin.

Nach dem Start sucht und findet (hoffentlich) ypbind seine Anweisungen in der Datei /etc/yp.conf. Diese Datei kann folgende Einträge enthalten:



Wenn die Konfigurationsdatei nicht existiert oder falsche Einträge enthält, sucht ypbind per Rundspruch 2 im lokalen Netzwerk nach dem NIS-Server für die lokale Dömäne.

Mit wenigen Schritten können wir sicherstellen, dass ypbind korrekt konfiguriert ist.

  1. Erstellen Sie die Datei /etc/yp.conf;
  2. Überprüfen Sie, dass portmap aktiviert ist (ps aux | grep portmap). Wenn nicht, müssen wir ihn starten. Dieses Programm verbindet die TCP/IP- (oder UDP/IP)-Ports des Computers mit den Programmen. Während der Initialisierung eines RPC-Servers teilt dieser portmap mit, auf welchen Ports er lauscht und die Programmnummern, die er starten möchte. Wenn ein Client eine RPC-Anforderung für eine bestimmte Port-Nummer absetzt, nimmt er zunächst Kontakt mit portmap auf, um zu erfahren, an welchen Port die RPC-Pakete zu senden sind. Deshalb ist es unbedingt erforderlich, portmap vor ypbind zu starten;
  3. Erstellen Sie das Verzeichnis /var/yp ;
  4. Starten Sie ypbind ;
  5. Benutzen Sie das Kommando rpcinfo, um sicherzustellen, das ypbind korrekt arbeitet: oder versuchen Sie: abhängig von der Version von ypbind. Der wichtige Teil ist die Zeile mit der Version 2.
Nachdem ypbind nun korrekt arbeitet, wird Ihr Rechner zu einem NIS-Client. Nun können Sie Ihren NIS-Server ansprechen. Z. B. zeigt Ihnen "ypcat passwd.byname" alle Passwörter nach Benutzern geordnet an, die im entsprechenden Verzeichnis vorhanden sind.  

Einige Details

Einige Dateien benötigen noch kleinere Veränderungen, damit YP effizienter arbeiten kann: Shadow-Passwörter in NIS werden nur mit der glibc2.x-Bibliothek unterstützt. Deshalb sollte man sorgfältig überlegen, ob man sie in nsswitch.conf aktiviert.  

Dsa NIS-Protokoll

Nachdem unser NIS-Client nun voll funktionsfähig ist, wollen wir sehen, wie er die benötigten Informationen gewinnt.

Wenn ein Client eine Information benötigt, die sich in einem YP-Verzeichnis befindet, sucht er zunächst nach einem YP-Server. Dazu öffnet er eine TCP-Verbindung zum lokalen ypbind-Dämonen. Der Client informiert ihn über die (NIS-)Domäne, zu der er gehört und ypbind setzt mittels der Funktion RPC YPPROC_DOMAIN_NOACK einen Rundspruch im lokalen Netz ab. Die NIS-Server, die diese Domäne bedienen, antworten mit einem ACK. Die anderen verhalten sich ruhig..

ypbind schickt dem Client das Ergebnis der Anfrage (Erfolg oder Mißerfolg), und bei Erfolg die Adresse des YP-Servers, der zuerst geantwortet hat. Der Client kann nun den Server mit seiner Anfrage adressieren, indem er die Domäne, das Verzeichnis und den Schlüssel angibt. .

Dieses Protokol ist ziemlich langsam, weil es TCP-Verbindungen benutzt. Dies wird noch dadurch verschlimmert, weil eine Menge Sockets benutzt werden. Um dies zu vermeiden, wartet ypbind nicht auf Anfragen von Clients. Tatsächlich verwaltet es eine Liste von Servern für jede Domäne in der Datei /var/yp/binding/<domainename>.<version> und überprüft regelmäßig, ob diese Server noch aktiv sind.

 

Die yp-Tools

Dieser Abschnitt beschreibt kurz einige der Programme aus dem yp-Tools-Paket. Wenn Sie mehr darüber erfahren wollen, können Sie für jedes dieser Tools eine sehr ausführliche Handbuchseite aufrufen ;-P



 

Einige Worte zu NIS+

Bis jetzt haben wir noch nicht über eine NIS-Variante gesprochen. NIS in einem Netzwerk zu benutzen, ist ein großes Sicherheitsrisiko. Wenn z. B. der NIS-Server schlecht geschützt ist und eine Person mit bösen Absichten

  1. den NIS-Domänen-Namen
  2. die IP-Adresse eines NIS-Clients
herausfindet, ist es sehr einfach vorzutäuschen, dass man von dieser Maschine mit dieser IP-Adresse arbeitet (Spoofing). Dann kann man durch ein ypcat passwd mit allergrößter Leichtigkeit die Passwort-Liste erhalten. :-(

NIS+ bietet eine zusätzliche Sicherheitsschicht, indem es ein auf dem Austausch von Schlüsseln basierendes Authentifizierungsprotokoll integriert und Datenverschlüsselung unterstützt..

Die Daten werden in Tabellen gehalten, die sich in verschiedenen Verzeichnissen befinden. Jede Spalte einer Tabelle enthält einen Kopfeintrag, der z. B. angibt, ob bei den Daten Groß-/Kleinschreibung unterschieden wird oder ob es sich um binäre Daten handelt..

Die erwähnte Struktur erlaubt es, Zugriffsrechte für die Verzeichnisse und Tabellen und zusätzlich für die Spalten in den Tabellen zu definieren. Es ist daher möglich, den Zugriff auf die Passwort-Tabelle für jeden Benutzer zu sperren, der nicht auf dem NIS+-Server zugelassen. ist. Aber es erlaubt allen berechtigten Benutzerinnen Zugriff auf die gesamte Passwort-Tabelle mit Ausnahme des "Passwort"-Feldes. Nur der Eigentümer des "Passwort"-Feldes kann dieses abfragen..

Es gibt 4 Sicherheitsstufen:

  1. Nobody: Die Benutzerin ist nicht berechtigt;
  2. Owner: Der Benutzer ist als Eigentümer berechtigt;
  3. Group: Die Benutzerin ist berechtigt und gehört zu einer Gruppe, die Zugriff auf dieses Objekt hat;;
  4. World: Der Benutzer ist berechtigt, ist aber nicht Eigentümer und gehört keiner Gruppe mit Zugriff auf dieses Objekt an.


In dieser Konfiguration ist root nur eine gewöhnliche Benutzerin ... naja, fast;-) Wenn er nicht die entsprechenden Rechte hat, hat er keinen Zugriff auf die Passwörter der anderen Benutzer. So ist es nicht mehr möglich, sich als ein anderer Benutzer zu authentifizieren ... aber ein Wechsel mittels su ist noch möglich :)

Die Daten werden mit Ausnahme der Passwörter im Netz unverschlüsselt übertragen; kein Passwort wird im Klartext übertragen.

NIS+ ist ein mächtiges Werkzeug ... aber es ist schwer zu konfigurieren. Thorsten Kuduk schreibt folgendes (er arbeitet am NIS, NIS+, NIS-HOWTO ... er weiß also, worüber er spricht ;-) :
"Die Wahl zwischen NIS and NIS+ ist einfach: benutzen Sie NIS, solange Sie keine wichtigen Sicherheitsbedürfnisse haben. NIS+ ist wesentlich problematischer zu administrieren (ganz besonders auf der Server-Seite)"

 

Zusammenfasung

Wir haben erfahren, wie man eine Maschine zu einem existierenden Netzwerk hinzufügt, wenn bereits ein NIS-Server installiert ist. Im nächsten Artikel werden wir sehen, wie man den NIS-Server konfiguriert und wie dieser arbeitet..


Fußnoten

... var/yp/binding1
Die genaue Lokation dieser Dateien variiert von einer Distribution zur anderen. Z. B. gibt es folgende Möglichkeiten, den ypbind-Dämon zur Boot-Zeit zu starten: /etc/init.d/nis, /sbin/init.d/ypclient, /etc/rc.d/init.d/ypbind, /etc/rc.local
... broadcast2
Dies bedeutet, dass eine Nachricht im gesamten Subnetz ohne eine bestimmte Ziel-Adresse verbreitet wird (Typ X.Y.0.0)
... netgroup3
Die Datei /etc/netgroup definiert Gruppen bestehend aus (Host, Benutzerin, Domäne). Diese dienen zur Überprüfung von Berechtigungen bei der Ausführung von Befehlen auf anderen Rechnern (Remote-Login, Shells oder Mount-Befehle). Für Einzelheiten schlagen Sie ... die entsprechende Handbuchseite auf.

 

Talkback für diesen Artikel

Jeder Artikel hat seine eigene Seite für Kommentare und Rückmeldungen. Auf dieser Seite kann jeder eigene Kommentare abgeben und die Kommentare anderer Leser sehen:
 Talkback Seite 

Der LinuxFocus Redaktion schreiben
© Frédéric Raynal, FDL
LinuxFocus.org

Einen Fehler melden oder einen Kommentar an LinuxFocus schicken
Autoren und Übersetzer:
fr -> -- Frédéric Raynal
fr -> en Jo Simons
en -> de Hermann J. Beckers

2001-06-04, generated by lfparser version 2.15