tux

L i n u x - S c h u l e
NIS und NFS Clients

  Homepage | Server | Linux-Clients | Win9x-Clients | WinNT-Clients | Win3.11-Clients | Dos-Clients | Utilities  


NIS - Zentrale Benutzerverwaltung

Ich selbst setze auf den Clients SuSE Linux ein. Die Installation gestaltet sich mit Hilfe von YAST sehr einfach.  Unter dem Menuepunkt "Administration des System, Netzwerk konfigurieren" gibt es den "YP-Client konfigurieren".

yast11.gif
 

yast22.gif

Es sind zu setzen:

YP-DOMAIN = heg.k.nw.schule.de (oder wie ihre NIS-Domain eben heißt)
IP-Adresse des YP-Servers = 192.168.0.1 (die IP-Adresse von Arktur)

Nach dem Verlassen der Maske startet SuSEconfig und ändert eine Datei:
/etc/yp.conf - hier ist die IP Adresse des NIS-Servers hinterlegt

Damit ist die Konfiguration des NIS Clients schon erledigt. Jetzt muß er nur noch gestartet werden. Dazu gibt man ein:
/sbin/init.d/ypclient start
 

Testen

Jetzt sollte man sich auf einer anderen Konsole als ein User einloggen können, der zwar auf Arktur, aber nicht auf dem Client angelegt ist. Kommt eine Meldung wie "NO HOME", dann läuft der NFS-Server noch nicht richtig.

Das ls Problem

Wenn man sich als User per NIS auf einer SuSE 6.4 einloggt, bekommt man nach der Eingabe von "ls" die folgende Fehlermeldung:

ls: unrecognized option `--color=tty'
Usage: ls [-abcdgiklmnpqrstuxABCFGLNQRSUX1] [-w cols] [-T cols] [-I pattern]
       [--all] [--escape] [--directory] [--inode] [--kilobytes] [--literal]
       [--numeric-uid-gid] [--hide-control-chars] [--reverse] [--size]
       [--width=cols] [--tabsize=cols] [--almost-all] [--ignore-backups]
       [--classify] [--file-type] [--ignore=pattern] [--dereference]
       [--quote-name] [--recursive] [--sort={none,time,size,extension}]
       [--format={long,verbose,commas,across,vertical,single-column}]
       [--time={atime,access,use,ctime,status}] [--no-group]
       [--help] [--version] [path...]

Es hat mich Nächte gekostet, den "Fehler" zu finden: es liegt an der Pfadeinstellung in /etc/profile auf dem Client ab Zeile 33:

PATH=/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin
for DIR in ~/bin/$MACHINE ~/bin ; do
    test -d $DIR && PATH=$DIR:$PATH
done

Hier wird der Suchpfad zuerst auf das lokale bin Verzeichnis des Anwenders gesetzt und erst dann auf die systemweiten Verzeichnisse bin und /usr/bin. Dann funktioniert aber ls nicht mehr, denn ~/bin enthält eine besondere Version von "ls" für die Benutzung von ftp, die an der normalen Konsole nicht geht.

Diese Zeilen sind zu ändern in:

PATH=/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:~/bin
#for DIR in ~/bin/$MACHINE ~/bin ; do
#    test -d $DIR && PATH=$DIR:$PATH
#done

Sicherheitsratschläge

Um mit dem NFS-Server kommunizieren zu können, muß der NIS-Client zugriff auf die Benutzerdatenbank des NIS-Servers haben. Damit sind auch Angriffe von Hackern möglich. Mit Hilfe des Programms "ypcat"  (es ligt bei SuSE im Verzeichnis /usr/bin cat diese Datenbank ausgegeben werden (nichts anderes macht der YP-Client).  Im Normalzustand hat jeder Anwender das Recht, diese Datei auszuführen. Damit ist es aber möglich, daß auch ein Schüler sich diese Datenbank ausgeben läßt, in eine Datei speichert und sie als Input für ein Paßwortknackprogramm benutzt. Bei hinreichend schlechten Paßwörtern (wer hat schon "Y7k3S5n9Q"?) ist das Knacken leider kein Problem. Damit kann er sich als Lehrer einloggen und eventuell Unfug treiben.
Um wenigstens einen kleinen Riegel vorzuschieben, sollte man die Rechte von /usr/bin/ypcat dahingehend ändern, daß nur noch root es ausführen darf: "chmod 700 /usr/bin/ypcat"
Das verhindert natürlich nicht, daß ein pfiffiger Schüler sich die Datei auf Diskette mitbringt und sie doch ausführt :-(

Wenn der NIS Server beendet und wieder gestartet wird, während die Clients noch laufen, kann es dazu kommen, dasss sich niemand mehr einloggen kann. Bei Arbeiten am Server sollten daher die Clients abgeschaltet sein oder mit "init 1" in den "netzwerkfreien" Zustand gebracht werden.
Das gleiche gilt für den NFS Server. Ein per NFS gemountetes Verzeichnis kann nicht unmountet werden, wenn der NFS Server nicht mehr läuft. Der Client läßt sich dann auch nicht mehr sauber herunterfahren.

NFS - Verteilte Dateisysteme

NFS steht für Network File System. Dabei wird ein von einem NFS-Server exportiertes Verzeichnis auf dem NFS-Client gemountet. Sinnvoll ist das insbesondere für das Homeverzeichnis, weil dann jeder Anwender, egal wo er sich anmeldet, immer seine gewohnte Arbeitsumgebung vorfindet. Die Einrichtung auf dem Server ist auf der Server Seite beschrieben. Zum Einbinden muß die Datei /etc/fstab bearbeitet werden:

arktur:/home	/home	nfs

Beim nächsten Booten wird dann automatisch das Homeverzeichnis des Servers importiert.

  Nach oben

© Thomas Litsch, zuletzt geändert 04.06.2000, Email: thomas.litsch@linux-schule.de