NIS HOWTO pl


Opis systemów NIS(YP)/NYS/NIS+ na Linux-ie. Autor:Thorsten Kukuk kukuk@suse.de v1.0, 9 Marca 1999 WWeerrssjjaa ppoollsskkaa:: BBaarrttoosszz MMaarruusszzeewwsskkii BB..MMaarruusszzeewwsskkii@@jjttzz..oorrgg..ppll v3.0, 9 Sierpnia 1999 Dokument ten opisuje jak skonfigurować Linux-a, aby dziaÅ‚aÅ‚ jako klient NIS(YP) czy NIS+ oraz jako serwer. Dokument ten zostaÅ‚ napisany w standardzie ISO-8859-2. ______________________________________________________________________ Spis treÅ›ci 1. Wprowadzenie. 1.1 Nowe wersje tego dokumentu. 1.2 Zrzeczenie. 1.3 Komentarze i poprawki. 1.4 PodziÄ™kowania. 1.5 Od tÅ‚umacza. 2. SÅ‚owniczek i informacje ogólne. 2.1 SÅ‚owniczek terminów. 2.2 TrochÄ™ ogólnych informacji. 3. NIS , NYS czy NIS+ ? 3.1 libc 4/5 z tradycyjnym NIS czy NYS ? 3.2 NIS czy NIS+ ? 4. Jak to dziaÅ‚a. 4.1 Jak dziaÅ‚a NIS. 4.2 Jak dziaÅ‚a 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 użyciu Tradycyjnego NIS-a. 6.5 Ustawianie klienta NIS używajÄ…c NYS. 6.6 Ustawianie klienta NIS używajÄ…c glibc 2.x 6.7 Plik nsswitch.conf 6.8 Shadow Passwords z NIS i PAM. 6.8.1 Linux 6.8.2 Solaris 6.8.3 PAM 7. Czego potrzebujesz do ustawienia NIS+? 7.1 Oprogramowanie. 7.2 Konfiguracja klienta NIS+. 7.3 NIS+, keylogin, login i PAM. 7.4 Plik nsswitch.conf. 8. Konfiguracja serwera NIS. 8.1 Program ypserv. 8.2 Program serwera yps. 8.3 Program rpc.ypxfrd 8.4 Program rpc.yppasswdd 9. Weryfikacja instalacji NIS/NYS. 10. Popularne problemy i rozwiÄ…zywanie ich. 11. CzÄ™sto zadawane pytania. ______________________________________________________________________ 11.. WWpprroowwaaddzzeenniiee.. Coraz wiÄ™cej komputerów z Linux-em instalowanych jest jako część sieci komputerowych. Aby uproÅ›cić administracjÄ™ sieciÄ… wiÄ™kszość sieci (głównie oparte na Sun-ach) posiada Network Information Service. Maszyny Linux-owe mogÄ… w peÅ‚ni korzystać z serwera NIS albo samemu dostarczać takÄ… usÅ‚ugÄ™. Linux może także dziaÅ‚ać jako peÅ‚ny klient NIS+, obsÅ‚uga tego jest jeszcze w fazie beta. Dokument ten próbuje odpowiedzieć na pytania dotyczÄ…ce ustawienia NIS(YP) i NIS+ na twoim komputerze. Nie zapomnij przeczytać sekcji na temat ``Portmapper-a RPC''. NIS-HOWTO zajmuje siÄ™ Thorsten Kukuk, Mitchum DSouza Erwin Embsen Peter Eriksson którym powinniÅ›my podziÄ™kować za napisanie pierwszych wersji tego dokumentu. 11..11.. NNoowwee wweerrssjjee tteeggoo ddookkuummeennttuu.. NajnowszÄ… wersjÄ™ tego dokumentu możesz zawsze znaleźć pod adresem http://www.suse.de/~kukuk/linux/HOWTO/NIS-HOWTO.html. Najnowsze wersje bÄ™dÄ… także umieszczane na różnych serwerach WWW i FTP zwiÄ…zanych z Linux-em wÅ‚Ä…cznie ze stronÄ… LDP. OdnoÅ›niki do tÅ‚umaczeÅ„ tego dokumentu można znaleźć pod adresem http:///www.suse.de/~kukuk/linux/nis-howto.html. 11..22.. ZZrrzzeecczzeenniiee.. Pomimo, iż dokument ten powstaÅ‚ w jak najlepszej intencji może i pewnie zawiera bÅ‚Ä™dy. Czytaj proszÄ™ wszystkie pliki README znajdujÄ…ce siÄ™ wraz z oprogramowaniem wymienianym tutaj w celu uzyskania jak najÅ›wieższych informacji. BÄ™dÄ™ sie staraÅ‚ aby byÅ‚o tu jak najmniej bÅ‚Ä™dów. 11..33.. KKoommeennttaarrzzee ii ppoopprraawwkkii.. JeÅ›li masz jakieÅ› pytania czy poprawki dotyczÄ…ce tego dokumentu, pisz Å›miaÅ‚o do Thorstena Kukuk na adres kukuk@suse.de. PrzyjmujÄ™ wszelkie sugestie czy krytykÄ™. JeÅ›li znajdziesz jakiÅ› bÅ‚Ä…d daj mi znać proszÄ™, żebym mógÅ‚ go poprawić w nastÄ™pnej wersji. DziÄ™ki. ProszÄ™ _n_i_e przysyÅ‚aj mi pytaÅ„ na temat problemów dotyczÄ…cych twojej dystrybucji Linux-a. Nie znam każdej dystrybucji. Ale bÄ™dÄ™ siÄ™ staraÅ‚ dodać każde rozwiÄ…zanie jaki mi przyÅ›lecie. 11..44.. PPooddzziięękkoowwaanniiaa.. ChcielibyÅ›my podziÄ™kować wszystkim ludziom, którzy przyczynili siÄ™ w jakiÅ› sposób do powstania i rozwoju tego dokumentu. W porzÄ…dku alfabetycznym: Byron A Jeff Markus Rex Miquel van Smoorenburg Theo de Raadt jest odpowiedzialny za oryginalny kod yp-klienta. Swen Thuemmler przeniósÅ‚ ten kod na Linux-a jak również 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. 11..55.. OOdd ttÅ‚Å‚uummaacczzaa.. TÅ‚umaczenie to jest chronione prawami autorskimi © Bartosza Maruszewskiego. Dozwolone jest rozprowadzanie i dystrybucja na prawach takich samych jak dokument oryginalny. JeÅ›li znalazÅ‚eÅ› jakieÅ› rażące bÅ‚Ä™dy ortograficzne, gramatyczne, skÅ‚adniowe, techniczne to pisz do mnie. Zaznaczam, że nie jestem biegÅ‚y w terminologii kryptografii wiÄ™c wystepujÄ… tu pewnie jakieÅ› dziwne wyrażenia, które powinienem zapisać inaczej. JeÅ›li wiesz jak to ma brzmieć, napisz; B.Maruszewski@jtz.org.pl OficjalnÄ… stronÄ… tÅ‚umaczeÅ„ HOWTO jest http://www.jtz.org.pl/ Aktualne wersje przetÅ‚umaczonych dokumentów znajdujÄ… siÄ™ na tejże stronie. DostÄ™pne sÄ… także poprzez anonimowe ftp pod adresem ftp.jtz.org.pl w katalogu /JTZ/. PrzetÅ‚umaczone przeze mnie dokumenty znajdujÄ… siÄ™ także na mojej stronie WWW. SÄ… tam też odwoÅ‚ania do Polskiej Strony TÅ‚umaczeniowej. Kontakt z naszÄ… grupÄ…, grupÄ… tÅ‚umaczy możesz uzyskać poprzez listÄ™ dyskusyjnÄ… jtz@ippt.gov.pl. JeÅ›li chcesz sie na niÄ… zapisać, to wyÅ›lij list o treÅ›ci subscribe jtz ImiÄ™ Nazwisko na adres majordomo@ippt.gov.pl Zmiany w tym dokumencie wprowadzone przez tÅ‚umacza to odwoÅ‚ania do polskich serwerów ftp. 22.. SSÅ‚Å‚oowwnniicczzeekk ii iinnffoorrmmaaccjjee ooggóóllnnee.. 22..11.. SSÅ‚Å‚oowwnniicczzeekk tteerrmmiinnóóww.. W dokumencie tym wystÄ™puje wiele akronimów. Oto te najważniejsze i krótkie wyjaÅ›nienie: DDBBMM DataBase Management - biblioteka funkcji, które obsÅ‚ugujÄ… pary z kluczem (-key-content) w bazie danych. DDLLLL Dynamically Linked Library - biblioteka doÅ‚Ä…czana do wykonywalnego programu podczas jego dziaÅ‚ania. ddoommaaiinnnnaammee "Nazwa-klucz", która jest używana przez klientów NIS, aby zlokalizować pasujÄ…cy serwer NIS, który udostepnia klucz dla domeny (domainname key). Zauważ proszÄ™, że to nie koniecznie ma coÅ› wspólnego z domenÄ… DNS-owÄ… (nazwÄ… maszyny). FFTTPP File Transfer Protocol - protokół używany do przenoszenia plików pomiÄ™dzy komputerami. lliibbnnssll Name services library - biblioteka odwoÅ‚aÅ„ "name service" (getpwnam, getservbyname itp.) na unix-ach SVR4. GNU libc używa tego do funkcji NIS (YP) i NIS+. lliibbssoocckkeett Socket services library - biblioteka odwoÅ‚aÅ„ obsÅ‚ugi gniazdek (socket, bind, listen itp.) na unix-ach SVR4. NNIISS Network Information Service - serwis który udostÄ™pnia informacjÄ™, która musi być znana poprzez sieć dla wszystkich maszyn w sieci. W standardowej bibliotece Linux-a - libc - jest obsÅ‚uga dla NIS, która dalej zwana jest "tradycyjnym NIS-em". NNIISS++ Network Information Service (Plus :-) - wÅ‚aÅ›ciwie to taki NIS na sterydach. NIS+ zostaÅ‚ zaprojektowany przez Sun Microsystems Inc. jako zastÄ™pca NIS-a z lepszym bezpieczeÅ„stwem i lepszÄ… obsÅ‚ugÄ… _wielkich_ instalacji. NNYYSS Jest to nazwa projektu, który powstaÅ‚ z NIS+, YP i Switch i zarzÄ…dzany jest przez Petera Erikssona . MiÄ™dzy innymi zawiera powtórnÄ… implementacjÄ™ kodu NIS-a (=YP), która używa funkcjonalnoÅ›ci Name Service Switch biblioteki NYS. NNSSSS Name Service Switch. Plik /etc/nsswitch.conf okreÅ›la kolejność, w jakiej sprawdza siÄ™ pewne żądane informacje. RRPPCC Remote Procedure Call. Procedury RPC pozwalajÄ… programom w C odwoÅ‚ywać siÄ™ do procedur na odlegÅ‚ej maszynie poprzez sieć. Kiedy ludzie mówiÄ… o RPC to najczęściej majÄ… na myÅ›li wariant Sun-a RPC. YYPP Yellow Pages(TM) - zarejestrowany znak towarowy w UK firmy British Telecom plc. TTCCPP--IIPP Transmission Control Protocol/Internet Protocol. To protokół komunikacji danych najczęściej używany na maszynach unix-owych. 22..22.. TTrroocchhęę ooggóóllnnyycchh iinnffoorrmmaaccjjii.. NastÄ™pujÄ…ce 3 linijki to cytat z podrÄ™cznika Sun(TM) System & Network Administration Manual: "NIS znany byÅ‚ wczeÅ›niej jako Sun Yellow Pages (YP), ale nazwa Yellow Pages(TM) jest zarejestrowanym znakiem towarowym w Zjednoczonym Królestwie firmy British Telecom plc i nie może być używana bez zgody." NIS to skrót od Network Information Service. Celem jego jest dostarczanie informacji, która musi być znana na sieci dla wszystkich komputerów. Informacja, która najprawdopodobniej bÄ™dzie dystrybuowana to: · login/hasÅ‚a/katalogi domowe (/etc/passwd) · informacje o grupach (/etc/group) JeÅ›li na przykÅ‚ad informacja o twoim haÅ›le jest zapisana w bazie haseÅ‚ NIS, bÄ™dziesz mógÅ‚ siÄ™ zalogować na wszystkich maszynach na sieci, które majÄ… uruchomionego klienta NIS. Sun jest znakiem towarowym Sun Microsystems, Inc. licencjonowane dla SunSoft, Inc. 33.. NNIISS ,, NNYYSS cczzyy NNIISS++ ?? 33..11.. lliibbcc 44//55 zz ttrraaddyyccyyjjnnyymm NNIISS cczzyy NNYYSS ?? Wybór pomiÄ™dzy "tradycyjnym NIS" czy kodem NIS w bibliotece NYS jest wyborem pomiÄ™dzy lenistwem i rozwojem a elastycznoÅ›ciÄ… i zamiÅ‚owaniem do przygody. Kod "tradycjnego NIS" jest w standardowej bibliotece C i istnieje już dÅ‚ugo i czasem cierpi z powodu swojego wieku i pewnej nieelastycznoÅ›ci. Kod NIS w bibliotece NYS wymaga rekompilacji biblioteki libc, aby wÅ‚Ä…czyć do niej kod NYS (albo możesz wziąć już skompilowanÄ… wersjÄ™ libc od kogoÅ› kto już jÄ… skompilowaÅ‚). InnÄ… różnicÄ… jest to, że "tradycyjny NIS" ma pewnÄ… obsÅ‚ugÄ™ NIS Netgroups, której NYS nie ma. Z drugiej strony NYS pozwala obsÅ‚ugiwać Shadow Passwords w sposób przezroczysty. "Tradycyjny NIS" nie obsÅ‚uguje Shadow passwords przez NIS. Zapomnij o tym wszystkim jeÅ›li używasz nowej biblioteki GNU C 2.x (aka libc6). Ma ona rzeczywistÄ… obsÅ‚ugÄ™ NSS (Name Switch Service), co czyni jÄ… bardzo elastycznÄ… oraz zawiera obsÅ‚ugÄ™ nastÄ™pujÄ…cych map NIS/NIS+: aliases, ethers, group, hosts, netgroups, networks, protocols, publickey, passwd, rpc, services i shadow. Biblioteka GNU C nie ma żadnych problemów z shadow password przez NIS. 33..22.. NNIISS cczzyy NNIISS++ ?? Wybór miÄ™dzy NIS a NIS+ jest prosty - użyj NIS-a jeÅ›li nie musisz używać NIS+ czy nie musisz stosować zaostrzonego bezpieczeÅ„stwa. Z NIS+ jest _o wiele_ wiÄ™cej kÅ‚opotów jeÅ›li chodzi o administracjÄ™ (jest nim caÅ‚kiem Å‚atwo zarzÄ…dzać od strony klienta, ale serwer to horror). Innym problemem jest fakt, że wsparcie dla NIS+ w Linux-ie jest ciÄ…gle w fazie rozwoju - potrzebujesz najnowszej biblioteki glibc, albo musisz poczekać na glibc 2.1. Istnieje wersja zastÄ™pcza glibc z obsÅ‚ugÄ… NIS+ dla libc5. 44.. JJaakk ttoo ddzziiaaÅ‚Å‚aa.. 44..11.. JJaakk ddzziiaaÅ‚Å‚aa NNIISS.. W caÅ‚ej sieci musi być przynajmniej jedna maszyna dziaÅ‚ajÄ…ca jako serwer NIS. Możesz zrobić wiÄ™cej serwerów NIS, każdy dla innej "domeny" NIS - albo możesz mieć współpracujÄ…ce serwery NIS, gdzie jeden ma być głównym serwerem NIS (master) a wszystkie inne sÄ… tak zwanymi slave NIS servers (to znaczy dla pewnej "domeny" NIS!) - albo możesz to pomieszać. Serwery slave posiadajÄ… tylko kopiÄ™ baz danych NIS i otrzymujÄ… te kopie od głównego serwera NIS kiedy tylko robione sÄ… jakieÅ› zmiany w głównej bazie. W zależnoÅ›ci od liczby komputerów w twojej sieci, możesz zdecydować siÄ™ na instalacjÄ™ jednego lub wiÄ™kszej iloÅ›ci serwerów slave. Kiedy tylko serwer NIS jest unieruchamiany (goes down) albo jest zbyt wolny w odpowiedziach na żądania, klient NIS-a podÅ‚Ä…czony do tego serwera spróbuje znaleźć ten, który dziaÅ‚a albo jest szybszy. Bazy danych NIS sÄ… w tak zwanym formacie DBM, pochodzÄ…cym od baz danych ASCII. Na przykÅ‚ad, pliki /etc/passwd i /etc/group mogÄ… być bezpoÅ›rednio zamienione na DBM przy pomocy oprogramowania translacyjnego ASCII-na-DBM ("makedbm" - dostarczanym wraz z serwerem). Główny serwer NIS powinien posiadać obie bazy - tak ASCII jak i DBM. Serwery slave zostanÄ… powiadomione o każdej 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. Stare wersje ypbind wysyÅ‚ajÄ… adres rozgÅ‚oszeniowy (broadcast), aby znaleźć dziaÅ‚ajÄ…cy serwer NIS. Jest to niebezpieczne ponieważ każdy może zainstalować serwer NIS i odpowiedzieć na takie zapytanie. Nowsze wersje ypbind (3.3 czy mt) pobierajÄ… adres serwera z pliku konfiguracyjnego - i nie ma potrzeby wysyÅ‚ania adresu rozgÅ‚oszeniowego. 44..22.. JJaakk ddzziiaaÅ‚Å‚aa NNIISS++.. NIS+ to nowa wersja "network information nameservice" z Sun-a. NajwiÄ™kszÄ… różnicÄ… pomiÄ™dzy NIS i NIS+ jest obsÅ‚uga kodowania danych i autentykacja poprzez bezpieczne RPC w NIS+. Model nazewnictwa w NIS+ jest zbudowany w postaci struktury drzewiastej. Każdy wÄ™zeÅ‚ w drzewie odpowiada objektowi NIS+, których mamy sześć typów: katalog, pozycja (entry), grupa, doÅ‚Ä…czenie, tablica i prywatne. Katalog NIS+, który tworzy podstawÄ™ przestrzeni nazw w NIS+ nazywa siÄ™ katalogiem "root". SÄ… dwa specjalne katalogi NIS+: org_dir i groups_dir. Katalog org_dir skÅ‚ada siÄ™ z wszystkich tablic administracyjnych, takich jak passwd, hosts i mail_aliases. Katalog groups_dir skÅ‚ada siÄ™ z grup objektów NIS+, które używane sÄ… do kontroli dostÄ™pu. Kolekcja org_dir, groups_dir i ich katalogów nadrzÄ™dnych to domena NIS+. 55.. PPoorrttmmaappppeerr RRPPCC Aby móc uruchomić jakikolwiek z wymienionych poniżej programów, bÄ™dziesz musiaÅ‚ uruchomić program /usr/bin/portmap. Niektóre dystrybucje majÄ… skrypt uruchamiajÄ…cy ten demon w plikach startowych /sbin/init.d/ czy /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, który zamienia numery programowe RPC na numery portów protokoÅ‚u TCP/IP (albo UDP/IP). Musi być on uruchomiony, aby móc używać na tej maszynie odwoÅ‚aÅ„ RPC (co wÅ‚aÅ›nie robi oprogramowanie klienta NIS/NIS+) do serwerów RPC (takich jak serwer NIS czy NIS+). Kiedy serwer RPC jest startowany, poinformuje on portmap-a na których portach nasÅ‚uchuje, i jakimi numerami programowymi RPC może sÅ‚użyć. Kiedy klient chce odwoÅ‚ać siÄ™ przez RPC do danego numeru programowego, najpierw skontaktuje siÄ™ z portmap-em na maszynie serwerowej, aby okreÅ›lić numer portu, do którego należy wysÅ‚ać pakiety RPC. Normalnie, standardowe serwery RPC sÄ… startowane przez inetd(8), wiÄ™c portmap musi dziaÅ‚ać zanim wystartuje inetd. Dla bezpieczeÅ„stwa portmapper potrzebuje serwisu czasu (Time Service). Upewnij siÄ™ czy serwis ten jest wÅ‚Ä…czony 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 WAÅ»NE: Nie zapomnij zresetować (kill -HUP) inetd-a po dokonaniu zmian jego pliku konfiguracyjnym ! 66.. CCzzeeggoo ppoottrrzzeebbuujjeesszz,, aabbyy uussttaawwiićć NNIISS?? 66..11.. SSpprraawwddźź cczzyy jjeesstteeśś sseerrwweerreemm,, sseerrwweerreemm ssllaavvee cczzyy kklliieenntteemm.. Aby odpowiedzieć na to pytanie musisz rozważyć dwa przypadki: 1. Twoja maszyna bÄ™dzie częściÄ… sieci z istniejÄ…cymi serwerami NIS. 2. Nie masz jeszcze żadnego serwera NIS w sieci. W pierwszym przypadku potrzebujesz tylko programów klienta (ypbind, ypwhich, ypcat, yppoll, ypmatch). Najważniejszym programem jest ypbind. Program ten musi być uruchomiony przez caÅ‚y czas, to znaczy powinien zawsze pojawiać siÄ™ w liÅ›cie procesów. Jest to proces-demon i musi być startowany z plików startowych systemu (np. /etc/init.d/nis, /sbin/init.d/ypclient, /etc/rc.local, /etc/rc.d/init.d/ypbind). Jak tylko ypbind jest uruchomiony, twój komputer staje siÄ™ klientem NIS. W drugim przypadku, jeÅ›li nie masz serwerów NIS, to bÄ™dziesz także potrzebowaÅ‚ programu serwera NIS (zwykle zwanego ypserv). Sekcja ``Konfiguracja serwera NIS'' 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 obsÅ‚uguje koncept master- slave omówiony w sekcji 4.1. Jest jeszcze jeden darmowy serwer NIS, zwany "yps", napisany przez Tobiasa Rebera w Niemczech, który obsÅ‚uguje koncept master-slave, ale ma inne ograniczenia i nie jest wspierany od dÅ‚ugiego czasu. 66..22.. OOpprrooggrraammoowwaanniiee.. Biblioteka systemowa "/usr/lib/libc.a" (wersja 4.4.2 i nowsza) czy biblioteka dzielona "/lib/libc.so.x" zawierajÄ… wszystkie odwoÅ‚ania systemowe niezbÄ™dne do skompilowania oprogramowania klienta i serwera NIS. Do biblioteki glibc 2.x, potrzebujesz także biblioteki /lib/libnsl.so.1. Niektórzy podawali, że NIS dziaÅ‚a tylko z "/usr/lib/libc.a" w wersji 4.5.21 i nowszej, wiÄ™c jeÅ›li chcesz być zabezpieczony, to nie używaj starszych bibliotek. Oprogramowanie klienckie NIS można znaleźć w: Adres Katalog Nazwa Pliku ftp.kernel.org /pub/linux/utils/net/NIS yp-tools-2.2.tar.gz ftp.kernel.org /pub/linux/utils/net/NIS ypbind-mt-1.4.tar.gz ftp.kernel.org /pub/linux/utils/net/NIS ypbind-3.3.tar.gz ftp.kernel.org /pub/linux/utils/net/NIS ypbind-3.3-glibc5.diff.gz ftp.uni-paderborn.de /linux/local/yp yp-clients-2.2.tar.gz ftp.icm.edu.pl /pub/Linux/sunsite/system/network/admin yp-clients-2.2.tar.gz [Od tÅ‚umacza: JeÅ›li jesteÅ› w Polsce, to użyj raczej tego ostatniego adresu.] Jak już masz oprogramowanie, postÄ™puj zgodnie z instrukcjami przychodzÄ…cymi wraz z nim. yp-clients 2.2 nadaje siÄ™ do użytku z libc4 i libc5 aż do 5.4.20. libc 5.4.21 i glibc 2.x potrzebujÄ… yp-tools 1.4.1 lub nowsze. Nowe yp-tools 2.0 bÄ™dÄ… działąć z każdÄ… bibliotekÄ… libc dla Linux-a. Ponieważ byÅ‚ pewien bÅ‚Ä…d w kodzie NIS-a nie powinieneÅ› używać libc 5.4.21-35. W zamian użyj 5.4.36 lub nowszej, inaczej wiÄ™kszość programów YP nie bÄ™dzie dziaÅ‚aÅ‚a. ypbind 3.3 bÄ™dzie dziaÅ‚ać także ze wszystkimi bibliotekami. JeÅ›li używasz gcc 2.8.x lub nowszej wersji, egcs lub glibc 2.x, to powinieneÅ› naÅ‚ożyć Å‚atÄ™ ypbind-3.3-glibc5.diff na ypbind 3.3. Nie powinieneÅ› nigdy używać ypbind z yp-clients 2.2. ypbind-mt jest nowym, wielowÄ…tkowym demonem; do dziaÅ‚ania potrzebuje jÄ…dra w wersji 2.2 i glibc 2.1 lub nowszej. 66..33.. DDeemmoonn yyppbbiinndd.. ZakÅ‚adajÄ…c, że udaÅ‚o ci siÄ™ skompilować oprogramowanie jesteÅ› gotowy do zainstalowania go. Odpowiednim miejscem dla demona ypbind bÄ™dzie /usr/sbin. Niektórzy mogÄ… ci mówić, że nie potrzebujesz ypbind w systemie z NYS. Jest to bÅ‚Ä™dne, gdyż ypwhich i ypcat potrzebujÄ… go. BÄ™dziesz to oczywiÅ›cie musiaÅ‚ zrobić jako root. Inne programy (ypwhich, ypcat, yppoll, ypmatch) powinny znaleźć siÄ™ w katalogu dostÄ™pnym dla wszystkich użytkowników, zwykle /usr/bin. Nowsze wersje ypbind posiadajÄ… plik konfiguracyjny - /etc/yp.conf. Możesz tam na staÅ‚e wpisać serwer NIS - wiÄ™cej informacji w podrÄ™czniku systemowym - man ypbind(8). Potrzebujesz tego pliku także do NYS. PrzykÅ‚ad: ypserver voyager ypserver defiant ypserver ds9 JeÅ›li system może rozwinąć nazwÄ™ bez NIS, to mógÅ‚byÅ› użyć tej nazwy. W przeciwnym wypadku musisz użyć adresu IP. W ypbind 3.3 jest bÅ‚Ä…d; tylko ostatni adres zostanie użyty (ds9 w tym przykÅ‚adzie). Wszystkie pozostaÅ‚e pozycje zostanÄ… zignorowane. ypbind-mt obsÅ‚uży to poprawnie i użyje tego, który odpowiedziaÅ‚ pierwszy. Dobrym pomysÅ‚em bÄ™dzie przetestowanie ypbind przed wprowadzeniem go do plików startowych. Aby to zrobić postÄ™puj tak: · Upewnij siÄ™, że masz ustawionÄ… nazwÄ™ domeny YP. JeÅ›li nie, to wydaj polecenie: /bin/domainname domena.nis gdzie domena.nis powinno być jakimÅ› Å‚aÅ„cuchem zwykle _NIE_ zwiÄ…zanym z DNS-em twojej maszyny! Powodem tego jest, to że zewnÄ™trznym wÅ‚amywac­ zom jest wtedy trochÄ™ trudniej zdobyć bazÄ™ danych z hasÅ‚ami z twojego serwera NIS. JeÅ›li nie wiesz jaka jest nazwa domeny NIS w twojej sieci, to zapytaj swojego administratora. · uruchom "/usr/bin/portmap" jeÅ›li nie jest jeszcze uruchomiony. · stwórz katalog "/var/yp" jeÅ›li go nie ma. · uruchom "/usr/bin/ypbind" · użyj polecenia "rpcinfo -p localhost", aby sprawdzić czy ypbind zarejestrowaÅ‚ swój serwis u portmapper-a. CoÅ› takiego powinno siÄ™ pojawić na ekranie: program vers proto port 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100007 2 udp 637 ypbind 100007 2 tcp 639 ypbind lub 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 Zależnie od wersji ypbind jakiej używasz. · możesz także uruchomić "rpcinfo -u localhost ypbind". Polecenie to powinno dać mniej wiÄ™cej taki wynik: program 100007 version 2 ready and waiting lub program 100007 version 1 ready and waiting program 100007 version 2 ready and waiting Wynik ten zależy od wersji ypbind, którÄ… zainstalowaÅ‚eÅ›. WażnÄ… wiadomoÅ›ciÄ… jest tutaj tylko "version 2". W tym momencie powinieneÅ› móc używać programów klienckich NIS takich jak ypcat itp... Na przykÅ‚ad "ypcat passwd.byname" poda ci caÅ‚Ä… bazÄ™ danych NIS z hasÅ‚ami. WAÅ»NE: JeÅ›li pominÄ…Å‚eÅ› test, to upewnij siÄ™, że ustawiÅ‚eÅ› nazwÄ™ domeny i stworzyÅ‚eÅ› katalog /var/yp Ten katalog MUSI istnieć, aby ypbind poprawnie siÄ™ uruchomiÅ‚. Aby sprawdzić czy nazwa domeny zostaÅ‚a ustawiona poprawnie użyj programu /bin/ypdomainname z pakietu yp-tools 2.2. Używa on funkcji yp_get_default_domain(), która jest bardziej restrykcyjna. na przykÅ‚ad nie pozwala na domenÄ™ "(none)", która jest domyÅ›lnÄ… w Linux-ie. i stwarza wiele kÅ‚opotów. JeÅ›li test siÄ™ powiódÅ‚ możesz teraż zmodyfikować pliki w skryptach startowych twojego systemu, tak żeby ypbind startowaÅ‚ podczas startu systemu. Upewnij siÄ™, że nazwa domeny zostanie ustawiona zanim wystartujesz ypbind. Cóż, to wszystko. Zresetuj komputer i obserwuj komunikaty podczas startu, żeby zobaczyć czy ypbind wÅ‚aÅ›ciwie wystartowaÅ‚. 66..44.. UUssttaawwiiaanniiee kkiilleennttaa NNIISS pprrzzyy uużżyycciiuu TTrraaddyyccyyjjnneeggoo NNIISS--aa.. Do sprawdzania nazw musisz ustawić (albo dodać) "nis", do linii kolejnoÅ›ci sprawdzania w pliku /etc/host.conf. Przeczytaj stronÄ™ podrÄ™cznika systemowego "resolv+.8", aby dowiedzieć siÄ™ wiÄ™cej szczegółów. Na maszynach klienckich dodaj nastÄ™pujÄ…cÄ… liniÄ™ w /etc/passwd: +:::::: Możesz także użyć znaczków +/-, aby wÅ‚Ä…czyć/wyÅ‚Ä…czyć lub zmienić użytkowników. JeÅ›li chcesz wyÅ‚Ä…czyć użytkownika guest dodaj -guest do swojego pliku /etc/passwd. Chcesz użyć innej powÅ‚oki (np. ksh) dla użytkownika "linux"? Nie ma problemu, po prostu dodaj do swojego /etc/passwd "+linux::::::/bin/ksh" (bez cudzysÅ‚owiów). Pola, których nie chcesz zmieniać muszÄ… pozostać puste. MógÅ‚byÅ› także użyć Netgroups do kontroli użytkowników. Na przykÅ‚ad, aby pozwolić tylko miquels, dth, ed i wszystkim czÅ‚onkom grupy sieciowej sysadmin na login, ale żeby dane o kontach wszystkich innych użytkowników byÅ‚y dostÄ™pne użyj: +miquels::::::: +ed::::::: +dth::::::: +@sysadmins::::::: -ftp +:*::::::/etc/NoShell Zauważ, że na Linuksie możesz także zmienić pole z hasÅ‚em, jak to zrobiliÅ›my w tym przykÅ‚adzie. UsunÄ™liÅ›my także login "ftp", tak wiÄ™c nie jest on już znany i anonimowe ftp nie bÄ™dzie dziaÅ‚ać. Netgroup wyglÄ…daÅ‚oby tak: sysadmins (-,software,) (-,kukuk,) WAÅ»NE: Cecha netgroup jest zaimplementowana poczÄ…wszy od libc 4.5.26. JeÅ›li masz wersjÄ™ biblioteki wczeÅ›niejszÄ… niż 4.5.26, każdy użytkownik w bazie danych z hasÅ‚ami ma dostÄ™p do twojego Linux-a jeÅ›li masz uruchomiony "ypbind". 66..55.. UUssttaawwiiaanniiee kklliieennttaa NNIISS uużżyywwaajjÄ…Ä…cc NNYYSS.. Wszystko co jest potrzebne, to to, żeby plik konfiguracyjny (/etc/yp.conf) wskazywaÅ‚ na poprawn-y/e serwer(y). Także plik konfiguracyjny Name Service Switch (/etc/nsswitch.conf) musi być poprawnie ustawiony. PowinieneÅ› zainstalować ypbind. Nie jest on potrzebny dla libc, ale narzÄ™dzia NIS(YP) go potrzebujÄ…. JeÅ›li chcesz używać cechy wÅ‚Ä…czania/wyÅ‚Ä…czania użytkownika (+/-guest/+@admins), musisz użyć "passwd: compat" i "group: compat" w pliku nsswitch.conf. W tym przypadku musisz użyć "shadow: files nis" ŹródÅ‚a NYS sÄ… częściÄ… źródeÅ‚ libc 5. Kiedy uruchamiasz configure, za pierwszym razem odpowiedz "NO" na pytanie "Values correct", potem odpowiedz "YES", na "Build a NYS libc from nys". 66..66.. UUssttaawwiiaanniiee kklliieennttaa NNIISS uużżyywwaajjÄ…Ä…cc gglliibbcc 22..xx Glibc używa "tradycyjnego NIS", tak wiÄ™c musisz uruchomić ypbind. Plik konfiguracyjny Name Service Switch (/etc/nsswitch.conf) musi być poprawnie ustawiony. JeÅ›li używasz trybu kompatybilnego z passwd, shadow czy group, musisz dodać "+" na koÅ„cu tego pliku, i możesz używać cechy wÅ‚Ä…czania/wyÅ‚Ä…czania użytkownika. Konfiguracja jest dokÅ‚adnie taka sama jak pod Solaris-em 2.x. 66..77.. PPlliikk nnsssswwiittcchh..ccoonnff Plik /etc/nsswitch.conf okreÅ›la kolejność w jakiej odbywa siÄ™ sprawdzanie kiedy pojawi siÄ™ żądanie pewnej informacji, tak samo jak plik /etc/host.conf, który okreÅ›la kolejność sprawdzania adresów hostów. Na przykÅ‚ad linia: hosts: files nis dns okreÅ›la, że funkcje sprawdzania adresów hostów powinny najpierw szukać w lokalnym pliku /etc/hosts, potem w bazie NIS i na koÅ„cu w DNS-ie (/etc/resolv.conf i named), gdzie jeÅ›li nie znaleziono odpowiedzi pojawia siÄ™ bÅ‚Ä…d. Ten plik musi być czytelny dla każdego użytkownika. WiÄ™cej informacji znajdziesz na stronie podrÄ™cznika systemowego nsswicth.5 lub nsswitch.conf.5. 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 # zakoÅ„czyć siÄ™, jeÅ›li poszukiwania w poprzedniej pozycji nic nie # daÅ‚y. Zauważ, że jeÅ›li poszukiwania nie powiodÅ‚y siÄ™ z # jakichÅ› innych powodów (jak nie odpowiadajÄ…cy serwer NIS), to # poszukiwania sÄ… kontynuowane z nastÄ™pnÄ… 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 # JeÅ›li masz libc5 musisz użyć shadow: files nis 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Ä… obsÅ‚ugiwane tylko przez glibc 2.x. JeÅ›li nie ma zasad (rules) shadow w /etc/nsswitch.conf, glibc użyje zasady (rule) passwd do sprawdzenia. Jest wiÄ™cej modułów szukania dla glibc jak hesoid. WiÄ™cej informacji znajdziesz w dokumentacji glibc. 66..88.. SShhaaddooww PPaasssswwoorrddss zz NNIISS ii PPAAMM.. Shadow passwords przez NIS to zawsze zÅ‚y pomysÅ‚. StraciÅ‚eÅ› ochronÄ™, którÄ… daje shadow passwords i tylko niewiele bibliotek C ma obsÅ‚ugÄ™ takiej kombinacji. Dobrym pomysÅ‚em na unikniÄ™cie przesyÅ‚ania shadow paswords przez NIS jest umieÅ›cić tylko użytkowników lokalnego systemu do pliku /etc/shadow. UsuÅ„ pozycje dotyczÄ…ce użytkowników NIS z bazy shadow i umieść hasÅ‚o spowrotem w passwd. Tak że możesz używać shadow dla logowania siÄ™ jako root i normalnych haseÅ‚ dla użytkowników NIS. Ma to tÄ™ zaletÄ™, że bÄ™dzie to dziaÅ‚aÅ‚o z każdym klientem NIS. 66..88..11.. LLiinnuuxx JedynÄ… bibliotekÄ… jaka obsÅ‚uguja kombinacjÄ™ Shadow passwords prze NIS jest libc 2.x. Libc5 nie potrafi tego obsÅ‚użyć. Libc5 skompilowana z obsÅ‚ugÄ… NYS posiada trochÄ™ kodu na ten temat. Jednak kod ten jest miernej wartoÅ›ci i nie dziaÅ‚a poprawnie z wszystkimi pozycjami shadow. 66..88..22.. SSoollaarriiss Solaris nie obsÅ‚uguje takiej kombinacji w ogóle. 66..88..33.. PPAAMM PAM nie obsÅ‚uguje Shadow Passwords przez NIS,a szczególnie pam_pwdb/libpwdb. Jest to poważny problem dla użytkowników RedHat 5.x. JeÅ›li masz glibc i PAM, to musisz zmienić pozycje w plikach /etc/pam.d/*. ZamieÅ„ wszystkie zasady dotyczÄ…ce pam_pwdb na moduÅ‚y pam_unix_*. Z powodu bÅ‚Ä™du w module pam_unix_auth.so nie bÄ™dzie on zawsze dziaÅ‚aÅ‚. PrzykÅ‚adowy plik /etc/pam.d/login może wyglÄ…dać tak: #%PAM-1.0 auth required /lib/security/pam_securetty.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 Do autoryzacji potrzbujesz moduÅ‚u pam_unix_auth.so, do kont pam_unix_acct.so, do haseÅ‚ pam_unix_passwd.so a do sesji pam_unix_session.so. 77.. CCzzeeggoo ppoottrrzzeebbuujjeesszz ddoo uussttaawwiieenniiaa NNIISS++?? 77..11.. OOpprrooggrraammoowwaanniiee.. Klient dla NIS+ na Linuxa zostaÅ‚ napisany dla biblioteki GNU C 2. Jest także wersja dla libc5, ponieważ wiÄ™kszość komercyjnych aplikacji jest z niÄ… skompilowane i nie można ich przekompilować z bibliotekÄ… glibc. Z bibliotekÄ… tÄ… i NIS+ sÄ… problemy: Nie mógÅ‚byÅ› doÅ‚Ä…czyć statycznie tej biblioteki do programów i programy skompilowane z tÄ… bibliotekÄ… nie bÄ™dÄ… dziaÅ‚aÅ‚y z innÄ…. Musisz Å›ciÄ…gnąć i skompilować najnowszÄ… bibliotekÄ™ GNU C 2.1 dla platformy Intela albo biblioteki GNU C 2.1.1 dla platform 64-bitowych. Potrzebujesz także systemu opartego na glibc jak RedHat 5.x, Debian 2.x czy SuSE Linux 6.x. W każdej dystrybucji musisz przekompilować kompilator gcc/g++, libstdc++ i ncurses. W RedHat musisz wiele zmienić w konfiguracji PAM. W SuSE 6.0 musisz przekompilować pakiet Shadow Passwords. Oprogramowanie klienckie NIS+ można pobrać z: Adres Katalog Nazwa Pliku ftp.funet.fi /pub/gnu/funet libc-*, glibc-crypt-*, glibc-linuxthreads-* ftp.kernel.org /pub/linux/utils/net/NIS+ nis-utils-19990223.tar.gz ftp.kernel.org /pub/linux/utils/net/NIS+ pam_keylogin-1.2.tar.gz Dystrybucje oparte na glibc można Å›ciÄ…gnąć z: Adres Katalog ftp.redhat.com /pub/redaht/redhat-5.2 ftp.debian.org /pub/debian/dists/stable ftp.icm.edu.pl /pub/Linux/redhat ftp.icm.edu.pl /pub/Linux/debian [Od tÅ‚umacza: JeÅ›li jesteÅ› w Polsce, to użyj dwóch ostatnich adresów.] Aby skompilować bibliotekÄ™ GNU C postÄ™puj zgodnie z instrukcjami doÅ‚Ä…czonymi do niej. Tutaj możesz znaleźć zaÅ‚atanÄ… libc5, opartÄ… o źródÅ‚a 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Å› także zajrzeć do http://www.suse.de/~kukuk/linux/nisplus.html , aby zdobyć wiÄ™cej informacji i najnowsze źródÅ‚a. 77..22.. KKoonnffiigguurraaccjjaa kklliieennttaa NNIISS++.. WAÅ»NE: 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 stwórz listy uwierzytelniajÄ…ce dla nowego klienta na serwerze NIS+. Upewnij siÄ™, że dziaÅ‚a portmap. Potem sprawdź czy na twoim Linux-ie jest ten sam czas co na serwerze. W bezpiecznym RPC masz tylko 3 minuty, w ciÄ…gu których listy uwierzytelniajÄ…ce sÄ… aktualne. Dobrym pomysÅ‚em jest uruchomienie na wszystkich hostach xntpd. Potem uruchom domainname domena.nisplus nisinit -c -H aby zainicjalizować zimny start file. Przeczytaj stronÄ™ podrÄ™cznika systemowego o nisinit i znajdź jego opcje. Upewnij siÄ™, że nazwa domeny bÄ™dzie zawsze ustawiona po resecie. JeÅ›li nie wiesz jaka jest nazwa domeny w twojej sieci, zapytaj administratora. Teraz powinieneÅ› zmienić swój plik konfiguracyjny /etc/nsswitch.conf. Upewnij siÄ™, że jedynym serwisem po publickey jest nisplus ("publickey: nisplus") i nic wiÄ™cej ! Potem uruchom keyserv i upewnij siÄ™, że zawsze bÄ™dzie startowany jako nastÄ™py demon po portmaperze podczas startu. Uruchom: keylogin -r aby zapisać tajny klucz (secretkey) root-a na twoim systemie. (Mam nadziejÄ™, że dodaÅ‚eÅ› klucz publiczny dla nowego hosta na serwerze NIS+?). "niscat passwd.org_dir" powinno pokazać ci teraz wszystkie pozycje w bazie danych z hasÅ‚ami. 77..33.. NNIISS++,, kkeeyyllooggiinn,, llooggiinn ii PPAAMM.. Kiedy użytkownik siÄ™ loguje musi ustawić swój tajny klucz dla keyserv- a. Robi siÄ™ to przez wywoÅ‚anie "keylogin". Login z pakietu shadow zrobi to za użytkownika jeÅ›li zostaÅ‚ skompilowany z bibliotekÄ… glibc 2.1. W przypadku login-u PAM musisz zainstalować pam_keylogin-1.2.tar.gz i zmodyfikować plik /etc/pam.d/login, tak aby używaÅ‚ pam_unix_auth, a nie pwdb, które nie obsÅ‚uguje NIS+. Na przykÅ‚ad: #%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 77..44.. PPlliikk nnsssswwiittcchh..ccoonnff.. Plik /etc/nsswitch.conf okreÅ›la kolejność w jakiej odbywa siÄ™ sprawdzanie kiedy pojawi siÄ™ żądanie pewnej informacji, tak samo jak plik /etc/host.conf, który okreÅ›la kolejność sprawdzania adresów hostów. Na przykÅ‚ad linia: hosts: files nis dns okreÅ›la, że funkcje sprawdzania adresów hostów powinny najpierw szukać w lokalnym pliku /etc/hosts, potem w bazie NIS i na koÅ„cu w DNS-ie (/etc/resolv.conf i named), gdzie jeÅ›li nie znaleziono odpowiedzi, to zwracany jest bÅ‚Ä…d. 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 # zakoÅ„czyć siÄ™, jeÅ›li poszukiwania w poprzedniej pozcyji nic nie # daÅ‚y. Zauważ, że jeÅ›li poszukiwania nie powiodÅ‚y siÄ™ z # jakichÅ› innych powodów (jak nie odpowiadajÄ…cy serwer NIS), to # poszukiwania sÄ… kontynuowane z nastÄ™pnÄ… 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 88.. KKoonnffiigguurraaccjjaa sseerrwweerraa NNIISS.. 88..11.. PPrrooggrraamm yyppsseerrvv.. Dokument ten opisuje tylko jak skonfigurować serwer NIS oparty na "ypserv". Oprogramowanie serwera NIS można znaleźć na: Adres Katatlog Nazwa pliku ftp.kernel.org /pub/linux/utils/net/NIS ypserv-1.3.6.tar.gz Możesz także zajrzeć do http://www.suse.de/~kukuk/linux/nis.html po wiÄ™cej informacji i najnowsze źródÅ‚a. Ustawianie serwera jest takie samo dla tradycyjnego NIS i NYS. Skompiluj oprogramowanie, aby wygenerować programy "ypserv" i "makedbm". Możesz skonfigurować program ypserv, aby używaÅ‚ pliku securenets albo tcp_wrappers. Tcp_wrappers sa o wiele bardziej elastyczne, ale wielu ludzi ma z tym poważne kÅ‚opoty. A niektóre pliki konfiguracyjne mogÄ… powodować przeciek w pamiÄ™ci (?? memory leak: może autor miaÅ‚ na myÅ›li brak pamiÄ™ci ?? - lack of memory). JeÅ›li masz problemy z ypserv skompilowanym dla tcp_wrappers, to przekompiluj go do używania pliku securenets. ypserv --version, pokaże jakÄ… masz wersjÄ™. JeÅ›li uruchamiasz swój serwer jako główny, okreÅ›l jakie pliki majÄ… być dostÄ™pne przez NIS i wtedy dodaj lub usuÅ„ odpowiednie pozycje w /var/yp/Makefile. Zawsze powinieneÅ› zaglÄ…dać do plików Makefile i zapoznać siÄ™ z opcjami na poczÄ…tku pliku. PomiÄ™dzy ypserv 1.1 a 1.2 byÅ‚a jedna duża zmiana. Od wersji 1.2, ypserv "keszuje" uchwyty plików (file handles). Oznacza to, że zawsze kiedy stworzysz nowÄ… mapÄ™ musisz wywoÅ‚ać makedbm z opcjÄ… -c. Upewnij siÄ™, że używasz nowego /var/yp/Makefile z ypserv 1.2 lub nowszego, albo dodaj opcjÄ™ -c do makedbm w pliku Makefile. JeÅ›li tego nie zrobisz, ypserv bÄ™dzie wciąż używaÅ‚ starych map zamiast uaktualnionych. Teraz zmodyfikuj /var/yp/securenets i /etc/ypserv.conf. WiÄ™cej informacji na stronach podrÄ™cznika 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 1 ready and waiting program 100004 version 2 ready and waiting Linii z "version 1" może nie być; zależnie od wersji ypserv i konfiguracji, której używasz. Tylko w klientach SunOS 4.x jest to wymagane. Teraz wygeneruj bazÄ™ danych NIS (YP). Na serwerze głównym uruchom: % /usr/lib/yp/ypinit -m na slave upewnij siÄ™, że dziaÅ‚a ypwhich -m. Potem uruchom % /usr/lib/yp/ypinit -s masterhost To wszystko, twój serwer już dziaÅ‚a. JeÅ›li masz wiÄ™ksze problemy, możesz wystartować ypserv i ypbind i trybie Å›ledzenia (debug) w innym oknie. Komunikaty pojawiajÄ…ce siÄ™ w tym trybie powinny ci powiedzieć co jest nie tak. JeÅ›li musisz uaktualnić mapÄ™, to uruchom make w katalogu /var/yp na master serwerze NIS. Uaktualni to mapÄ™ jeÅ›li plik źródÅ‚owy jest nowszy i przeÅ›le pliki do serwerów slave. Nie używaj ypinit do uaktualniania map. Możesz zmodyfikować crontab root-a *na serwerze slave* i dodać poniższe 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 jeÅ›li jakieÅ› uaktualnienie zostaÅ‚o przeoczone z powodu np. wyÅ‚Ä…czenia serwera slave podczas modyfikowania bazy głównej. Serwer slave możesz dodać kiedykolwiek później. Najpierw upewnij siÄ™, że nowy serwer slave ma pozwolenie na kontaktowanie siÄ™ z masterem NIS. Potem uruchom % /usr/lib/yp/ypinit -s masterhost na nowym slavie. Na serwerze master dodaj nazwÄ™ nowego serwera slave do pliku /var/yp/ypservers uruchom make w #include #include 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 użytkownikiem jako parametr, spowoduje wyÅ›wietlenie wszystkich informacji jakie uzyska funkcja getpwnam dla tego użytkownika. Powinno ci to pokazać, która pozycja jest niepoprawna. Najpopularniejszym problemem jest zapisanie "*" w polu hasÅ‚a. Razem z bibliotekÄ… GNU C 2.1 (glibc 2.1) dostarczane jest narzÄ™dzie getent. Użyj tego programu zamiast powyższego na systemie z tÄ… bibliotekÄ…. Możesz spróbować: getent passwd lub getent passwd login 1100.. PPooppuullaarrnnee pprroobblleemmyy ii rroozzwwiiÄ…Ä…zzyywwaanniiee iicchh.. 1. Biblioteki do 4.5.19 sÄ… niepoprawne. NIS nie bÄ™dzie z nimi współpracowaÅ‚. 2. JeÅ›li uaktualnisz biblioteki z 4.5.19 na 4.5.24, to polecenie su nie dziaÅ‚a. Potrzebujesz tego polecenia ze Slackware 1.2.0. Przypadkowo tam możesz znaleźć uaktulanione biblioteki. 3. Kiedy serwer NIS siÄ™ wyÅ‚Ä…czy i potem uruchomi ponownie ypbind zaczyna wypisywać coÅ› takiego: yp_match: clnt_call: RPC: Unable to receive; errno = Connection refused i użytkownicy zarejestrowani w bazie danych NIS nie mogÄ… siÄ™ zalo­ gować. Spróbuj zalogować siÄ™ jako root i zakoÅ„cz ypbind i uruchom go ponownie. Uaktualnienie do ypbind 3.3 lub nowszego także powinno pomóc. 4. Po uaktualnieniu libc do wersji nowszej niż 5.4.20, narzÄ™dzia YP nie bÄ™dÄ… dziaÅ‚ać. Potrzebujesz w takim przypadku yp-tools w wersji 1.2 lub nowszej dla libc >= 5.4.21 i glibc 2.x. Dla wczeÅ›niejszych wersji libc potrzbujesz yp-clients 2.2. yp-tools 2.x powinny dziaÅ‚ać ze wszystkimi bibliotekami. 5. W libc 5.4.21-35 yp_maplist jest popsute, potrzbujesz 5.4.36 lub nowszej wersji, albo niektóre programy z YP jak np. ypwich bÄ™dÄ… przerywać dziaÅ‚anie z bÅ‚Ä™dem _S_e_g_m_e_n_t_a_t_i_o_n _f_a_u_l_t. 6. libc 5 z tradycyjnym NIS nie obsÅ‚uguje shadow passwords przez NSI. Potrzebujesz libc5 + NYS lub glibc 2.x 7. ypcat shadow nie pokazuje mapy shadow. Jest to poprawne - nazwa mapy shadow to _s_h_a_d_o_w_._b_y_n_a_m_e a nie _s_h_a_d_o_w. 8. Solaris nie zawsze używa uprzywilejowanych portów. WiÄ™c staraj siÄ™ nie robić nic z hasÅ‚ami jeÅ›li masz klienta na Solarisie. 1111.. CCzzęęssttoo zzaaddaawwaannee ppyyttaanniiaa.. Na wiÄ™kszość twoich pytaÅ„ powinieneÅ› już uzyskać odpowiedź. JeÅ›li wciąż masz jakieÅ› pytania bez odpowiedzi to możesz wysÅ‚ać list na grupÄ™ comp.os.linux.networking albo na którÄ…Å› z polskich grup pl.comp.security lub pl.comp.os.linux lub pl.comp.os.linux.siec(i) Albo skontaktuj siÄ™ z którymÅ› z autorów tego HOWTO.

Wyszukiwarka

Podobne podstrony:
NIS HOWTO pl 1 (2)
NIS HOWTO pl 8 (2)
nis howto pl 6
NIS HOWTO pl 2 (2)
NIS HOWTO pl 5 (2)
NIS HOWTO pl (2)
NIS HOWTO pl 11 (2)
NIS HOWTO pl 4 (2)
NIS HOWTO pl 7 (2)
NIS HOWTO pl 10 (2)
NIS HOWTO pl (3)
NIS HOWTO pl 3 (2)
NIS HOWTO pl 9 (2)
bootdisk howto pl 8
PPP HOWTO pl 6 (2)
cdrom howto pl 1
jtz howto pl 5
Keystroke HOWTO pl (2)
PostgreSQL HOWTO pl 14

więcej podobnych podstron