NIS-Konfiguration

NIS steht für Network Information Server und stellt für Clients Konfigurationsdateien (/etc/passwd, /etc/shadow, /etc/group, usw.) zentral zur Verfügung. So kann ein NIS-Client die Benutzer über einen zentralen NIS-Server authentifizieren. Der Dienst hieß urspünglich Yellow Pages.


- Auf dem NIS-Server werden die Dateien in Maps umgewandelt (meist im Berkeley-Datenbank-Format)
- Ein NIS-Server verwaltet immer eine NIS-Domain (diese hat nichts mit der DNS-Domain zu tun)
- Durch NIS-Domain ist eindeutig, von welchem Server ein NIS-Client seine Maps bezieht
- In großen Netzwerken gibt es einen Master-NIS-Server und ein bis mehrere Slave-NIS-Server, welche eine Kopie der Maps enthalten.
- Bei ypserv handelt es sich um einen RPC-Client

 

/var/yp/ = Vrz. für Maps (NIS-Datenbankdateien)
/var/yp/ypservers = Hier stehen alle NIS-Server einer NIS-Domain
/var/yp/MAKE = Makefile des NIS-Server. Dies ist die Hauptkonfigurationsdatei
/etc/ypserv.conf = Hauptkonfigurationsdatei von NIS
/etc/yp.conf = Konfigurationsdatei aif dem Client

makedbm = Dateien in das Datenbankformat konvertieren
make -s -C /var/yp = Maps aktualisieren
rpc.ypxrd = YP-Transfer-Dämon, wichtig für Slaveserver für die Spiegelung der Informationen

ypserv = NIS-Server
ypbind = NIS-Client
ypcat = Gibt den Inhalt der NIS-Maps aus
ypmatch = fragt einzelne Werte aus den NIS-Maps ab
yppasswd = entspricht passwd und ändert Passwörter direkt auf NIS-Master-Server
yppoll = Zeitstempel der NIS-Maps ausgeben, um Aktualität der Slaveserver zu prüfen
yppush = Slaveserver über Änderungen informieren
ypxfer = Über diesen Befehl kann sich der Slave-Server die aktuellen Maps holen
ypwhich = Gibt den NIS-Server aus, den der Client gerade verwendet.
ypinit -m = Master-NIS-Server initialisieren
rpcinfo -p = Verbindungen über portmapper anzeigen (Zur Problemanalyse)

Konfiguration eines NIS-Master-Server

Linux # domainname NIS-domäne = Name der NIS-Domain festlegen (nicht zu verwechseln mit dnsdomainname)


Drei Parameter werden von dem Client benötigt, um eine gesuchte Information in der Datenbank aufzuspüren:

der Name der Domain: das ist der Name der Datenbank auf dem YP-Server
der Name der Map
der Name des Schlüssels

 

Grundlegende Konfiguration in der MAKE-Datei in /etc/yp/

NOPUSH=false = Slaveserver bei Änderungen informieren

MINUID=UID = Nur User, die eine höhere UID haben, werden in die NIS-Maps aufgenommen

MINGID=GID = Wie MINUID, nur für Gruppenmitgliedschaft

MERGE_PASSWD=true = Legt /etc/passwd und shadow zu einer einzigen Datei zusammen.

MERGE_GROUP=true = Legt /etc/group und gshadow zu einer einzigen Datei zusammen.

all: DATEI1 DATEI2 = Für welche Dateien werden Maps erzeugt?


/var/yp/nicknames – Aliase definieren

passed passwd.byname

group group.byname

networks networks.byaddr

protocols protocols.bynumber


/var/yp/securenets – Zugriffsbeschränkung
# Zugang für localhost
255.0.0.0 127.0.0.0

# Zugang aus dem Netz 192.168.0.0

255.255.255.0 192.68.0.0

ypinit -m = Master-NIS-Server initialisieren

Konfiguration eines NIS-Slave-Server

Die Konfiguration eines Slave-Server ist ziemlich einfach, da er alle Einstellungen vom Masterserver erhält:

Linux # ypinit -s NIS-Masterserver = Rechner als NIS-Slave-Server initialisieren.

Konfiguration von NIS-Clients

Auf den Clients muss ypbind laufen. Dieser wertet die Datei /etc/yp.conf aus.

Parameter in /etc/yp.conf
domain NISDOMAIN server HOST = Für diese NIS-Domain diesen Rechner als NIS-Server nutzen
domain NISDOMAIN broadcast = Per Broadcast einen NIS-Server suchen
ypserver HOST = diesen NIS-Server verwenden
broadcast = Per Broadcast einen NIS-Server suchen

Einstellungen in /etc/nsswitch.conf

SYNTAX datenbank: quelle

 

Mögliche Datenbank

aliases = Mail-Aliase /etc/aliases
automount = Konfig-Dateien /etc/auto.master und /etc/auto.*
ethers = /etc/ethers, welche Ethernatadressen IP-Adressen zuordnet
group = Benutzergruppen-Datei /etc/group
hosts = /etc/hosts
netgroup = /etc/netgroup
networks = /etc/networks
passwd = /etc/passwd
protocols = /etc/protocols
rpc = /etc/rpc, RPC-Dienste
services = /etc/services, Port-Zuweisung
shadow = /etc/shadow, Passwort-Datei

Mögliche Quellen

files = lokale Datei
nis = NIS-Server befragen
dns = DNS-Server befragen
ldap = LDAP-Server befragen
compat = Kompatibilitätsmodus für passwd, shadow, group

Auszug von /etc/nsswitch.conf

# Zuerst NIS-Server, befragen. Wenn kein Eintrag, dann lokal schauen

passwd: nis files
group: nis files
shadow: nis files

Weiteres Beispiel /etc/nsswitch.conf:

passwd: nis [NOTFOUND=return] files compat
shadow: [NOTFOUND=return] files compat
group: nis [NOTFOUND=return] files

Man kann auf Statusmeldungen des zu befragenden Dienstes reagieren. Als Antwort auf eine Anfrage sind
SUCCESS = Eintrag gefunden
NOTFOUND = keine entsprechende Information gefunden wurde,
UNAVAIL= Dienst nicht erreichbar
TRYAGAIN = der Dienst ist temporär nicht erreichbar

r
eturn = Befragung endet
continue = Nächster Eintrag wird befragt

www.selflinux.org/selflinux/html/nis01.html

Netzgruppen - /etc/netgroups

Mit Hilfe von Netgroups kann man Computer, User und NIS Domains zu logischen Verwaltungsgruppen zusammenfassen.

# /etc/netgroup
LocalAdmins (,root,)
NetAdmins (sonne,user1,) (sonne,user2,) LocalAdmins
Gateways (rechner1,,) (rechner7,,)