Miután sikeresen lefordítottad a szoftvert, készen állsz a telepítésére. Az ypbind démon számára megfelelő hely az /usr/sbin könyvtár. Néhányan mondhatnák, hogy nincs szükséged ypbind-re NYS-t tartalmazó rendszerben. Tévednek. ypwhich-re és ypcat-ra mindig szükség van.
Ezt természetesen root felhasználóként kell elvégezned. A többi binárist (ypwhich, ypcat, yppasswd, yppoll, ypmatch) olyan könyvtárba kell tenni, ami minden felhasználó számára elérhető, általában az /usr/bin könyvtárba.
Újabb ypbind változatok /etc/yp.conf nevű konfigurációs fájlal rendelkeznek. Bedrótozhatsz ide egy NIS szervert - további információkért nézd meg az ypbind(8) kézikönyv oldalt. Erre az fájlra NYS esetén is szükséged van. Például:
ypserver 10.10.0.1 ypserver 10.0.100.8 ypserver 10.3.1.1 |
Ha a rendszer fel tudja oldani a gépneveket NIS nélül, használhatsz gépnevet, különben IP címet kell használnod. Az ypbind-3.3-ban van egy hiba, és csak a legutolsó bejegyzést használja (a példában ypserver 10.3.1.1). Minden más bejegyzést figyelmen kívül hagy. Az ypbind-mt helyesen kezeli ezt, és azt használja, amelyik először válaszol.
Jó ötlet kipróbálni az ypbind-et, mielőtt beleteszed az indítófájlokba. Az ypbind kipróbálásához a következőket kell tenned:
Győződj meg róla, hogy van YP-körzet név beállításod. Ha ez nincs beállítva, akkor add ki a következő utasítást:
/bin/domainname nis.domain |
Indítsd el az "/sbin/portmap" programot, ha még nem fut.
Készíts egy /var/yp nevű könyvtárat, ha még nem létezik.
Indítsd el az /usr/sbin/ypbind programot.
Ellenőrizd a rpcinfo -p localhost utasítással, hogy az ypbind be tudta-e regisztrálni a szolgáltatását a portmapper-be. A kimenetnek ilyesminek kell lennie:
program vers proto port 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100007 2 udp 637 ypbind 100007 2 tcp 639 ypbind |
program vers proto port 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100007 2 udp 758 ypbind 100007 1 udp 758 ypbind 100007 2 tcp 761 ypbind 100007 1 tcp 761 ypbind |
Elindíthatod az rpcinfo -u localhost ypbind programot is. Ez az utasítás valami ehhez hasonlót fog eredményezni:
program 100007 version 2 ready and waiting |
program 100007 version 1 ready and waiting program 100007 version 2 ready and waiting |
Ettől a ponttól kezdve használhatod az olyan NIS kliens programokat, mint például az ypcat, stb... Például az ypcat passwd.byname visszaadja neked a teljes NIS jelszó-adatbázist.
FONTOS: Ha kihagytad a tesztelő eljárást, győződj meg róla, hogy beállítottad a körzet nevét, és létrehoztad a következő könyvtárat:
/var/yp |
Ennek a könyvtárnak léteznie KELL az ypbind sikeres elindulásához.
A körzetnév helyességének ellenőrzésére használd a /bin/ypdomainname programot az yp-tools-2.2-ből. Ez az yp_get_default_domain() függvényt használja, ami sokkal szigorúbb. Nem engedélyezi például a "(semmi)" körzetnevet, ami az alapértelmezett Linux alatt, és sok probléma okozója.
Ha a teszt működik, most érdemes megváltoztatnod a démonokat indító fájlokat, hogy az ypbind a rendszer indulásakor indulhasson, és a rendszered NIS kliensként viselkedjen. Győződj meg róla, hogy a körzetnév az ypbind indítása előtt beállításra kerül!
Nos, ennyi. Indítsd újra a géped, és nézd meg a rendszerüzeneteket, hogy az ypbind elindult-e.
Gépnév feloldáshoz be kell állítanod (vagy hozzá kell adnod) a "nis"-t a feloldási sorrend sorához az /etc/host.conf fájlban. Nézd meg a "resolv+.8" kézikönyv oldalt a részletes leírásért.
Add hozzá a NIS kliens az /etc/passwd fájlhoz a következő sort:
+:::::: |
Használhatod a + és a - karaktereket felhasználó hozzáadásához/kizárásához vagy megváltoztatásához. Ha a vendég felhasználót szeretnéd kizárni, csak add hozzá az /etc/passwd fájlhoz a "-guest" kapcsolót. Más parancsértelmezőt (például ksh) szeretnél használtatni a "linux" felhasználóval? Nem probléma, egyszerűen add hozzá a "+linux::::::/bin/ksh" (idézőjelek nélkül) sort az /etc/passwd fájlhoz. Azokat a mezőket, amelyeket nem akarsz használni, üresen kell hagyni. Használhatod a Netgroups-t a felhasználó szabályozáshoz.
Például ahhoz hogy csak miquels, dth és ed, valamint a sysadmin hálózati csopot számára engedélyezd a bejelentkezés-hozzáférést, és a többiek számára megmaradjon az azonosító, a következőket kell megadnod:
+miquels::::::: +ed::::::: +dth::::::: +@sysadmins::::::: -ftp +:*::::::/etc/NoShell |
Jegyezzük meg, hogy Linux rendszerben a jelszó mezőt is felül lehet bírálni ugyanúgy, ahogy ebben a példában tettük. Eltávolítottuk az "ftp" felhasználót is, tehát itt többé nem létezik, azaz az anonymous ftp nem fog többé működni.
A hálózati csoport így fog kinézni:
sysadmins (-,software,) (-,kukuk,) |
FONTOS: A hálózati csoport (netgroup) beállítási lehetőség a 4.5.26-os libc változattól kezdve használható. Ha 4.5.26-os libc-nél korábbi változatod van, minden NIS jelszó-adatbázisban szereplő felhasználó hozzáférhet a Linux gépedhez, ha "ypbind"-et futtatsz!
Mindössze arra van szükség, hogy a NIS konfigurációs fájl (/etc/yp.conf) a helyes szerver(ek)re mutasson. Ezen kívül a Névszolgáltatás Kapcsoló (Name Services Switch) konfigurációs fájlt (/etc/nsswitch.conf) helyesen be kell állítani.
Az ypbind-et fel kell még telepítened. Erre nem a libc-nek, hanem a NIS(YP) tools-nak van szüksége.
Ha szeretnéd használni a felhasználók hozzáadása/kizárása jellemzőt (+/-guest/+@admins), a "passwd: compat"-t és "group: compat" sort be kell az nsswitch.conf fájlba tenned. Jegyezzük meg, hogy nincs "shadow: compat"! "shadow: files nis" bejegyzést kell használnod ebben az esetben.
A NYS források nem részei az 5-ös libc forrásnak. Ha a configure szkriptet futtatod, válaszd első alkalommal "NO"-t a "Values correct" kérdésre, és utána "YES"-t a "Build a NYS libc from nys" kérdésre.
A glibc a "hagyományos NIS"-t használja, tehát el kell indítanod az ypbind-et. A Név Szolgáltatás Kapcsoló konfigurációs (Name Services Switch) fájlt (/etc/nsswitch.conf) helyesen be kell állítani. Ha a compat módot használod a passwd-hez, shadow-hoz vagy a group-hoz, hozzá kell adnod ezen fájlok végéhez a "+"-t, és használhatod a felhasználó hozzáadás/kizárás jellemzőt. A beállítás ugyanilyen Solaris 2.x esetén is.
A Hálózati Szolgáltatások (Network Services) beállítási fájl (/etc/nsswitch.conf) határozza meg egy meghatározott információcsoport lekérdezésekor a feloldások sorrendjét, hasonlóan ahogy az /etc/host.conf fájl meghatározza, hogy milyen módon történjen a gépnév feloldása. Például a
hosts: files nis dns |
sor meghatározza, hogy a gépnév feloldás függvény először a helyi /etc/hosts fájlt nézze, majd NIS feloldás kövesse, végül a körzetnév szolgáltatáson keresztül oldja fel (/etc/resolv.conf és named). Ennél a pontnál, ha nincs találat, hibával tér vissza. Ezt az fájlt minden felhasználó számára olvashatóvá kell tenni! További információt találsz erről az nsswitch.5, vagy az nsswitch.conf.5 kézikönyv oldalakban.
Egy NIS számára használható /etc/nsswitch.conf fájl:
# # /etc/nsswitch.conf # # Egy példa Név Szolgáltatás Kapcsoló (Name Service Switch) beállítási # fájl. Ezt az fájlt úgy kell rendezni, hogy a leginkább használt # szolgáltatás kerüljön az elejére. # # A '[NOTFOUND=return]' bejegyzés azt jelenti, hogy egy bejegyzés # keresése be kell, hogy fejeződjön, ha az előző bejegyzés keresése # nem adott vissza semmit. Jegyezzük meg, hogy ha a keresés más # okból hibás (mondjuk nem válaszol NIS szerver), akkor a keresés # folytatódik a következő bejegyzéssel. # # Lehetséges bejegyzések: # # nisplus Használj NIS+ -t (NIS 3-as verzió) # nis Használj NIS-t (NIS 2-es verzió), YP-nek is |hívják # dns Használj DNS-t (Domain Name Service: Körzet |Név Szolgáltatás) # files Használd a helyi fájlokat # db Használd a /var/db adatbázist # [NOTFOUND=return] Hagyd abba a keresést, ha nem találod # passwd: compat group: compat # libc5 esetén shadow: files nis -t kell használod shadow: compat passwd_compat: nis group_compat: nis shadow_compat: nis hosts: nis files dns services: nis [NOTFOUND=return] files networks: nis [NOTFOUND=return] files protocols: nis [NOTFOUND=return] files rpc: nis [NOTFOUND=return] files ethers: nis [NOTFOUND=return] files netmasks: nis [NOTFOUND=return] files netgroup: nis bootparams: nis [NOTFOUND=return] files publickey: nis [NOTFOUND=return] files automount: files aliases: nis [NOTFOUND=return] files |
A passwd_compat, group_compat és shadow_compat csak glibc 2.x alatt támogatott. Ha nincs shadow szabály az /etc/nsswitch.conf fájlban, a glibc a passwd szabályt fogja alkalmazni a feloldáshoz. Van még néhány feloldó modul a glibc-hez, mint például a hesoid. További információért olvasd el a glibc dokumentációját.
A NIS feletti árnyék jelszavak használata mindig rossz ötlet. Elveszted az árnyék által biztosított biztonságot, és csak néhány Linux C könyvtár támogatja. Egy jó módszer a NIS feletti árnyék jelszavak használatának elkerülésére az, hogy csak a helyi felhasználók esetén használsz árnyékjelszót az /etc/shadow fájlban. Vedd ki a NIS felhasználó bejegyzéseket az árnyék adatbázisból, és tedd vissza a jelszót a passwd fájlba. Így tehát használhatod az árnyék jelszót a root bejelentkezéshez, és a hagyományos passwd-t a NIS felhasználóhoz. Ennek a módszernek megvan az az előnye, hogy minden NIS kliens esetén működni fog.
Az egyetlen Linux libc, amely támogatja az árnyék jelszavak NIS feletti használatát a GNU C 2.x könyvtár. A Linux libc5-ben nincs ehhez támogatás. A Linux libc5 engedélyezett NYS-sel lefordítva tartalmaz némi kódot hozzá. Azonban ez a kód néhány esetben hibásan működik, és nem működik minden árnyék bejegyzéssel helyesen.
A Solaris nem támogatja a NIS feletti árnyék jelszavakat.
A Linux-PAM 0.75 és újabb verzói támogatják a NIS feletti árnyék jelszavakat, amennyiben pam_unix.so modult használsz, vagy telepíted a pam_unix2.so modult. Régi rendszereknél (például RedHat 5.x) , melyek még a pam_pwdb/libpwdb-t használják, meg kell változtatnod az /etc/pam.d/* bejegyzéseket. Cseréld ki az összed pam_pwdb szabályt a pam_unix_* modulokban.
Az /etc/pam.d/login fájl például így néz ki:
#%PAM-1.0 auth requisite pam_unix2.so nullok #set_secrpc auth required pam_securetty.so auth required pam_nologin.so auth required pam_env.so auth required pam_mail.so account required pam_unix2.so password required pam_pwcheck.so nullok password required pam_unix2.so nullok use_first_pass use_authtok session required pam_unix2.so none # debug or trace session required pam_limits.so |
Előző | Tartalomjegyzék | Következő |
Mire van szükség a NIS üzembe helyezéséhez? | Mire van szükség a NIS+ beállításához? |