Table of Contents

NIS - Κεντρική Πιστοποίηση Δικτυακών χρηστών

Η Υπηρεσία NIS - Network Information Service προσφέρει την δυνατότητα να πιστοποιούνται σε έναν κεντρικό server δικτυακοί χρήστες linux. Λειτουργεί σε συνδυασμό με την υπηρεσία NFS - Network Filesystem Service η οποία τους παρέχει τα αρχεία τους από τον κεντρικό server.

Εγκατάσταση - Ρύθμιση Εξυπηρετητή

Εγκαθιστούμε το πακέτο nis στο μηχάνημα εξυπηρετητή

aptitude install nis

και επιλέγουμε ένα όνομα για τον τομέα μας π.χ. mydomain.local . (θα αποθηκευτεί στο αρχείο /etc/defaultdomain

Στην συνέχεια τροποποιούμε το αρχείο /etc/default/nis ώστε να ορίσουμε τον υπολογιστή μας ώς server

NISSERVER=master
NISCLIENT=false

Επανεκκινούμε τον server από το script εγκατάστασής του με την εντολή

dpkg-reconfigure nis

Στο σημείο αυτό μπορούμε να ελέγξουμε εάν τρέξει αρχικά η υπηρεσία με την παρακάτω εντολή

rpcinfo -u localhost ypserv

Θα πρέπει να εμφανίσει κάτι αντίστοιχο με

program 100004 version 1 ready and waiting
program 100004 version 2 ready and waiting

Στην συνέχεια αρχικοποιούμε την βάση δεδομένων

/usr/lib/yp/ypinit -m

Η εκτέλεση θα πρέπει να ολοκληρωθεί ομαλά χωρίς κάποιο μήνυμα λάθους

Τέλος τρέχουμε ξανά το scipt επαναρρύθμισης του nis με

dpkg-reconfigure nis

Εγκατάσταση - Ρύθμιση Πελάτη

Εγκαθιστούμε το πακέτο nis στο μηχάνημα πελάτη

aptitude install nis

και επιλέγουμε το όνομα του τομέα που δημιουργήσαμε ως server π.χ. mydomain.local (θα αποθηκευτεί στο αρχείο /etc/defaultdomain

Θεωρούμε ότι έχουμε ήδη ρυθμίσει έναν nis server. Στο αρχείο /etc/hosts ρυθμίζουμε ένα όνομα για τον server μας που να αντιστοιχεί στην ip του. Π.χ.

192.168.1.100 myserver

Στην συνέχεια τον δηλώνουμε στο αρχείο /etc/yp.conf

ypserver myserver

Στην συνέχεια θα πρέπει να αλλάξουμε το αρχείο /etc/nsswitch.conf στο οποίο καταγράφεται που θα πρέπει να ψάξει το σύστημά μας για πιστοποποίηση χρηστών, επίλυση ονομάτων κτλ, και με ποιά σειρά. Θα αλλάξουμε τις πρώτες 3 γραμμές από

passwd:         compat
group:          compat
shadow:         compat

σε

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

Για να είναι δυνατή η αλλαγή του κωδικού ενός χρήστη από τον client τροποποιούμε το αρχείο /etc/pam.d/common-password, προσθέτωντας την επιλογή nis στο τέλος της παρακάτω γραμμής

password        [success=1 default=ignore]      pam_unix.so obscure sha512 nis

Τέλος τρέχουμε ξανά το scipt επαναρρύθμισης του nis με

dpkg-reconfigure nis

Δοκιμές

Ελέγχουμε εάν εκτελείτει η υπηρεσία portmap (ή rpcbind), με την εντολή

ps -A | grep portmap

ή

ps -A | grep rpcbind

Εάν δεν μας βγάλει αποτέλεσμα, όπως π.χ

1809 ?        00:00:01 portmap

ή

1834 ?        00:00:01 rpcbind

την εκκινουμε με

service portmap start 

ή

service rpcbind start

Ομοίως για την διεργασία ypbind

ps -A | grep ypbind

Εάν δεν τρέξει την τρέχουμε απλά με

ypbind

Ελέγχουμε έαν η ypbind έχει καταχωρηθεί κανονικά και συνεργάζεται με το portmap, με την εντολή

rpcinfo -p localhost

Θα πρέπει να μας εμφανίσει κάτι παρόμοιο με το παρακάτω

program vers proto   port
100000    2   tcp    111  portmapper
100000    2   udp    111  portmapper
100007    2   udp    637  ypbind
100007    2   tcp    639  ypbind
..

η δοκιμάζουμε επίσης

rpcinfo -u localhost ypbind
program 100007 version 1 ready and waiting
program 100007 version 2 ready and waiting

Τέλος τρέχουμε ξανά το scipt επαναρρύθμισης του nis με

dpkg-reconfigure nis

Δοκιμή σύνδεσης

Στο μηχάνημα πελάτη εκτελούμε την εντολή

ypcat passwd

Θα πρέπει να μας εμφανίσει μια λίστα με τους χρήστες στον server

Επίσης η εντολή ypmatch username passwd, θα πρέπει να μας εμφανίσει μόνο την γραμμή που αφορά τον χρήστη με όνομα username από την παραπάνω λίστα, π.χ.

ypmatch testuser passwd
testuser:x:1000:1000:testuser:/home/testuser:/bin/bash

Αντιμετώπιση Προβλημάτων

O nis στον client δεν ξεκινάει αυτόματα στην εκκίνηση

Εάν ο nis δεν εκκινείται στον client κατά το κανονικό boot αλλά εκκινείται με το χέρι εκτελώντας /etc/init.d/nis restart τότε :

Δοκιμάζουμε μία μία τις παρακάτω λύσεις. Με μία από αυτές θα πρέπει να λυθεί

1) Αφαιρούμε τον network-manager με aptitude purge network-manager (Προσοχή να μην είμαστε στο γραφικό)

2) Δημιουργούμε ένα αρχείο /etc/network/if-up.d/nis με περιεχόμενο

#!/bin/sh
invoke-rc.d --quiet nis restart &

usbstick στον nis client

Αρχικά δεν είναι δυνατόν να προσαρτηθούν αυτόματα τα usb sticks στον nis client υπολογιστή. Χρειάζεται να προστεθεί ο χρήστης στην ομάδα plugdev στον client. Μια λύση είναι εδώ

Πηγές