NIS / YP

Network Information System


 

Inhalt

- Was ist NIS? -
- Wie funktioniert NIS? -
- Beteiligte Daemonen -
- Änderung der passwd -
- Master-Installation -
- Client-Installation -
- Sicherheitsaspekte -

 

Erstellt von Oliver Fromme
Copyright © 2002-2006
secnetix GmbH & Co KG

Client-Installation

Wir erinnern uns, daß wir jeden Client auch zugleich als NIS-Slave aufsetzen wollen. Beides erfolgt analog gemäß FreeBSD-Handbook.

Die Einträge in /etc/rc.conf sind denen des NIS-Masters sehr ähnlich:

   hostname="aschenputtel.domain.com"
   nisdomainname="phantasiename"
   portmap_enable="YES"
   nis_server_enable="YES"
   nis_client_enable="YES"
   nis_client_flags="-s -S ${nisdomainname},${hostname}"

Man beachte, daß der nisdomainname der gleiche sein muß wie auf dem NIS-Master. Ein ypwasswdd wird auf den Slaves nicht gestartet.

Die Datei /var/yp/securenets sollte den gleichen Inhalt haben wie auf dem NIS-Master. Ansonsten sind auf den Slaves unter /var/yp keinerlei Änderungen oder Aktionen durchzuführen.

Da ein Slave unter ungewöhnlichen Umständen einen Push des Masters verpassen kann (siehe oben), sollte auf jedem Slave ein Cronjob laufen der regelmäßig die Maps abgleicht. Dies kann z.B. so aussehen (aus /etc/crontab):

   21    4    *    *    *    root    /usr/local/sbin/ypsync

/usr/local/sbin/ypsync ist ein kleines Shell-Skript mit folgendem Inhalt:

   #!/bin/sh -

   MASTER="rumpelstilzchen.domain.com"
   DOMAIN=`/bin/domainname`

   MAPS="passwd.byname passwd.byuid"
   MAPS="$MAPS master.passwd.byname master.passwd.byuid"
   MAPS="$MAPS group.byname group.bygid"
   MAPS="$MAPS netgroup.byuser netgroup.byhost netgroup"

   for MAP in $MAPS; do
           /usr/libexec/ypxfr -h $MASTER -d $DOMAIN $MAP 2>&1 \
           | grep -v "^ypxfr: Exiting: Master's version not newer$"
   done

   exit 0

Nach dem Start des NIS-Dienstes auf dem dem Slave sollte man auch hier die Funktionalität überprüfen.

Die Ausgaben von »rpcinfo -p« und die laufenden Prozesse (Ausgabe von ps) sollte mit denen auf dem NIS-Master übereinstimmen (siehe oben), außer daß kein yppasswdd läuft, und daß bei ypbind der Name des NIS-Slaves steht. »ypwhich« sollte den Namen des Slaves/Clients ausgeben, nicht den des Masters:

   aschenputtel.domain.com

Auch hier sollte man mit »ypcat passwd« den Inhalt der passwd-Map erhalten können.


 

[Valid XHTML 1.0]