  Opis systemw NIS(YP)/NYS/NIS+ na Linux-ie.
  Autor:Thorsten Kukuk kukuk@vt.uni-paderborn.de
  v0.12, 12 Czerwca 1998
  Wersja polska: Bartosz Maruszewski B.Maruszewski@jtz.org.pl
  v2.0, 14 Sierpnia 1998


  klient NIS(YP) czy NIS+ oraz jako serwer. Dokument ten zosta napisany
  w standardzie ISO-8859-2.
  ______________________________________________________________________

  Table of Contents






















































  1. Wprowadzenie.

     1.1 Nowe wersje tego dokumentu.
     1.2 Zrzeczenie.
     1.3 Komentarze i poprawki.
     1.4 Podzikowania.
     1.5 Od tumacza.

  2. Sowniczek i informacje oglne.

     2.1 Sowniczek terminw.
     2.2 Troch oglnych informacji.

  3. NIS czy NIS+ ?

     3.1 libc 4/5 z tradycyjnym NIS czy NYS ?

  4. Jak to dziaa.

     4.1 Jak dziaa NIS(YP).
     4.2 Jak dziaa NIS+.

  5. Portmapper RPC

  6. Czego potrzebujesz, aby ustawi NIS?

     6.1 Sprawd czy jeste serwerem, serwerem slave czy klientem.
     6.2 Oprogramowanie.
     6.3 Demon ypbind.
     6.4 Ustawianie kilenta NIS przy uyciu Tradycyjnego NIS-a.
     6.5 Ustawianie klienta NIS uywajc NYS.
     6.6 Ustawianie klienta NIS uywajc glibc 2.x
     6.7 Plik nsswitch.conf

  7. Shadow Passwords z NIS i PAM.

  8. Czego potrzebujesz do ustawienia NIS+?

     8.1 Oprogramowanie.
     8.2 Ustawianie klienta NIS+.
     8.3 NIS+, keylogin, login i PAM.
     8.4 Plik nsswitch.conf.

  9. Ustawianie serwera NIS.

     9.1 Program ypserv.
     9.2 Program serwera yps.
     9.3 Program rpc.yppasswdd

  10. Weryfikacja instalacji NIS/NYS.

  11. Popularne problemy i rozwizywanie ich.

  12. Czsto zadawane pytania.



  ______________________________________________________________________

  1.  Wprowadzenie.


  Coraz wicej komputerw z Linux-em instalowanych jest jako cz sieci
  komputerowych. Aby uproci administracj sieci wikszo sieci
  (gwnie oparte na Sun-ach) posiada Network Information Service.
  Maszyny Linux-owe mog w peni korzysta z serwera NIS albo samemu
  dostarcza tak usug. Linux moe take dziaa jako peny klient
  NIS+, obsuga tego jest jeszcze w fazie beta.

  Dokument ten prbuje odpowiedzie na pytania dotyczce ustawienia
  NIS(YP) i NIS+ na twoim komputerze. Nie zapomnij przeczyta sekcji na
  temat ``Portmapper-a RPC''.

  NIS-HOWTO zajmuje si


       Thorsten Kukuk, kukuk@vt.uni-paderborn.de


  Pierwotnym rdem informacji dla pierwszej wersji NIS-HOWTO byli:



       Andrea Dell'Amico       <adellam@ZIA.ms.it>
       Mitchum DSouza          <Mitch.DSouza@NetComm.IE>
       Erwin Embsen            <erwin@nioz.nl>
       Peter Eriksson          <peter@ifm.liu.se>




  ktrym powinnimy podzikowa za napisanie pierwszych wersji tego
  dokumentu.


  1.1.  Nowe wersje tego dokumentu.



  Najnowsz wersj tego dokumentu moesz zawsze znale pod adresem
  http://sunsite.icm.edu.pl:/pub/Linux/Documentation/HOWTO/.

  Najnowsze wersje bd take umieszczane na rnych serwerach WWW i FTP
  zwizanych z Linux-em wcznie ze stron LDP.

  Odnoniki do tumacze tego dokumentu mona znale pod adresem
  http://www-vt.uni-paderborn.de/~kukuk/linux/nis-howto.html.


  1.2.  Zrzeczenie.


  Pomimo, i dokument ten powsta w jak najlepszej intencji moe i
  pewnie zawiera bdy. Czytaj prosz wszystkie pliki README znajdujce
  si wraz z oprogramowaniem wymienianym tutaj w celu uzyskania jak
  najwieszych informacji. Bdziemy sie starali aby byo tu jak
  najmniej bdw.


  1.3.  Komentarze i poprawki.


  Jeli masz jakie pytania czy poprawki dotyczce tego dokumentu, pisz
  miao do Thorstena Kukuk na adres kukuk@vt.uni-paderborn.de.
  Przyjmuj wszelkie sugestie czy krytyk. Jeli znajdziesz jaki bd
  daj mi zna prosz, ebym mg go poprawi w nastpnej wersji. Dziki.

  Prosz nie przysyaj mi pyta na temat problemw dotyczcych twojej
  dystrybucji Linux-a. Nie znam kadej dystrybucji. Ale bd si stara
  doda kade rozwizanie jaki mi przylecie.


  1.4.  Podzikowania.


  Chcielibymy podzikowa wszystkim ludziom, ktrzy przyczynili si w
  jaki sposb do powstania i rozwoju tego dokumentu. W porzdku
  alfabetycznym:




       Byron A Jeff            <byron@cc.gatech.edu>
       Miquel van Smoorenburg  <miquels@cistron.nl>




  Theo de Raadt <deraadt@theos.com> jest odpowiedzialny za oryginalny
  kod yp-klienta. Swen Thuemmler <swen@uni-paderborn.de> przenis ten
  kod na Linux-a jak rwnie procedury yp do biblioteki libc (znowu na
  podstawie pracy Theo). Thorsten Kukuk napisa od zera procedury
  NIS(YP) i NIS+ dla GNU libc 2.x.


  1.5.  Od tumacza.


  Tumaczenie to jest chronione prawami autorskimi (C) Bartosza
  Maruszewskiego.  Dozwolone jest rozprowadzanie i dystrybucja na
  prawach takich samych jak dokument oryginalny.

  Jeli znalaze jakie race bdy ortograficzne, gramatyczne,
  skadniowe, techniczne to pisz do mnie. Zaznaczam, e nie jestem
  biegy w terminologii kryptografii wic wystepuj tu pewnie jakie
  dziwne wyraenia, ktre powinienem zapisa inaczej. Jeli wiesz jak to
  ma brzmie, napisz;

  B.Maruszewski@jtz.org.pl

  Oficjaln stron tumacze HOWTO jest http://www.jtz.org.pl/

  Aktualne wersje przetumaczonych dokumentw znajduj si na teje
  stronie. Dostpne s take poprzez anonimowe ftp pod adresem
  ftp.jtz.org.pl w katalogu /JTZ/.

  Przetumaczone przeze mnie dokumenty znajduj si take na mojej
  stronie WWW. <http://www.jtz.org.pl/bartek/tlumaczenie.html> S tam
  te odwoania do Polskiej Strony Tumaczeniowej.

  Kontakt z nasz grup, grup tumaczy moesz uzyska poprzez list
  dyskusyjn jtz@ippt.gov.pl. Jeli chcesz sie na ni zapisa, to wylij
  list o treci subscribe jtz Imi Nazwisko na adres
  majordomo@ippt.gov.pl

  Zmiany w tym dokumencie wprowadzone przez tumacza to odwoania do
  polskich serwerw ftp.


  2.  Sowniczek i informacje oglne.



  2.1.  Sowniczek terminw.


  W dokumencie tym wystpuje wiele akronimw. Oto te najwaniejsze i
  krtkie wyjanienie:
     DBM
        DataBase Management - biblioteka funkcji, ktre obsuguj pary z
        kluczem (-key-content) w bazie danych.


     DLL
        Dynamically Linked Library - biblioteka doczana do
        wykonywalnego programu podczas jego dziaania.


     domainname
        "Nazwa-klucz", ktra jest uywana przez klientw NIS, aby
        zlokalizowa pasujcy serwer NIS, ktry udostepnia klucz dla
        domeny (domainname key). Zauwa prosz, e to nie koniecznie ma
        co wsplnego z domen DNS-ow (nazw maszyny).


     FTP
        File Transfer Protocol - protok uywany do przenoszenia plikw
        pomidzy komputerami.


     libnsl
        Name services library - biblioteka odwoa "name service"
        (getpwnam, getservbyname itp.) na unix-ach SVR4. GNU libc uywa
        tego do funkcji NIS (YP) i NIS+.


     libsocket
        Socket services library - biblioteka odwoa obsugi gniazdek
        (socket, bind, listen itp.) na unix-ach SVR4.


     NIS
        Network Information Service - serwis ktry udostpnia
        informacj, ktra musi by znana poprzez sie dla wszystkich
        maszyn w sieci. W standardowej bibliotece Linux-a - libc - jest
        obsuga dla NIS, ktra dalej zwana jest "tradycyjnym NIS-em".


     NIS+
        Network Information Service (Plus :-) - waciwie to taki NIS na
        sterydach. NIS+ zosta zaprojektowany przez Sun Microsystems
        Inc. jako zastpca NIS-a z lepszym bezpieczestwem i lepsz
        obsug _wielkich_ instalacji.


     NYS
        Jest to nazwa projektu, ktry powsta z NIS+, YP i Switch i
        zarzdzany jest przez Petera Erikssona <peter@ifm.liu.se>.
        Midzy innymi zawiera powtrn implementacj kodu NIS-a (=YP),
        ktra uywa funkcjonalnoci Name Service Switch biblioteki NYS.


     NSS
        Name Service Switch. Plik /etc/nsswitch.conf okrela kolejno,
        w jakiej sprawdza si pewne dane informacje.


     RPC
        Remote Procedure Call. Procedury RPC pozwalaj programom w C
        odwoywa si do procedur na odlegej maszynie poprzez sie.
        Kiedy ludzie mwi o RPC to najczciej maj na myli wariant
        Sun-a RPC.


     YP Yellow Pages(TM) - zarejestrowany znak towarowy w UK firmy
        British Telecom plc.


     TCP-IP
        Transmission Control Protocol/Internet Protocol. To protok
        komunikacji danych najczciej uywany na maszynach unix-owych.


  2.2.  Troch oglnych informacji.


  Nastpujce 3 linijki to cytat z podrcznika Sun(TM) System & Network
  Administration Manual:



       "NIS znany by wczeniej jako Sun Yellow Pages (YP), ale nazwa Yellow
       Pages(TM) jest zarejestrowanym znakiem towarowym w Zjednoczonym
       Krlestwie firmy British Telecom plc i nie moe by uywana bez zgody."




  NIS to skrt od Network Information Service. Celem jego jest
  dostarczanie informacji, ktra musi by znana na sieci dla wszystkich
  komputerw. Informacja, ktra najprawdopodobniej bdzie dystrybuowana
  to:


    login/hasa/katalogi domowe (/etc/passwd)

    informacje o grupach (/etc/group)

  Tak wic na przykad jeli informacja o twoim hale jest zapisana w
  bazie hase NIS, bdziesz mg si zalogowa na wszystkich maszynach
  na sieci, ktre maj uruchomionego klienta NIS.

  Sun jest znakiem towarowym Sun Microsystems, Inc. licencjonowane dla
  SunSoft, Inc.


  3.  NIS czy NIS+ ?


  Wybr midzy NIS a NIS+ jest prosty - uyj NIS-a jeli nie musisz
  uywa NIS+ czy nie musisz stosowa zaostrzonego bezpieczestwa. Z
  NIS+ jest _o wiele_ wicej kopotw jeli chodzi o administracj (jest
  nim cakiem atwo zarzdza od strony klienta, ale serwer to horror).
  Innym problemem jest fakt, e wsparcie dla NIS+ w Linux-ie jest cigle
  w fazie rozwoju - potrzebujesz najnowszej biblioteki glibc, albo
  musisz poczeka na glibc 2.1. Istnieje wersja zastpcza glibc z
  obsug NIS+ dla libc5.


  3.1.  libc 4/5 z tradycyjnym NIS czy NYS ?


  Wybr pomidzy "tradycyjnym NIS" czy kodem NIS w bibliotece NYS jest
  wyborem pomidzy lenistwem i rozwojem a elastycznoci i zamiowaniem
  do przygody.

  Kod "tradycjnego NIS" jest w standardowej bibliotece C i istnieje ju
  dugo i czasem cierpi z powodu swojego wieku i maej nieelastycznoci.


  Kod NIS w bibliotece NYS wymaga rekompilacji biblioteki libc, aby
  wczy do niej kod NYS (albo moesz wzi ju skompilowan wersj
  libc od kogo kto ju j skompilowa).

  Inn rnic jest to, e "tradycyjny NIS" ma pewn obsug NIS
  Netgroups, ktrej  NYS nie ma. Z drugiej strony NYS pozwala obsugiwa
  Shadow Passwords w sposb przezroczysty. "Tradycyjny NIS" nie
  obsuguje Shadow passwords przez NIS.

  Zapomnij o tym wsyzstkim jeli uywasz nowej biblioteki GNU C 2.x (aka
  libc6). Ma ona obsug NSS (Name Switch Service), co czyni j bardzo
  elastyczn oraz zawiera obsug nastpujcych map NIS/NIS+: aliases,
  ethers, group, hosts, netgroups, networks, protocols, publickey,
  passwd, rpc, services i shadow. Biblioteka GNU C nie ma adnych
  problemw z shadow password przez NIS.


  4.  Jak to dziaa.



  4.1.  Jak dziaa NIS(YP).


  W caej sieci musi by przynajmniej jedna maszyna dziaajca jako
  serwer NIS. Moesz zrobi wicej serwerw NIS, kady dla innej
  "domeny" NIS - albo moesz mie wsppracujce serwery NIS, gdzie
  jeden jest gwnym serwerem NIS (master) a wszystkie inne s tak
  zwanymi slave NIS servers (to znaczy dla pewnej "domeny" NIS!) - albo
  moesz to pomiesza.

  Serwery slave posiadaj tylko kopi baz danych NIS i otrzymuj te
  kopie od gwnego serwera NIS kiedy tylko robione s jakie zmiany w
  gwnej bazie. W zalenoci od liczby komputerw w twojej sieci,
  moesz zdecydowa si na instalacj jednego lub wikszej iloci
  serwerw slave. Kiedy tylko serwer NIS jest unieruchamiany (goes down)
  albo jest zbyt wolny w odpowiedziach na dania, klient NIS-a
  podczony do tego serwera sprbuje znale ten, ktry dziaa albo
  jest szybszy.

  Bazy danych NIS s w tak zwanym formacie DBM, pochodzcym od baz
  danych ASCII. na przykad, pliki /etc/passwd i /etc/group mog by
  bezporednio zamienione na DBM przy pomocy oprogramowania
  translacyjnego ASCII-na-DBM ("makedbm" - jest on dostarczany wraz z
  serwerem). Gwny serwer NIS powinien posiada obie bazy - tak ASCII
  jak i DBM.

  Serwery slave zostan powiadomione o kadej zmianie w mapach NIS,
  (poprzez program "yppush") i automatycznie uaktualni owe zmiany, aby
  zsynchronizowa swoje bazy danych. Klienci NIS nie musz tego robi
  poniewa oni zawsze cz si z serwerem NIS, aby odczyta informacje
  zapisane w bazach danych DBM.

  Autor klientw YP dla Linux-a poinformowa nas, e nowszy ypbind
  (ypbind-3.3.tar.gz) jest w stanie pobra serwer z pliku
  konfiguracyjnego - przez to nie ma potrzeby rozsyania (broadcast)
  (ktre jest niebezpieczne z powodu tego, e kady moe zainstalowa
  serwer NIS i odpowiada na rozsyane zapytania...)


  4.2.  Jak dziaa NIS+.


  NIS+ to nowa wersja "network information nameservice" z Sun-a.
  Najwiksz rnic pomidzy NIS i NIS+ jest obsuga kodowania danych i
  autentykacja poprzez bezpieczne RPC w NIS+.
  Model nazewnictwa w NIS+ jest zbudowany w postaci struktury
  drzewiastej. Kady wze w drzewie odpowiada objektowi NIS+, ktrych
  mamy sze typw: katalog, pozycja (entry), grupa, doczenie, tablica
  i prywatne.

  Katalog NIS+, ktry tworzy podstaw przestrzeni nazw w NIS+ nazywa si
  katalogiem "root". S dwa specjalne katalogi NIS+: org_dir i
  groups_dir. Katalog org_dir skada si z wszystkich tablic
  administracyjnych, takich jak passwd, hosts i mail_aliases.  Katalog
  groups_dir skada si z grup objektw NIS+, ktre uywane s do
  kontroli dostpu. Kolekcja org_dir, groups_dir i ich katalogw
  nadrzdnych to domena NIS+.


  5.  Portmapper RPC


  Aby mc uruchomi jakikolwiek z wymienionych poniej programw,
  bdziesz musia uruchomi program /usr/bin/portmap. Niektre
  dystrybucje maj skrypt uruchamiajcy ten demon w plikach startowych
  /etc/rc.d/. Wszystko co musisz zrobi, to uaktywni go i zrestartowa
  komputer. Przeczytaj dokumenctaj dostarczon wraz z dystrybucj, aby
  si dowiedzie jak to zrobi.

  Portmapper RPC (portmap(8)) jest serwerem, ktry zamienia numery
  programowe RPC na numery portw protokou TCP/IP (albo UDP/IP).  Musi
  by on uruchomiony, aby mc uywa na tej maszynie odwoa RPC (co
  wanie robi oprogramowanie klienta NIS/NIS+) do serwerw RPC (takich
  jak serwer NIS czy NIS+). Kiedy serwer RPC jest startowany,
  poinformuje on portmap-a na ktrych portach nasuchuje, i jakimi
  numerami programowymi RPC moe suy. Kiedy klient chce odwoa si
  przez RPC do danego numeru programowego, najpierw skontaktuje si z
  portmap-em na maszynie serwerowej, aby okreli numer portu, do
  ktrego naley wysa pakiety RPC.

  Normalnie, standardowe serwery RPC s startowane przez inetd(8), wic
  portmap musi by uruchomiony przed inetd-em.

  Dla bezpieczestwa portmapper potrzebuje serwisu czasu (Time Service).
  Upewnij si czy serwis ten jest wczony w /etc/inetd.conf na
  wszystkich hostach:



       #
       # Time service is used for clock syncronization.
       #
       time    stream  tcp     nowait  nobody  /usr/sbin/tcpd  in.timed
       time    dgram   udp     wait    nobody  /usr/sbin/tcpd  in.timed




  WANE: Nie zapomnij zresetowa (kill -HUP) inetd-a po dokonaniu zmian
  w tym pliku !


  6.  Czego potrzebujesz, aby ustawi NIS?



  6.1.  Sprawd czy jeste serwerem, serwerem slave czy klientem.


  Aby odpowiedzie na to pytanie musisz rozway dwa przypadki:

  1. Twoja maszyna bdzie czci sieci z istniejcymi serwerami NIS.

  2. Nie masz jeszcze adnego serwera NIS w sieci.

  W pierwszym przypadku potrzebujesz tylko programw klienta (ypbind,
  ypwhich, ypcat, yppoll, ypmatch). Najwaniejszym programem jest
  ypbind. Program ten musi by uruchomiony przez cay czas, to znaczy
  powinien zawsze pojawia si w licie procesw. Jest to tzw. proces-
  demon i musi by startowany z plikw startowych systemu (np.
  /etc/rc.local, /etc/init.d/nis.  /etc/rc.d/init.d/ypbind).
  Jak tylko ypbind jest uruchomiony, twj komputer staje si klientem
  NIS.

  W drugim przypadku, jeli nie masz serwerw NIS, to bdziesz take
  potrzebowa programu serwera NIS (zwykle zwanego ypserv). Sekcja 8
  opisuje jak ustawi serwer NIS na twojej maszynie Linux-owej przy
  pomocy implementacji "ypserv" Petera Erikssona i Thorstena Kukuka.
  Zauwa, e od wersji 0.14 implementacja ta obsuguje koncept master-
  slave omwiony w sekcji 4.1.

  Jest jeszcze jeden darmowy serwer NIS, zwany "yps", napisany przez
  Tobiasa Rebera w Niemczech, ktry obsuguje koncept master-slave, ale
  ma inne ograniczenia i nie jest ju wspierany.


  6.2.  Oprogramowanie.


  Biblioteka systemowa "/usr/lib/libc.a" (wersja 4.4.2 i nowsza) czy
  biblioteka dzielona "/lib/libc.so.x" zawieraj wszystkie odwoania
  systemowe niezbdne do skompilowania oprogramowania klienta i serwera
  NIS. Do biblioteki glibc 2.x, potrzebujesz take biblioteki
  /lib/libnsl.so.1.

  Niektrzy podawali, e NIS dziaa tylko z "/usr/lib/libc.a" w wersji
  4.5.21 i nowszej, wic jeli chcesz by zabezpieczony, to nie uywaj
  starszych bibliotek.  Oprogramowanie klienckie NIS mona znale w:



         Adres                 Katalog                          Nazwa Pliku


         ftp.kernel.org        /pub/linux/utils/net/NIS         yp-tools-2.0.tar.gz
         ftp.kernel.org        /pub/linux/utils/net/NIS         ypbind-mt-1.2.tar.gz
         ftp.kernel.org        /pub/linux/utils/net/NIS         ypbind-3.3.tar.gz
         sunsite.unc.edu       /pub/Linux/system/Network/admin  yp-clients-2.2.tar.gz
         ftp.uni-paderborn.de  /linux/local/yp                  yp-clients-2.2.tar.gz
         ftp.uni-paderborn.de  /linux/local/yp                  ypbind-3.3.tar.gz
         ftp.icm.edu.pl        /pub/Linux/sunsite/system/network/admin yp-clients-2.2.tar.gz




  [Od tumacza: Jeli jeste w Polsce, to uyj raczej tego ostatniego
  adresu.]

  Jak ju masz oprogramowanie, postpuj zgodnie z instrukcjami
  przychodzcymi wraz z nim. yp-clients 2.2 nadaje si do uytku z libc4
  i libc5 a do 5.4.20. libc 5.4.21 i glibc 2.x potrzebuj yp-tools
  1.4.1. Nowe yp-tools 2.0 bd dzia z kad bibliotek libc dla
  Linux-a. Poniewa byy pewne bdy w kodzie NIS-a nie powiniene
  uywa libc 5.4.21-35. W zamian uyj 5.4.36 lub nowszej, inaczej
  wikszo programw YP nie bdzie dziaaa. ypbind 3.3 bdzie dziaa
  take ze wszystkimi bibliotekami. Nie powiniene nigdy uywa ypbind z
  yp-clients 2.2.
  6.3.  Demon ypbind.


  Zakadajc, e udao ci si skompilowa oprogramowanie jeste gotowy
  do zainstalowania go. Odpowiednim miejscem dla demona ypbind bdzie
  /usr/sbin. Niektrzy mog ci mwi, e nie potrzebujesz ypbind w
  systemie z NYS. Jest to bdne, gdy ypwhich i ypcat potrzebuj go.

  Bdziesz to oczywicie musia zrobi jako root. Inne programy
  (ypwhich, ypcat, yppoll, ypmatch) powinny znale si w katalogu
  dostpnym dla wszystkich uytkownikw, zwykle /usr/bin.

  Proces ypbind posiada plik konfiguracyjny - /etc/yp.conf. Moesz tam
  na stae wpisa serwer NIS - wicej informacji w podrczniku
  systemowym - man ypbind(8).
  Potrzebujesz tego pliku take do NYS. Przykad:



         ypserver voyager
         ypserver ds9




  Jeli system mgby rozwin nazw bez NIS, to mgby uy tej nazwy.
  W przeciwnym wypadku musisz uy adresu IP.

  Dobrym pomysem bdzie przetestowanie ypbind przed wprowadzeniem go do
  plikw /etc/rc.d/. Aby to zrobi postpuj tak:


    Upewnij si, e masz ustawion nazw domeny. Jeli nie, to wydaj
     polecenie:



                   /bin/domainname domena.nis





  gdzie domena.nis powinno by jakim acuchem zwykle _NIE_ zwizanym z
  nazw domeny twojej maszyny! Powodem tego jest, to e zewntrznym
  wamywaczom jest wtedy troch trudniej zdoby baz danych z hasami z
  twojego serwera NIS. Jeli nie wiesz jaka jest nazwa domeny NIS w two
  jej sieci, to zapytaj swojego administratora.


    uruchom "/usr/bin/portmap" jeli nie jest jeszcze uruchomiony.

    stwrz katalog "/var/yp" jeli go nie ma.

    uruchom "/usr/bin/ypbind"

    uyj polecenia "rpcinfo -p localhost", aby sprawdzi czy ypbind
     zarejestrowa swj serwis u portmapper-a.  rpcinfo powinien pokaza
     co takiego:







         program vers proto   port
          100000    2   tcp    111  portmapper
          100000    2   udp    111  portmapper
          100007    2   udp    637  ypbind
          100007    2   tcp    639  ypbind
          300019    1   udp    660





    moesz take uruchomi "rpcinfo -u localhost ypbind". Polecenie to
     powinno da mniej wicej taki wynik:



               program 100007 version 2 ready and waiting





  W tym momencie powiniene mc uywa programw klienckich NIS takich
  jak ypcat itp... Na przykad "ypcat passwd" poda ci ca baz danych
  NIS z hasami.

  WANE: Jeli pomine test, to upewnij si, e ustawie nazw domeny
  i stworzye katalog:



           /var/yp




  Ten katalog MUSI istnie, aby ypbind poprawnie si uruchomi.

  Aby sprawdzi czy nazwa domeny zostaa ustawiona poprawnie uyj
  programu /bin/ypdomainname z pakietu yp-tools 2.0. Uywa on funkcji
  yp_get_default_domain, ktra jest bardziej restrykcyjna. na przykad
  nie pozwala na domen "(none)", ktra jest domyln w Linux-ie. i
  stwarza wiele kopotw.

  Jeli test si powid moesz tera zmodyfikowa pliki w /etc/rc.d/ w
  twoim systemie, tak eby ypbind startowa podczas startu systemu.
  Upewnij si, e nazwa domeny jest ustawiana podczas startu.

  C, to wszystko. Zresetuj komputer i obserwuj komunikaty podczas
  startu, eby zobaczy czy ypbind waciwie wystartowa.


  6.4.  Ustawianie kilenta NIS przy uyciu Tradycyjnego NIS-a.


  Do sprawdzania nazw musisz ustawi (albo doda) "nis", do linii
  kolejnoci sprawdzania w pliku /etc/host.conf. Przeczytaj stron
  podrcznika systemowego "resolv+.8", aby dowiedzie si wicej
  szczegw.

  Na maszynach klienckich dodaj nastpujc lini w /etc/passwd:



       +::::::

  Moesz take uy znaczkw +/-, aby wczy/wyczy lub zmieni
  uytkownikw. Jeli chcesz wyczy uytkownika guest dodaj -guest do
  swojego pliku /etc/passwd. Chcesz uy innej powoki (np. ksh) dla
  uytkownika "linux"? Nie ma problemu, po prostu dodaj do swojego
  /etc/passwd "+linux::::::/bin/ksh" (bez cudzysowiw). Pola, ktrych
  nie chcesz zmienia musz pozosta puste. Mgby take uy Netgroups
  do kontroli uytkownikw.

  Na przykad, aby pozwoli miquels, dth, ed i wszystkim czonkom grupy
  sieciowej sysadmin tylko na login, ale eby dane o kontach wszystkich
  innych uytkownikw byy dostpne:



             +miquels:::::::
             +ed:::::::
             +dth:::::::
             +@sysadmins:::::::
             -ftp
             +:*::::::/etc/NoShell




  Zauwa, e na Linux-ie moesz take zmieni pole z hasem, jak to
  zrobilimy w tym przykadzie. Usunlimy take login "ftp", tak wic
  nie jest on ju znany i anonimowe ftp nie bdzie dziaa.

  Netgroup wygldaoby tak:



       sysadmins (-,software,) (-,kukuk,)




  WANE: Zauwa, e cecha netgroup jest zaimplementowana poczwszy od
  libc 4.5.26. Ale jeli masz wersj biblioteki wczeniejsz ni 4.5.26,
  kady uytkownik w bazie danych z hasami ma dostp do twojego Linux-a
  jeli masz uruchomiony "ypbind".


  6.5.  Ustawianie klienta NIS uywajc NYS.


  Wszystko co jest potrzebne, to to, eby plik konfiguracyjny
  (/etc/yp.conf) wskazywa na poprawn-y/e serwer(y). Take plik
  konfiguracyjny Name Service Switch (/etc/nsswitch.conf) musi by
  poprawnie ustawiony.

  Powiniene zainstalowa ypbind. Nie jest on potrzebny dla libc, ale
  narzdzia NIS(YP) go potrzebuj.

  Jeli chcesz uywa cechy wczania/wyczania uytkownika
  (+/-guest/+@admins), musisz uy "passwd: compat" i "group: compat" !
  W tym przypadku musisz uy "shadow: files nis"

  rda NYS s czci rde libc 5. Kiedy uruchamiasz configure, za
  pierwszym razem odpowiedz "NO" na pytanie "Values correct", potem
  odpowiedz "YES", na "Build a NYS libc from nys".





  6.6.  Ustawianie klienta NIS uywajc glibc 2.x


  Glibc uywa "tradycyjnego NIS", tak wic musisz uruchomi ypbind. Plik
  konfiguracyjny Name Service Switch (/etc/nsswitch.conf) musi by
  poprawnie ustawiony. Jeli  uywasz trybu kompatybilnego z passwd,
  shadow czy group, musisz doda "+" na kocu tego pliku, i moesz
  uywa cechy wczania/wyczania uytkownika. Konfiguracja jest
  dokadnie taka sama jak pod Solaris-em 2.x.


  6.7.  Plik nsswitch.conf


  Plik /etc/nsswitch.conf okrela kolejno w jakiej odbywa si
  sprawdzanie kiedy pojawi si danie pewnej informacji, tak samo jak
  plik /etc/host.conf, ktry okrela kolejno sprawdzania adresw
  hostw. Na przykad linia:



           hosts: files nis dns




  okrela, e funkcje sprawdzania adresw hostw powinny najpierw szuka
  w lokalnym pliku /etc/hosts, potem w bazie NIS i na kocu w DNS-ie
  (/etc/resolv.conf i named), gdzie jeli nie znaleziono odpowiedzi
  pojawia si bd.

  Poprawny plik /etc/nsswitch.conf dla NIS:


































  #
  # /etc/nsswitch.conf
  #
  # An example Name Service Switch config file. This file should be
  # sorted with the most-used services at the beginning.
  #
  # Pozycja '[NOTFOUND=return]' oznacza, e poszukiwania powinny
  # zakoczy si, jeli poszukiwania w poprzedniej pozycji nic nie
  # day. Zauwa, e jeli poszukiwania nie powiody si z
  # jakich innych powodw (jak nie odpowiadajcy serwer NIS), to
  # poszukiwania s kontynuowane z nastpn pozycj.
  #
  # Poprawne pozycje to:
  #
  #       nisplus                 Use NIS+ (NIS version 3)
  #       nis                     Use NIS (NIS version 2), also called YP
  #       dns                     Use DNS (Domain Name Service)
  #       files                   Use the local files
  #       db                      Use the /var/db databases
  #       [NOTFOUND=return]       Stop searching if not found so far
  #

  passwd:     compat
  group:      compat
  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




  passwd_compat, group_compat i shadow_compat s obsugiwane tylko przez
  glibc 2.x. Jeli nie ma zasad (rules) shadow w /etc/nsswitch.conf,
  glibc uyje zasady (rule) passwd do sprawdzenia. Jest wicej moduw
  szukania dla glibc jak hesoid. Wicej informacji znajdziesz w
  dokumentacji glibc.


  7.  Shadow Passwords z NIS i PAM.


  Shadow passwords przez NIS to zawsze zy pomys. Stracie ochron,
  ktr daje shadow passwords. Dobrym pomysem na uniknicie przesyania
  shadow paswords przez NIS jest umieci tylko uytkownikw lokalnego
  systemu do pliku /etc/shadow. Usu pozycje dotyczce uytkownikw NIS
  z bazy shadow i umie haso spowrotem w passwd. Tak e moesz uywa
  shadow dla logowania si jako root i normalnych hase dla uytkownikw
  NIS. Ma to t zalet, e bdzie to dziaao z kadym klientem NIS.


  Jeli nie jest to opcja dla ciebie, to potrzebujesz biblioteki GNU
  libc 2.x. Jest to jedyna biblioteka libc dla Linux-a, ktra obsuguje
  shadow passwords przez NIS. Libc5 nie obsuguje tego.  Libc 5 dla
  Linux-a skompilowana z wczonym NYS ma troch kodu do tego. Ale jest
  on zy w niektrych przypadkach i nie dziaa ze wszystkimi poprawnymi
  pozycjami shadow.

  Kolejnym problemem jest PAM. Biblioteka GNU C obsuguje Shadow
  paswords przez NIS, ale PAM nie, szczeglnie pam_pwdb/libpwdb. Jest to
  powany problem dla uytkownikw RedHat 5.x. Jeli masz glibc i PAM,
  to musisz zmieni pozycje w /etc/pam.d/*. Zamie wszystkie zasady dla
  pam_pwdb na (through) moduy pam_auth_unix_*. Bdzie to dziaa.


  8.  Czego potrzebujesz do ustawienia NIS+?



  8.1.  Oprogramowanie.


  Klient dla NIS+ na Linuxa zosta napisany dla biblioteki GNU C 2.
  Jest take wersja dla libc5, poniewa wszystkie komercyjne aplikacje
  s z ni skompilowane i nie mona ich przekompilowa z bibliotek
  libc5. Z bibliotek t i NIS+ s problemy: Nie mgby doczy
  statycznie tej biblioteki do programw i programy skompilowane z t
  bibliotek nie bd dziaay z inn.

  Musisz cign i skompilowa najnowsz bibliotek GNU C 2 snapshot.
  Potrzebujesz take systemu opartego na glibc jak RedHat Mustang czy
  niestabilny Debian. Ale ostrzegamy: To wszystko jest w fazie beta !
  Przeczytaj dokumentacj na temat glibc snapshots i z dystrybucji !
  glibc 2.0.x nie ma obsugi NIS+ i nigdy nie bdzie.  Pierwsz
  publicznie dostpn wersj zawierajc obsug NIS+ bdzie 2.1.

  Oprogramowanie klienckie NIS+ mona pobra z:



         Adres                  Katalog                    Nazwa Pliku

         ftp.kernel.org         /pub/software/libs/glibc   libc-*, glibc-crypt-*,
                                                           glibc-linuxthreads-*,
         ftp.kernel.org         /pub/linux/utils/net/NIS+  nis-tools-1.4.2.tar.gz
         ftp.kernel.org         /pub/linux/utils/net/NIS+  pam_keylogin-1.2.tar.gz




  Dystrybucje oparte na glibc mona cign z:



         Adres                  Katalog

         ftp.redhat.com         /pub/redaht/redhat-5.1
         ftp.debian.org         /pub/debian/dists/hamm
         ftp.icm.edu.pl         /pub/Linux/redhat
         ftp.icm.edu.pl         /pub/Linux/debian





  [Od tumacza: Jeli jeste w Polsce, to uyj dwch ostatnich adresw.]

  Aby skompilowa bibliotek GNU C postpuj zgodnie z instrukcjami
  doczonymi do niej. Tutaj moesz znale zaatan libc5, opart o
  rda NYS i glibc zamiast standardowej libc5:



         Adres                  Katalog                    Nazwa Pliku
         ftp.kernel.org     /pub/linux/utils/net/NIS+  libc-5.4.44-nsl-0.4.10.tar.gz




  Powiniene take zajrze do http://www-vt.uni-
  paderborn.de/~kukuk/linux/nisplus.html <http://www-vt.uni-
  paderborn.de/~kukuk/linux/nisplus.html>, aby zdoby wicej informacji
  i najnowsze rda.


  8.2.  Ustawianie klienta NIS+.


  WANE: Aby ustawi klienta NIS+, przeczytaj dokumenctaj do NIS+ na
  Solaris-a, aby si dowiedzie co zrobi po stronie serwera !  Dokument
  ten opisuje tylko co zrobi po stronie klienta !

  Po zainstalowaniu nowej biblioteki libc i nis-tools stwrz listy
  uwierzytelniajce dla nowego klienta na serwerze NIS+. Upewnij si, e
  dziaa portmap. Potem sprawd czy na twoim Linux-ie jest ten sam czas
  co na serwerze. W bezpiecznym RPC masz tylko 3 minuty, w cigu ktrych
  listy uwierzytelniajce s aktualne. Dobrym pomysem jest uruchomienie
  na wszystkich hostach xntpd. Potem uruchom



       domainname domena.nisplus
       nisinit -c -H <serwer NIS+>




  aby zainicjalizowa zimny Start File. Przeczytaj stron podrcznika
  systemowego o nisinit i znajd jego opcje. Upewnij si, e nazwa
  domeny bdzie zawsze ustawiona po resecie. Jeli nie wiesz jaka jest
  nazwa domeny w twojej sieci, zapytaj administratora.

  Teraz powiniene zmieni swj plik konfiguracyjny /etc/nsswitch.conf.
  Upewnij si, e jedynym serwisem po publickey jest nisplus
  ("publickey: nisplus") i nic wicej !

  Potem uruchom keyserv i uruchamiaj go zawsze po starcie. Uruchom:



       keylogin -r




  aby zapisa tajny klucz (secretkey) root-a na twoim systemie. (Mam
  nadziej, e dodae klucz publiczny dla nowego hosta na serwerze NIS+
  ?).

  "niscat passwd.org_dir" powinno pokaza ci teraz wszystkie pozycje w
  bazie danych z hasami.


  8.3.  NIS+, keylogin, login i PAM.


  Kiedy uytkownik si loguje musi ustawi swj tajny klucz dla keyserv-
  a. Robi si to przez wywoanie "keylogin".  Login z pakietu shadow
  zrobi to za uytkownika. W przypadku login-u PAM musisz zainstalowa
  pam_keylogin-1.0.tar.gz i zmodyfikowa plik /etc/pam.d/login, tak aby
  uywa pam_unix_auth, a nie pwdb, ktre nie obsuguje NIS+. Na
  przykad:



       #%PAM-1.0
       auth       required     /lib/security/pam_securetty.so
       auth       required     /lib/security/pam_keylogin.so
       auth       required     /lib/security/pam_unix_auth.so
       auth       required     /lib/security/pam_nologin.so
       account    required     /lib/security/pam_unix_acct.so
       password   required     /lib/security/pam_unix_passwd.so
       session    required     /lib/security/pam_unix_session.so





  8.4.  Plik nsswitch.conf.


  Plik /etc/nsswitch.conf okrela kolejno w jakiej odbywa si
  sprawdzanie kiedy pojawi si danie pewnej informacji, tak samo jak
  plik /etc/host.conf, ktry okrela kolejno sprawdzania adresw
  hostw. Na przykad linia:



           hosts: files nis dns




  okrela, e funkcje sprawdzania adresw hostw powinny najpierw szuka
  w lokalnym pliku /etc/hosts, potem w bazie NIS i na kocu w DNS-ie
  (/etc/resolv.conf i named), gdzie jeli nie znaleziono odpowiedzi, to
  zwracany jest bd.

  Poprawny plik /etc/nsswitch.conf dla NIS:




















  #
  # /etc/nsswitch.conf
  #
  # An example Name Service Switch config file. This file should be
  # sorted with the most-used services at the beginning.
  #
  # Pozycja '[NOTFOUND=return]' oznacza, e poszukiwania powinny
  # zakoczy si, jeli poszukiwania w poprzedniej pozcyji nic nie
  # day. Zauwa, e jeli poszukiwania nie powiody si z
  # jakich innych powodw (jak nie odpowiadajcy serwer NIS), to
  # poszukiwania s kontynuowane z nastpn pozycj.
  #
  # Poprawne pozycje to:
  #
  #       nisplus                 Use NIS+ (NIS version 3)
  #       nis                     Use NIS (NIS version 2), also called YP
  #       dns                     Use DNS (Domain Name Service)
  #       files                   Use the local files
  #       db                      Use the /var/db databases
  #       [NOTFOUND=return]       Stop searching if not found so far
  #

  passwd:     compat
  # dla libc5: passwd: files nisplus
  group:      compat
  # dla libc5: group: files nisplus
  shadow:     compat
  # dla libc5: shadow: files nisplus

  passwd_compat: nisplus
  group_compat: nisplus
  shadow_compat: nisplus

  hosts:      nisplus files dns

  services:   nisplus [NOTFOUND=return] files
  networks:   nisplus [NOTFOUND=return] files
  protocols:  nisplus [NOTFOUND=return] files
  rpc:        nisplus [NOTFOUND=return] files
  ethers:     nisplus [NOTFOUND=return] files
  netmasks:   nisplus [NOTFOUND=return] files
  netgroup:   nisplus
  bootparams: nisplus [NOTFOUND=return] files
  publickey:  nisplus [NOTFOUND=return] files
  automount:  files
  aliases:    nisplus [NOTFOUND=return] files





  9.  Ustawianie serwera NIS.



  9.1.  Program ypserv.


  Dokument ten opisuje tylko jak ustawi serwer NIS oparty na "ypserv".

  Oprogramowanie serwera NIS mona znale na:





    Adres                  Katatlog                      Nazwa pliku
    ftp.kernel.org         /pub/linux/utils/net/NIS     ypserv-1.3.2.tar.gz
    waaug.erols.com        /pub/net/nis                 ypserv-1.3.2.tar.gz




  Moesz take zajrze do http://www-vt.uni-
  paderborn.de/~kukuk/linux/nis.html <http://www-vt.uni-
  paderborn.de/~kukuk/linux/nis.html> po wicej informacji i najnowsze
  rda.

  Ustawianie serwera jest takie samo dla tradycyjnego NIS i NYS.

  Skompiluj oprogramowanie, aby wygenerowa programy "ypserv" i
  "makedbm". Jeli uruchamiasz swj serwer jako gwny, okrel jakie
  pliki maj by dostpne przez NIS i wtedy dodaj lub usu odpowiednie
  pozycje w /var/yp/Makefile.

  Pomidzy ypserv 1.1 a 1.2 bya jedna dua zmiana. Od wersji 1.2,
  ypserv "keszuje" uchwyty plikw (file handles). Oznacza to, e zawsze
  kiedy stworzysz now map musisz wywoa makedbm z opcj -c. Upewnij
  si, e uywasz nowego /var/yp/Makefile z ypserv 1.2 lub nowszego,
  albo dodaj opcj -c do makedbm w pliku Makefile. jeli tego nie
  zrobisz, ypserv bdzie wci uywa starych map zamiast nowych.

  Teraz zmodyfikuj /var/yp/securenets i /etc/ypserv.conf.
  Wicej informacji na stronach podrcznika man o ypserv(8) i
  ypserv.conf(5).

  Upewnij si czy portmapper (portmap(8)) jest uruchomiony i uruchom
  serwer "ypserv". Polecenie:



           % rpcinfo -u localhost ypserv




  powinno pokaza co takiego:



           program 100004 version 2 ready and waiting




  Teraz wygeneruj baz danych NIS (YP). Na serwerze gwnym uruchom:



           % /usr/lib/yp/ypinit -m




  na slave upewnij si, e dziaa ypwhich -m. Potem uruchom



           % /usr/lib/yp/ypinit -s masterhost



  To wszystko, twj serwer ju dziaa.

  Jeli masz wiksze problemy, moesz wystartowa ypserv i ypbind i
  trybie ledzenia (debug) w innym oknie. Komunikaty pojawiajce si w
  tym trybie powinny ci powiedzie co jest nie tak.

  Moesz zmodyfikowa crontab root-a *na serwerze slave* i doda
  ponisze linie:



             20 *    * * *    /usr/lib/yp/ypxfr_1perhour
             40 6    * * *    /usr/lib/yp/ypxfr_1perday
             55 6,18 * * *    /usr/lib/yp/ypxfr_2perday




  To upewni nas, e mapy NIS s aktualne, nawet jeli jakie
  uaktualnienie zostao przeoczone z powodu np. wyczenia serwera slave
  podczas modyfikowania bazy gwnej.

  Serwer slave mgby doda kiedykolwiek pniej. Najpierw upenij si,
  e nowy ypserv ma pozwolenie na kontaktowanie si z masterem NIS.
  Potem uruchom



           % /usr/lib/yp/ypinit -s masterhost




  na nowym slavie i dodaj nazw serwera do pliku /var/yp/ypservers.
  Potem uruchom make w /var/yp, aby uaktualni mapy.

  Jeli chcesz ograniczy dostp do twojego serwera NIS bdziesz musia
  ustawi serwer NIS take jako klienta przez uruchomienie ypbind i
  dodanie pozycji + do /etc/passwd _w poowie_ (halfway) pliku z
  hasami. Funkcje biblioteczne zignoruj wszystkie normalne pozycje po
  pierwszej pozycji NIS i i reszt informacji zdobd przez NIS.W ten
  sposb obsugiwany jest dostp NIS.  Przykad:



            root:x:0:0:root:/root:/bin/bash
            daemon:*:1:1:daemon:/usr/sbin:
            bin:*:2:2:bin:/bin:
            sys:*:3:3:sys:/dev:
            sync:*:4:100:sync:/bin:/bin/sync
            games:*:5:100:games:/usr/games:
            man:*:6:100:man:/var/catman:
            lp:*:7:7:lp:/var/spool/lpd:
            mail:*:8:8:mail:/var/spool/mail:
            news:*:9:9:news:/var/spool/news:
            uucp:*:10:50:uucp:/var/spool/uucp:
            nobody:*:65534:65534:noone at all,,,,:/dev/null:
            +miquels::::::
            +:*:::::/etc/NoShell
       [ PO tej linii normalni uytkownicy ! ]
            tester:*:299:10:Just a test account:/tmp:
            miquels:1234567890123:101:10:Miquel van Smoorenburg:/home/miquels:/bin/zsh




  Uytkownik tester bdzie istnia, ale bdzie mia ustawion powok na
  /etc/NoShell. miquels bdzie mia normalny dostp.

  Alternatywnie mgby zmodyfikowa plik /var/yp/Makefile i ustawi
  NIS, tak eby uywa innego rdowego pliku z hasami. W duych
  systemach NIS-owe pliki z hasami i grupami znajduj si zwykle w
  /var/yp/ypfiles/. Jeli tak zrobisz, to zwyke narzdzia jak "passwd",
  "chfn", "adduser" nie bd ju dziaa i bdziesz potrzebowa
  specjalnych wasnorcznie zrobionych wersji.

  Chocia yppsswd, ypchsh i ypchfn bd oczywicie dziaa.


  9.2.  Program serwera yps.


  Aby ustawi serwer NIS "yps" przeczytaj poprzedni paragraf. Ustawianie
  serwera "yps" jest podobne, _ale_ nie dokadnie takie samo, wic
  uwaaj jak bdziesz stosowa instrukcje dla "ypserv-a" do "yps" !
  "yps" nie jest wspierany przez adnego autora i zawiera par dziur w
  bezpieczestwie. Waciwie nie powiniene go uywa !

  Oprogramowane do serwera NIS "yps" mona znale na:



         Adres               Katalog                           Nazwa pliku

         ftp.lysator.liu.se  /pub/NYS/servers                  yps-0.21.tar.gz





  9.3.  Program rpc.yppasswdd


  Kiedy uytkownicy zmieniaj swoje hasa, baza danych NIS z hasami i
  przypuszczalnie inne bazy danych NIS, ktre zale od bazy danych z
  hasami, powinny by uaktualnione. Program "rpc.yppasswdd" jest
  serwerem, ktry odpowiedzialny jest za zmiany hase i uaktualnianie
  baz danych NIS. rpc.yppasswdd jest zintegrowany z ypserv. Nie
  potrzebujesz starszych oddzielnych yppasswd-0.9.tar.gz czy
  yppasswd-0.10.tar.gz i nie powiniene ich ju uywa. rpc.yppasswdd z
  ypserv 1.3.2 ma pen obsug shadow.  yppasswd jest teraz czci yp-
  tool-.2.0.tar.gz.

  Musisz uruchomi rpc.yppaswdd tylko na serwerze NIS master.  Domylnie
  uytkownicy nie maj prawa zmienia swoich "penych nazw" czy powoki.
  Moesz na to pozwoli opcj -e chfn czy -e chsh.


  10.  Weryfikacja instalacji NIS/NYS.


  Jeli wszystko jest w porzdku (jak powinno by), powiniene mc
  zwersyfikowa instalacj kilkoma prostymi poleceniami. Zakadajc na
  przykad, e twj plik z hsami jest dostarczany prze NIS, polecenie



           % ypcat passwd




  powinno pokaza ci zawarto pliku z hasami z NIS. Polecenie



           % ypmatch userid passwd




  (gdzie userid jest login-em jakiego uytkownika) powinno pokaza ci
  pozycj w pliku z hasami dotyczc tego uytkownika. Programy "ypcat"
  i "ypmatch" powinny by zawarte w dystrybucji NIS lub NYS.

  Jeli uytkownik nie mgby sie zalogowa, uruchom nastpujcy program
  po stronie klienta:



       #include <stdio.h>
       #include <pwd.h>
       #include <sys/types.h>

       int
       main(int argc, char *argv[])
       {
         struct passwd *pwd;

         if(argc != 2)
           {
             fprintf(stderr,"Stosowanie: getwpnam nazwa-uzytkownika\n");
             exit(1);
           }

         pwd=getpwnam(argv[1]);

         if(pwd != NULL)
           {
             printf("name.....: [%s]\n",pwd->pw_name);
             printf("password.: [%s]\n",pwd->pw_passwd);
             printf("user id..: [%d]\n", pwd->pw_uid);
             printf("group id.: [%d]\n",pwd->pw_gid);
             printf("gecos....: [%s]\n",pwd->pw_gecos);
             printf("directory: [%s]\n",pwd->pw_dir);
             printf("shell....: [%s]\n",pwd->pw_shell);
           }
         else
           fprintf(stderr,"Nie znaleziono uzytkownika \"%s\"!\n",argv[1]);

         exit(0);
       }




  Uruchomienie tego programu z uytkownikiem jako parametr, spowoduje
  wywietlenie wszystkich informacji jakie uzyska funkcja getpwnam dla
  tego uytkownika. Powinno ci to pokaza, ktra pozycja jest
  niepoprawna. Najpopularniejszym problemem jest zapisanie "*" w polu
  hasa.


  11.  Popularne problemy i rozwizywanie ich.




  1. Biblioteki do 4.5.19 s niepoprawne. NIS nie bdzie z nimi
     wsppracowa.

  2. Jeli uaktualnisz biblioteki z 4.5.19 na 4.5.24, to polecenie su
     nie dziaa. Potrzebujesz tego polecenia ze Slackware 1.2.0.
     Przypadkowo tam moesz znale uaktulanione biblioteki.

  3. Mgby popa w kopoty z NIS-em i DNS-em na tej samej maszynie
     uywajc starej dystrybucji z formatem binariw a.out.  Serwer DNS
     czasami nie uruchomi NIS.

  4. Kiedy serwer NIS si wyczy i potem uruchomi ponownie ypbind
     zaczyna wypisywa co takiego:


              yp_match: clnt_call:
                          RPC: Unable to receive; errno = Connection refused



  i uytkownicy zarejestrowani w bazie danych NIS nie mog si zalo
  gowa. Sprbuj zalogowa si jako root i jeli ci si udao, zabij
  ypbind i uruchom go ponownie. Uaktualnienie do ypbind 3.3 lub nowszego
  take powinno pomc.

  5. Po uaktualnieniu libc do wersji nowszej ni 5.4.20, narzdzia YP
     nie bd dziaa. Potrzebujesz w takim przypadku yp-tools w wersji
     1.2 lub nowszej dla libc >= 5.4.21 i glibc 2.x i yp-clients 2.2 dla
     wczeniejszych wersji. yp-tools 2.0 powinny dziaa ze qwszystkimi
     bibliotekami.

  6. W libc 5.4.21-35 yp_maplist jest popsute, potrzbujesz 5.4.36 lub
     nowszej wersji, albo niektre programy z YP jak np. ypwich bd
     przerywa dziaanie z bdem Segmentation fault.

  7. libc 5 z tradycyjnym NIS nie obsuguje shadow passwords przez NSI.
     Potrzebujesz libc5 + NYS lub glibc 2.x

  8. ypcat shadow nie pokazuje mapy shadow. Jest to poprawne - nazwa
     mapy shadow to shadow.byname a nie shadow.


  12.  Czsto zadawane pytania.


  Na wikszo twoich pyta powiniene ju uzyska odpowied. Jeli
  wci masz jakie pytania bez odpowiedzi to moesz wysa list na
  grup



           comp.os.linux.help
           lub
           comp.os.linux.networking




  albo na ktr z polskich grup



           pl.comp.security
           lub
           pl.comp.os.linux

  Albo skontaktuj si z ktrym z autorw tego HOWTO.

































































