  The Linux NIS(YP)/NYS/NIS+ HOWTO
  Thorsten Kukuk 
  v0.8, 9 November 1997
  ͺ
  v0.8j2, 25 November 1997

  ʸǤ Linux  NIS(YP) ޤ NIS+ Υ饤Ȥꤹ
  ˡ NIS Ф򥤥󥹥ȡ뤹ˡˤĤƽҤ٤ޤ
  ______________________________________________________________________

  Table of Contents:

  1.      Ϥ

  1.1.    ʸκǿ
  1.2.    
  1.3.    եɥХåȺβ
  1.4.    ռ

  2.      Ѹ콸ȰŪʾ

  2.1.    Ѹ콸
  2.2.    Ūʾ
  2.3.    NIS Ȥ NIS+ 
  2.4.    libc 4/5 Ǥ trad-NIS Ȥ NYS 饤֥꤫

  3.      ư

  3.1.    NIS(YP) ư
  3.2.    NIS+ ư

  4.      RPC ݡȥޥå

  5.      NIS ˤϲɬפ

  5.1.    ޥС졼֥С饤Ȥ
  5.2.    եȥ
  5.3.    ypbind ǡ
  5.4.    trad-NIS Ѥ NIS 饤Ȥ򥻥åȥåפ
  5.5.    NYS Ѥ NIS 饤Ȥ򥻥åȥåפ
  5.6.    glibc 2.x Ѥ NIS 饤Ȥ򥻥åȥåפ
  5.7.    nsswitch.conf ե

  6.      NIS+ ˤϲɬפ

  6.1.    եȥ
  6.2.    NIS+ 饤ȤΥåȥå
  6.3.    NIS+keyloginlogin  PAM
  6.4.    nsswitch.conf ե

  7.      NIS Ф

  7.1.    Хץ ypserv
  7.2.    Хץ yps
  7.3.    yppasswdd ץ

  8.      NIS/NYS 󥹥ȡΥå

  9.      NIS Ǥ褯Ȥβˡ

  10.     褯 (FAQ)
  ______________________________________________________________________

  1.  Ϥ

  ǶǤ Linux ޥ󤬥ͥåȥ³뤳Ȥޤޤ¿ʤ
  ƤޤޤͥåȥδάΤˡۤȤɤΥͥåȥ
  ä Sun ١ˤʤäƤͥåȥˤǤ NIS ưƤ
  Linux ޥǤϡ NIS ӥ;Ȥʤꡢ
  ޤ󶡤ꤹ뤳ȤǤޤLinux ޥ򤹤٤Ƥεǽä
  NIS+ 饤ȤȤƤư뤳ȤǤޤϤޤ١
  ʳǤ

  ʸ Linux ޥ NIS(YP)  NIS+ 򥻥åȥåפˡˤĤ
  ƵҤΤǤѤˤƤ ``RPC ݡȥޥå'' 
  ɬɤǲ

  NIS-HOWTO 

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

  ˤäԽȥƥʥ󥹤ԤƤޤ

   NIS-Howto ϰʲο͡ˤäƼɮޤ˴դ
  

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

   v0.2 ܸϺ <negishi@yw.se.shibaura-it.ac.jp>
  ˤäƸޤ0.6 ؤɿȰʹߤιͺ
  <nakano@apm.seikei.ac.jp> Ԥޤ

  1.1.  ʸκǿ

  ΥɥȤκǿǤ comp.os.linux.announce 
  comp.os.linux.misc Ȥä˥塼롼פƤޤޤ¿
  Linux FTP Ȥˤ֤¸Ƥޤ
  <ftp://sunsite.unc.ecu/pub/Linux/docs/HOWTO> ˤ⤢ޤ

  ʸκǿǤϤĤǤ WWW Ǳ뤳ȤǤޤURL 
  <http://sunsite.unc.edu/mdw/HOWTO/NIS-HOWTO.html> Ǥ

  ܸǤʸ <ftp://jf.linux.or.jp/pub/JF/> ʲˤޤ
  WWW ڡ <http://jf.linux.or.jp/JF/JF.html> Ǥ

  1.2.  

  ʸϤϲ桹μ½ƽ񤤤ĤǤΤǤʤʬ
  뤫⤷ޤ󡣤ʸǾҲ𤷤ƤץˤĤƤϡ줾
  °Ƥ README եɬɤǲREADME ե
  ϤܤΤʾ󤬽񤫤ƤϤǤ桹ϤΥ
  ȤǤְ㤤ΤʤΤˤƤȹͤƤޤ

  1.3.  եɥХåȺβ

  ʸ˴ؤ䥳Ȥޤ顢ڤ Thorsten Kukuk
  ޤǥ᡼򲼤ɥ쥹 kukuk@vt.uni-paderborn.de ǤƤ
  Ƚⴿޤޤʸ˸򸫤Ĥ顢ϢƲм
  Ǥޤꤤޤ

  Ф륳Ȥͺ nakano@apm.seikei.ac.jp ޤǤ
  ޤ

  ʤʤ Linux ۥѥåͭ˴ؤƤϻ˥᡼
  ʤǲϤ٤ƤۥѥåΤäƤǤϤޤ
  󡣤⤷ˡäƤСʸɲäȤϻפäƤ
  ޤ

  1.4.  ռ

  ΥɥȤˤäơľŪ뤤ϴŪˤäˤ
  ޤʲ˴դޤե٥åȽˡ

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

  yp-clients Υꥸʥ륳ɤ Theo de Raadt <deraadt@theos.com> 
  äƺޤSwen Thuemmler <swen@uni-paderborn.de>  yp-
  clients Υɤ Linux ˰ܿyp ϢΥ롼ʤ Theo λ
  ˤ libc ˰ܿޤThorsten Kukuk  GNU libc 2.x 
  NIS(YP)  NIS+ Υ롼򥹥å񤭤ޤ

  ܸˤäƤϡܺ٤ʹ򤷤Ʋäܾʤ
  <shom@i.h.kyoto-u.ac.jp> ϤᡢJF ᡼󥰥ꥹȤγˤ
  ˤʤޤ

  2.  Ѹ콸ȰŪʾ

  2.1.  Ѹ콸

  ΥɥǤ¿ξά줬ȤƤޤʲ˽פʤΤ
  ñ˵󤲤Ƥޤ

     DBM
        ǡ١ޥͥȡDataBase Managementˡȥǡ
        ȤΥڥǡ١ǽä饤֥Τȡ

     DLL
        ưŪ󥯥饤֥Dynamically Linked Libraryˡץμ
        Ի˥󥯤饤֥Τȡ

     domainname
        NIS ФȯԤ륭ɡNIS 饤¦Ѥ NIS
        ФꤹΤѤ롣 domainname  DNS
        "domain" ƱΤˤɬפϤʤष̤ˤ٤Ǥ
        롣

     FTP
        եžץȥFile Transfer Protocolˡԥ塼
        ǥեžѤץȥΰġ

     libnsl
        ͡ॵӥ饤֥Name services libralyˡSVR4 Unix 
        ͡ॵӥϢ̿getpwnam, getservbyname ʤɡˤ
        饤֥ꡣGNU libc Ǥ NIS (YP)  NIS+ ǽˤΥ饤
        Ѥ롣

     libsocket
        åȥӥ饤֥Socket services libraryˡå
        طΥƥॳsocket, bind, listen ʤɡˤ󶡤饤
        ֥ꡣSVR4 Unix ˼Ƥ롣

     NIS
        ͥåȥ󥵡ӥNetwork Information Serviceˡͥå
        Τ٤Ƥη׻ɬפʾͭ륵ӥΤȡ
        Linux ɸ libc 饤֥ˤ NIS ΥݡȤޤޤƤꡢ
        򤳤ʸǤ"trad-NIS" ȵ
        ʸǤ"traditional NIS" ǤĹΤԤ¤
        줷ޤ

     NIS+
        Network Information ServicePlusˡŪˤ NIS ǽå
        ΡNIS+  Sun Microsystems Inc. ˤä߷פ졢NIS 
        ѤΤȤƤ롣ƥ졢礭ʥƥ
        ƳΤưפˤʤäƤ롣

     NYS
        NYS ϡNIS+YPSwitchפɽץ̾Ǥ롣Peter
        Eriksson <pen@signum.se> Ƥ롣ΥץȤǤ
        NIS(=YP) Υɤ 0 ƼƤꡢNYS 饤֥Υ͡
        ӥåǽѤ褦ˤʤäƤ롣
         Red Hat Linux ϤμѤƤޤ

     NSS
        ͡ॵӥåName Service Switchˡե
        /etc/nsswitch.conf ˤäơƼξΥꥯȤФơ
        ʽ֤ǸԤ뤫ꤹ롣

     RPC
        ⡼ȥץ㥳Remote Procedure CallˡC ץ
         RPC 롼ѤСͥåȥˤ¾η׻
        μ³ (֥롼) ƤӤȤǤ롣̾ʸ̮ˤ
        Ƥ Sun  RPC ΰ̣Ѥ뤳Ȥ¿

     YP ڡĢˡYellow Pages (TM)Yellow Pages ϱѹ
        British Telecom ҤϿɸ

     TCP-IP
        Transmission Control Protocol/Internet Protocol άTCP  IP
         Unix ˤ褯ȤƤǡ̿ץȥǤ롣

  2.2.  Ūʾ

  Ƥ Sun(tm) System & Network Administration Manual Ѥ
  ΤǤ

        NIS ϤĤƥ󡦥ڡSun Yellow Pages, YPˤȸƤФ
        ƤޤYellow Pagesפϱѹ British Telecom Ҥ
        Ͽɸǡ̵Ѥ뤳ȤǤޤΤǡNIS ȸƤ֤Ȥ
        ޤ

  NIS  Network Information Service άǤͥåȥΤ٤Ƥ
  ׻Ƕͭ٤󶡤ŪѤޤNIS 󶡤
  Ȥϡ㤨аʲΤ褦ʤΤǤ

  o  ̾ѥɡۡǥ쥯ȥ/etc/passwd

  o  롼׾/etc/group

  㤨СʤΥѥɤ NIS Υѥɥǡ١Ͽ
  Ȥޤ礦Ȥʤϥͥåȥ NIS Υ饤ȥ
  बưƤ׻ʤ顢ɤη׻ˤ󤹤뤳ȤǤ
  褦ˤʤΤǤ

  Sun  Sun Microsystems ҤξɸǤꡢSunSoft Ҥ˥饤󥹶Ϳ
  Ƥޤ

  2.3.  NIS Ȥ NIS+ 

  ɤ֤ǺɬפϤޤä˥ƥ˲Ҥˤʤɬפ
  ʤäꡢNIS+ ȤͤФʤʤ̤ͳʤ¤ꡢNIS Ȥ
  礦NIS+ δϤäѤǤʥ饤¦ǤϤۤɤǤ⤢
  ޤ󤬡СϹǤˡLinux Ǥ NIS+ Ϥޤȯʳ
  ǤѤˤ glibc ΥʥåץåȤκǿǤꤹ뤫
  ʤ glibc 2.1 ԤɬפޤäȻƤߤ
  ϡglibc  NIS+ ݡȤ libc5 ˰ܿΤ¸ߤޤ

  2.4.  libc 4/5 Ǥ trad-NIS Ȥ NYS 饤֥꤫

  trad-NIS Ѥ뤫 NYS 饤֥ NIS ɤѤ뤫ϡ㵡ǽ
  פȤ뤫ֽפȤ뤫ȸޤ

  trad-NIS Υɤɸ C 饤֥äƤַФäƤޤ
  ޤ줬Ťʬ˷礱Ȥޤ

   NYS 饤֥ NIS ɤѤˤϡlibc 饤֥ƥ
  ѥ뤷 libnsl Υɤ libc ˴ޤ뤫ɬפޤʴ
  ˤΤ褦˥ѥ뤵줿 libc 饤֥Ǥ뤫⤷ޤ
  ˡ

   Red Hat Linux  libc  nys ǽlibnsl Υɡˤޤ
  ΤˤʤäƤ뤽Ǥä NIS 饤Ȥˤʤ뤿 ypbind 
  ɬפʤ/etc/yp.conf  /etc/nsswitch.conf  ʤɤꤹǤ
  ˡ ``NYS Ѥ NIS 饤Ȥ'' 򻲹ͤˤƤ
  

  ޤ trad-NIS ΥɤǤ NIS Υͥåȥ롼׵ǽȤޤNYS
  ΥɤˤϤޤƤޤ󡣵դ NYS ΥɤǤ Shadow
  Password ƩŪ˰ȤǤ褦ˤʤäƤޤtrad-NIS Υ
  ɤ NIS Ǥ Shadow ѥɤ򥵥ݡȤƤޤ

  ⤷ GNU C Library 2.x (libc6 ȤƤФޤˤȤäƤϡʾ
  Ƥ˺Ʋlibc6 Ǥ NSSʥ͡ॹåӥˤ򥵥ݡ
  ȤƤꡢ˽ʱѤǤ褦ˤʤäƤޤޤʲ NIS
   NIS+ ޥåפݡȤƤޤ:  aliases, ethers, group, hosts,
  netgroups, networks, protocols, publickey, passwd, rpc, services, 
   shadow Ǥ

  3.  ư

  3.1.  NIS(YP) ư

  ʤȤ 1  NIS ΥСͥåȥưƤʤƤϤ
  ޤʣΥФư뤳ȤǤޤξϤ줾
  ۤʤä NIS֥ɥᥤפΥФȤ뤫뤤 2 ΥФҤ
  ĤΥɥᥤǶĴư뤳ȤˤʤޤԤιǤϰĤ
  Ф֥ޥСס¾ΥФ֥졼֥СפȸƤӤ
  ɥᥤʣ줾Ф륵ФʣȤä褦ʹ
  ǽǤ

  졼֥ФϡޥФ NIS ǡ١ΥԡĤ
  ǤޥФ NIS ǡ١ѹȡ줽
  ޤͥåȥ³Ƥ׻ȥͥåȥο
  θ졼֥Ф򥤥󥹥ȡ뤹뤫ɤӥ󥹥ȡ
  뤹ϤƲNIS 饤ȤϡNIS Ф
  ơפ쥹ݥ󥹤٤äꤹˤϡƤʤФ
  äȥ쥹ݥ󥹤ᤤФȤ³ߤޤ

  NIS ǡ١ ASCII Υǡ١Ѵ줿
  DBM եޥåȤˤʤäƤޤ㤨 /etc/passwd  /etc/group 
  äեϡASCII-DBM Ѵեȡmakedbm : ХեȤä
  ޤˤȤäľ DBM եޥåȤѴǤޤNIS Υޥ
  Ф ASCII  DBM Υǡ١ξäƤʤƤϤʤ
  ޤ

  졼֥Ф NIS ޥåפѹΤޤyppush ץ
  बѤޤˡȥ졼֥ФɬפѹԤǡ
  ƱޤNIS 饤ȤˤϤΤ褦ʺȤ򤹤ɬפϤ
  ޤ󡣥饤ȤϾ NIS Ф˺ǿ DBM ǡ١Ƥ
  ɤߤ˹ԤǤ

  Linux  YP 饤ȤԤΤ餻Ƥ줿Ȥˤȡǿ
   ypbindypbind-3.3.tar.gzˤǤϥФեǤ褦
  ˤʤäƤ뤽Ǥäƥ֥ɥ㥹ȤѤɬפϤޤ
  ֥ɥ㥹Ȥϥƥ꤬ޤïǤ NIS Ф
  󥹥ȡ뤷ƥ֥ɥ㥹Ȥ䤤碌褦ˤ뤳ȤǤ
  뤫Ǥˡ

  3.2.  NIS+ ư

  NIS+  Sun ˤͥåȥե᡼󥵡ӥοС
  ǤNIS  NIS+ κǤ礭ʰ㤤ϡNIS+ ǤϥǡΰŹ沽
  ȡsecure RPC ̤ǧڤǽˤʤäƤǤ

  NIS+ ̿̾ǥϥĥ꡼¤˴ŤƤޤĥ꡼Τ줾ΥΡ
  ɤ NIS+ Υ֥ȤбƤꡢˤϻĤΥפ
  ǥ쥯ȥdirectoryˡȥentryˡ롼סgroupˡ
  󥯡linkˡơ֥tableˡץ饤١ȡprivateˤǤ

  NIS+ ֤̾ǥ롼ȤȤʤ NIS+ ǥ쥯ȥ root ǥ쥯ȥ
  ƤФޤNIS+ ˤĤ̤ʥǥ쥯ȥ꤬¸ߤޤorg_dir 
  groups_dir Ǥorg_dir ǥ쥯ȥˤϤ٤Ƥδơ֥뤬ޤޤ
  ޤ㤨 passwdhostsmail_aliases ʤɤǤgourps_dir ǥ쥯
  ȥˤϥȥѤ NIS+ 롼ץ֥Ȥ
  ޤޤorg_dir  group_dirӤοƥǥ쥯ȥ򽸤᤿
  Τ NIS+ ɥᥤȤƻȤޤ

  4.  RPC ݡȥޥå

  줫Ƥեȥưˤϡޤ
  /usr/sbin/rpc.portmap ưƤɬפޤLinux ۥ
  ȤˤϡΥǡΩ夲뤿Υޥɤ
  /etc/rc.d/rc.inet2 ˽񤭹ǤΤ⤢ޤΤǡξϳ
  ʬ򥳥ȥȤƥ֡ȤǤ

  RPC ݡȥޥåѡportmap(8)ˤϡRPC ץֹ TCP/IP ݡ
  Ѵ륵ХץǤNIS 饤ȥץबäƤ
  褦ˡRPC СNIS Фʤɡˤ RPC 뤹뤿ˤϡRPC
  ݡȥޥåѤưƤʤФʤޤRPC Хץϡƻ
   TCP/IP ݡֹȥǡ󶡤 RPC ץֹ򡢵ư
  ˥ݡȥޥåѤޤ饤ȥץब RPC ץ
  ֹ˥򤪤ʤˤϡޤХޥ RPC ݡȥޥå
  ȸ򿮤ơɤ TCP/IP ݡֹ RPC ΥѥåȤɤΤ
  ꤷޤ

  ̾RPC Хץ inetd(8) ˤäƵưޤΤǡinetd
  ư RPC ݡȥޥåѤư褦ˤƲ

  secure RPC ѤˤϡݡȥޥåѤ time ӥɬפȤ
  ٤ƤΥۥȤ /etc/inetd.conf ǡʲΤ褦 time ӥ
  ѲǽˤʤäƤ뤳ȤǧƲ

        #
        # 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

  סΥեѹ inetd ƵưΤ˺ʤ
  ȡ

  5.  NIS ˤϲɬפ

  5.1.  ޥС졼֥С饤Ȥ

  ޤʲĤξͤɬפޤ

  1. ³ͥåȥ NIS Ф硣

  2. ³ͥåȥ NIS Фʤ硣

  ǽΥǤ ypbindypwhichypcatyppollypmatch Ȥä
  ȥץưǻȤ褦ˤʤޤֽפʤΤ
  ypbind ǡΥץϾ˼¹ԤƤɬפޤʤĤޤ
  ps ޥɤ¹ԤȤ˥ץơ֥ɽʤФʤޤ
  ˡypbind ϤǡץȤΤǡ
  /etc/rc.d/rc.local Τ褦ʥƥΥȥåץե뤫鵯ư
  ɬפޤypbind ưСη׻Ϥλ NIS
  饤ȤȤʤޤ

  ܤΥĤޤ NIS ФʤˤϡNIS Хץ
  ̾ ypservˤɬפȤʤޤʸ ``NIS Ф'' 
  ϤǤϡLinux ޥ NIS ФꤹˡˤĤƤ
  Ǥ Peter Eriksson  Thorsten Kukuk ˤ ypserv μ
  Ƥޤμ 0.14 ʹߤǤǤ ``NIS ư'' ǿ
  ޥ졼ֵǽ򥵥ݡȤƤޤ

  ¾ˤե꡼ NIS Фޤyps ȤץǡɥĤ
  Tobias Reber ˤäƽ񤫤줿ΤǤޥ졼ֵǽ
  ޤʳ¤ޤ

  5.2.  եȥ

  ƥ饤֥ /usr/lib/libc.aʥС 4.4.2 ʾˡ⤷
  ɥ饤֥ /usr/lib/libc.sa ƱС DLL ˤϡNIS
  Υ饤Ȥ䥵ФΥץ򥳥ѥ뤹Τɬפʥƥॳ
  뤬٤ƴޤޤƤޤglibc 2.x Ѥˤ /lib/libnsl.so.1 ɬפ
  

  NIS  /usr/lib/libc.a С 4.5.21 ʾǤưʤȤ
  ޤΤǡΤˤϸŤΤϻȤʤɤǤ礦NIS
  Υ饤ȥץϰʲξǤޤ

  o  <ftp://ftp.uni-paderborn.de/linux/local/yp/> ˤ yp-
     clients-2.2.tar.gzypbind-3.3.tar.gz ޤ

  o  <ftp://ftp.wauug.erols.com/pub/net/nis/> yp-tools-1.2.tar.gz
     ypbind-3.3.tar.gz ޤ

  o  <ftp://ftp.lysator.liu.se/pub/NYS/clients/> yp-tools-1.2.tar.gz 
     ޤ

  o  <ftp://sunsite.unc.edu/pub/Linux/system/Network/admin/> yp-
     clients-2.2.tar.gz ޤ

  եȤ줿顢դƤˤäƲyp-
  clients 2.2  libc4 ޤ 5.4.20 ޤǤ libc ȶѤƲ
  libc 5.4.21 ʹߤ glibc 2.x ˤ yp-tools 1.2 ɬפǤypbind 3.3
  Ϥ٤ƤΥ饤֥ưޤyp-clients 2.2 äƤ ypbind
  Ϸ褷ƻȤʤ褦ˤƲ

  5.3.  ypbind ǡ

  եȤϤޤѥ뤵졢󥹥ȡνǤȤޤ礦
  ypbind ǡ /usr/sbin ɤǤ礦NYS ΥƥǤ
  ypbind ɬפʤȸͤ뤫⤷ޤ󤬡ϴְ㤤Ǥ
  ypwhich  ypcat ˤ ypbind ɬפǤ

  ypbind Υ󥹥ȡϤ󥹡ѡ桼ǹԤɬפޤ¾
  ΥХʥypwhich, ypcat, yppoll, ypmatchˤϤ٤ƤΥ桼饢
  ǽʥǥ쥯ȥˤޤ礦̾ /usr/bin ɤǤ
  

  ypbind ˤե뤬ޤ/etc/yp.conf Ǥ NIS 
  Фľ˽񤤤ƤȤǤޤܤ ypbind(8) Υޥ˥奢
  ǲΥե NYS ǤɬפǤʲǤ

        ypserver voyager
        ypserver ds9

  NIS ʤǤۥ̾β褬Ǥ륷ƥǤϡIP ɥ쥹Ǥʤ̾
  Ѥ뤳ȤǤޤǤʤ IP ɥ쥹Ѥޤ

  ypbind  /etc/rc.d/ Υե˥ƥȤƤȤ򤪴
  ޤypbind ΥƥȤϰʲΤ褦ˤƹԤޤ

  o  ɥᥤ͡बꤵƤ뤳ȤǧƲꤵƤ
     ϰʲΤ褦ˤޤ

        /bin/domainname-yp nis.domain

     nis.domain ̾ŬʸǡʤΥޥΥɥᥤ͡Ȥ
     㤦Τˤ٤ǤƤСΥåФ
     NIS ѥɥǡ١ǤΤ鷺ʤ麤ˤʤ
     NIS ɥᥤ̾ΤʤϥƥԤͥåȥ
     Ԥ˿ҤͤƲ

  o  /usr/sbin/rpc.portmap ưƤʤеưޤ

  o  /var/yp Ȥǥ쥯ȥ꤬ʤкޤ

  o  /usr/sbin/ypbind ưޤ

  o  ypbind ӥƤݡȥޥåѤϿǤɤΤ뤿
     ˡ"rpcinfo -p localhost"  Ȥޥɤ¹ԤƲʲ
     褦ɽϤǤ

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

  o  "rpcinfo -u localhost ypbind" ¹ԤƤߤƲʲΤ褦ɽ
     ФϤǤ

        program 100007 version 2 ready and waiting

  ޤ ypcat Τ褦 NIS 饤ȥץ¹Ԥ뤳
  ǤϤǤ㤨 NIS Υѥɥǡ١򻲾Ȥ
  ˤϡ"ypcat passwd" Ȥޤ

  : ⤷Ҥ ypbind ΥƥȤФ硢ʤȤɥᥤ͡
  बꤷƤ뤳Ȥ /var/yp Ȥ̾Υǥ쥯ȥ꤬äƤ뤳
  ȤǧƲ/var/yp ʤ ypbind ˵ưޤ

  ƥȤޤä /etc/rc.d ˤեѹơ֡Ȼ
  ypbind ư褦ˤƤɤǤ礦ưŪ NIS 饤
  ȤȤƤγưϤޤɥᥤ͡ब֡Ȼꤵ
  ˤΤ˺ʤȡ

  ʾϽλޤ֡ȤƤ顢֡ȥå ypbind
  ưƤ뤫ɤǧƲ

  5.4.  trad-NIS Ѥ NIS 饤Ȥ򥻥åȥåפ

  ۥȤ̾ NIS Ѥˤϡ/etc/host.conf եǲ
  ꤹ饤"nis" ʤޤɲáˤƲܺ٤դƤ
  resolv+(8) Υޥ˥奢ɤǲ

  ʲιԤ NIS 饤Ȥ /etc/passwd ɲäƲ

        +::::::

  ޤ +  - ȤäʸȤȤǡ桼ɲ / ꡢ
  ֤ѹꤹ뤳ȤǤޤ㤨Х桼 guest ʤ
  /etc/passwd ե -guest ɲä OK Ǥ桼"linux" 
  ä㤨 kshˤȤ碌Ǥäơ
  ס"+linux::::::bin/ksh"/  /etc/passwd ɲäǤʰ
  äƲˡѹʤեɤ϶ΤޤޤˤƤɬפ
  ޤ桼Υȥˤϥͥåȥ롼פѤ뤳ȤǤޤ

  㤨С֥󥢥 miquielsdthed ȥͥåȥ롼 sysadmin
  ΥС˸¤ꤿȥǡ¾Υ桼ʬɬס
  Ȥ褦ʾϰʲΤ褦ˤʤޤ

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

  Linux ǤϥѥɤΥեɤ񤭤Ǥ뤳ȤդƲ
  ϺƱǤǤ"ftp" ΥƤ
  äƤΥ桼¸ߤanonymous ftp ϵǽʤʤޤ

  /etc/netgroup եϰʲΤ褦ˤʤäƤȻפޤ

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

  סͥåȥ롼פεǽ libc 4.5.26 ʹߤǼޤ4.5.26
   libc ȤäƤˤϡNIS Υѥɥǡ١˥
  Ĥ٤ƤΥ桼ϡypbind ¹Ԥ줿 Linux ޥ˥
  Ƥޤޤ

  5.5.  NYS Ѥ NIS 饤Ȥ򥻥åȥåפ

  ɬפʤΤ NIS ե/etc/yp.confˤСʷˤ
  館褦ˤƤȡƥ͡ॵӥå
  ե/etc/nsswitch.confˤꤹ뤳ȤǤ

  ypbind ⥤󥹥ȡ뤷Ƥޤ礦libc ˤɬפޤ󤬡
  NIS(YP) tools Ǥ ypbind ɬפˤʤޤ

  桼ɲáӽǽ+/-guest/+@adminsˤѤϡ"passwd:
  compat" "group: compat" Ѥɬפޤ"shadow: compat" 
  Ϥޤ󡣤ξ"shadow: files nis" Τ褦ˤƲ
  

  5.6.  glibc 2.x Ѥ NIS 饤Ȥ򥻥åȥåפ

  glibc  trad-NIS Ѥޤä ypbind ưɬפ
  ޤ͡ॵӥåե/etc/nsswitch.confˤ
  ꤹɬפޤpasswdshadow ޤ group  compat ⡼
  ɤȤϡΥեκǸ"+" ɲäɬפޤ
  ޤ桼ɲáǽѤ뤳ȤǤޤ Solaris 2.x
  ΤΤȤޤäƱǤ

  5.7.  nsswitch.conf ե

  ͥåȥӥåΥե /etc/nsswitch.conf ϾؤΥ
  ׵᤬褿Ȥ˹Ԥν֤ꤹΤǤۥ̾θ
  Ѥ /etc/host.conf եȻƤޤ㤨ФΥե
  

        hosts: files nis dns

  ȻꤹСۥ̾θǽϤޤ /etc/hosts ե
  õ NISƥɥᥤ͡ॵӥ/etc/resolv.conf 
  namedˤȤ֤ǸԤޤǸޤǥޥåΤʤС
  顼֤뤳Ȥˤʤޤ

  NIS Ѥ /etc/nsswitch.conf եȤƤϡʲΤ褦ʤΤɤ
  礦

  ______________________________________________________________________
  #
  # /etc/nsswitch.conf
  #
  # An example Name Service Switch config file. This file should be
  # sorted with the most-used services at the beginning.
  #
  # The entry '[NOTFOUND=return]' means that the search for an
  # entry should stop if the search in the previous entry turned
  # up nothing. Note that if the search failed due to some other reason
  # (like no NIS server responding) then the search continues with the
  # next entry.
  #
  # Legal entries are:
  #
  #       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_compatgroup_compatshadow_compat  glibc 2.x ǤΤߥݡ
  Ƥޤshadow ˴ؤ롼뤬 /etc/nsswitch.conf ˤʤ
  ϡglibc  passwd õ롼Ѥޤglibc ˤ hesoid Ȥä
  褦ʡ¿¿õ⥸塼뤬¸ߤޤܤ glibc Υɥ
  Ȥɤǲ

  6.  NIS+ ˤϲɬפ

  6.1.  եȥ

  ǿ GNU C library 2 ΥʥåץåȤ졢ѥ뤹ɬ
  פޤޤ glibc ١Υƥबɬפˤʤޤ㤨
  RedHat Mustang 䳫ȯǤ Debian ʤɤˤޤդ
  ƲϤ٤ƥ١ǤΥեȥʤΤǤ glibc Υ
  ʥåץåȤ˴ؤɥȤɤǲglibc 2.0.x ˤ
  NIS+ ΥݡȤϴޤޤƤޤ󤷡⤵뤳ȤϤޤ
  NIS+ 򥵥ݡȤǽθǤ 2.1 ˤʤϤǤ
  NIS+ 饤ȤΥեȥϰʲǤޤ

  o  <ftp://ftp.kernel.org/pub/software/libs/glibc/> libc-*glibc-
     crypt-*glibc-linuxthreads-*glibc-localedata-* ֤Ƥ
     

  o  <ftp://wauug.erols.com/pub/net/nis/> nis-tools-1.4.tar.gz
     pam_keylogin-1.0.tar.gz ޤ

  glibc ١ۥѥåϰʲǤޤ

  o  <ftp://ftp.redhat.com/pub/redhat/mustang/>

  o  <ftp://ftp.debian.org/pub/debian/hamm/>

  GNU C 饤֥Υѥϡեȥ°˽äƲ
  NYS  glibc Ȥˤ libc5 ؤΥѥå¸ߤޤɸ
   libc5 ä֤ƤߤʤɤŬƤޤ<http://www-
  vt.uni-paderborn.de/~kukuku/linux/nisplus.html> ˡܺ٤ʾȺ
  Υޤ

  6.2.  NIS+ 饤ȤΥåȥå

  ס NIS+ 饤Ȥ򥻥åȥåפˡSolaris  NIS+ ɥ
  Ȥɤǥ¦ɬפʺȤԤäƲʸǤϥ饤
  ¦ǤɤФ褤ˤĤƤҤ٤Ƥޤ

   libc  nis-tools 򥤥󥹥ȡ뤷顢

        domainname nisplus.domain.
        nisinit -c -H <NIS+ server>

  ¹Ԥ cold ȥեޤ¾ΥץˤĤ
   nisinit Υޥ˥奢ڡɤǲɥᥤ͡ϥ֡
  ΤӤꤵ褦ˤƤƲʤΥͥåȥ NIS+
  ɥᥤ͡ब狼ʤϡƥफͥåȥδԤ˿Ҥ
  Ʋ

   /etc/nsswitch.conf եѹޤpublickey ˽񤱤륵
   nisplus "publickey: nisplus"ˤǡ¾ΤΤϽ񤤤ƤϤʤ
  ȤդƲ

  ѹ keyserv ưƲϥ֡Ȼư褦
  ƤƲ

        keylogin -r

  ȤХƥ root ̩ݴɤޤʤ⤦οۥȤ
   NIS+ ΥФɲäޤ͡ˡ

  "niscat passwd.org_dir" ȤСpasswd ǡ١Τ٤ƤΥ
  򸫤뤳ȤǤϤǤ

  6.3.  NIS+keyloginlogin  PAM

  󤷤Ȥˡ桼ϼʬ̩ keyserv ˥åȤɬפ
  ޤ keylogin ƤӽФȤˤäƹԤޤshadow
  ѥå login Ϥ桼˼¹ԤƤޤPAM ǧ
   login Ѱդˤϡpam_keylogin-1.0.tar.gz 饤󥹥ȡ
  /etc/pam.d/login եѹ pwdb  pam_unix_auth
  Ȥ褦ˤɬפޤpwdb  NIS+ 򥵥ݡȤޤˡ
  򼨤ޤ

        #%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

  6.4.  nsswitch.conf ե

  ͥåȥӥåΥե /etc/nsswitch.conf ϾؤΥ
  ׵᤬褿Ȥ˹Ԥν֤ꤹΤǤۥ̾θ
  Ѥ /etc/host.conf եȻƤޤ㤨ФΥե
  

        hosts: files nisplus dns

  ȻꤹСۥ̾θǽϤޤ /etc/hosts ե
  õ NIS+ƥɥᥤ͡ॵӥ/etc/resolv.conf 
  namedˤȸ֤ǸԤޤǸޤǥޥåΤʤХ
  顼֤뤳Ȥˤʤޤ

  NIS+ Ѥ /etc/nsswitch.conf եȤƤϡʲΤ褦ʤΤɤ
  Ǥ礦

  ______________________________________________________________________
  #
  # /etc/nsswitch.conf
  #
  # An example Name Service Switch config file. This file should be
  # sorted with the most-used services at the beginning.
  #
  # The entry '[NOTFOUND=return]' means that the search for an
  # entry should stop if the search in the previous entry turned
  # up nothing. Note that if the search failed due to some other reason
  # (like no NIS server responding) then the search continues with the
  # next entry.
  #
  # Legal entries are:
  #
  #       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: 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
  automount:  files
  aliases:    nisplus [NOTFOUND=return] files
  ______________________________________________________________________

  7.  NIS Ф

  7.1.  Хץ ypserv

  ʸǤ NIS ФȤƤ"ypserv" ˡΤߤ򵭤ޤ

  NIS ФΥեȤϰʲˤޤ

  o  <ftp://waaug.erols.com/pub/net/nis/>

  o  <ftp://ftp.lysator.liu.se/pub/NYS/servers/>

  o  <ftp.uni-paderborn.de/linux/local/yp/>

     ե̾ ypserv-1.2.5.tar.gz Ǥ
  <http://www-vt.uni-paderborn.de/~kukuku/linux/nis.html> ˤϡܺ
  ʾȺǿǤΥޤ

  ФΥåȥåˡ trad-NISNYS ɤξǤƱǤ

  ѥ뤷 ypserv  makedbm ޤθ塢ޤǽ
  NIS/NYS ̤ƶͭեƲ ypMakefile 
  ɬפʹܤդäꡢɬ̵ܤꤷޤǤ
  ypMakefile  /var/yp ǥ쥯ȥ Makefile Ȥ̾ǥԡƲ
  

   /var/yp/securenets  /etc/ypserv.conf Խޤܺ٤˴ؤ
  ϡypserv(8)  ypserv.conf(5) Υޥ˥奢ڡɤǲ

  ݡȥޥåѡrpc.portmapˤưƤ뤫ǧƲǧǤ
  ypserv ưޤ

        % rpcinfo -u localhost ypserv

  Ȥޥɤ¹ԤƤߤơ

        program 100004 version 2 ready and waiting

  ȸϤФ뤳ȤǧƲ

   NIS (YP) ǡޤޥФǰʲ¹ԤƲ
  

        % /usr/lib/yp/ypinit -m

  졼֥ФǤϡypwhich -m ǽ뤳ȤǧƤʲ¹
  ޤ

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

  ǤޤФưƤϤǤ

  ֥졼֥С׾Ǥ root  crontab ԽʲΤ褦ʹԤ
  äƤɤ⤷ޤ

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

  ޥФǤικݤ˥졼֤󤷤Ƥƥǡ»
  ʤäƤ⡤ˤä NIS ޥåפǿݤĤȤǤޤ

  NIS ФؤΥ¤ϡNIS ФΥۥȤ򥯥饤
  ȤȤƤ¹ԤɬפޤĤޤ ypbind ¹Ԥ + դ
  ȥѥɥե /etc/passwd ȾФɲäޤ饤
  ؿ NIS ȥʹߤ֤줿̾Υȥ̵뤷Ĥ
   NIS ̤ƼޤΤ褦ˤ NIS Υ롼
  뤳ȤǤޤ򼨤ޤ

        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
        [ All normal users AFTER this line! ]
        tester:*:299:10:Just a test account:/tmp:
        miquels:1234567890123:101:10:Miquel van Smoorenburg:/home/miquels:/bin/zsh

  桼 tester ¸ߤޤ뤬 /etc/NoShell ˤʤޤ
  miquels ̾ΥĤȤˤʤޤ

  ˡȤơ/var/yp/Makefile եԽNIS Ȥѥ
  ե̤˻ꤹ뤳ȤǤޤ礭ʥƥǤϡNIS Υѥ
  ɥեȥ롼ץե̾ /var/yp/ypfiles ֤Ȥ¿
  褦ǤΤ褦ˤȥѥɥեϢδġϻȤʤ
  ʤޤĤޤ passwdchfnadduser ʤɤФ̤ꤵ줿
  뤬ɬפˤʤޤ

   yppasswdypachshypchfn ưޤ

  7.2.  Хץ yps

  NIS  yps Υ򻲹ͤˤƲλƤ
  ƱǤϤʤΤǡypserv ŬѤݤˤդ褦
  ˤƲyps ϤϤï⥵ݡȤƤޤ󤷡Ĥ
  ƥۡ¸ߤƤޤȤ٤ǤϤޤ

  yps ΥեȤϰʲΥȤˤޤ

  o  <ftp://ftp.lysator.liu.se/pub/NYS/servers/>

  o  <ftp://ftp.funet.fi/pub/Linux/BETA/NYS/servers/>

     ե̾ yps-0.21.tar.gz Ǥ

  7.3.  yppasswdd ץ

  桼ѥɤѹȤˤϡNIS Υѥɥǡ١䡢
  ˰¸¾ NIS ǡ١ѹʤФʤޤ󡣤
  ԤʤΤ rpc.yppasswdd ǤΥץϥѥѹ
  NIS ξ褦ˤޤ rpc.yppasswdd 
  ypserv 1.2.5 ΰȤʤäƤޤ̥ѥåˤʤäƤ
  yppasswd-0.9.tar.gz  yppasswd-0.10.tar.gz ʤɤϸŤΤǻȤɬפϤ
  ޤ󤷡ޤȤ٤ǤϤޤypserv 1.2.5 
  rpc.yppasswdd  shadow ˥ݡȤƤޤyppasswd  yp-
  tools-1.2.tar.gz äƤޤypserv-1.2.5.tar.gz ˤƱС
  ΥɤäƤޤ

  8.  NIS/NYS 󥹥ȡΥå

  ٤ƤޤԤä顢ñʥޥɤȤäƥ󥹥ȡΥå
  ԤäƲ㤨Хѥɥե뤬 NIS/NYS ǶͭƤ
  ϡ

        % ypcat passwd

  Ȥޥɤ NIS ΥѥɥեƤϤǤ
  

        % ypmatch userid passwd

  ȤСꤷ桼Υȥ꤬ѥɥե뤫Ф
  ɽޤuserid ˤŬʥ桼Υ̾ޤˡʤ
  ypcat  ypmatch ϡNIS  NYS ۥѥåäƤޤ

  桼ˤ󤬤ǤʤˤϡʲΥץ򥯥饤
  ȤǼ¹ԤƤߤƲ

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

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

    if(argc != 2)
      {
        fprintf(stderr,"Usage: getwpnam username\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,"User \"%s\" not found!\n",argv[1]);

    exit(0);
  }
  ______________________________________________________________________

  Υץ桼̾ѥ᡼ȤƼ¹ԤޤȡΥ桼
   getpwnam ؿ֤ɽޤˤäơɤΥ
  ȥְ꤬äƤ뤫狼Ǥ礦褯ְ㤤ȤƤϡѥ
  ɤΥեɤ"*" ˤäƾ񤭤Ƥ롢ʤɤޤ

  9.  NIS Ǥ褯Ȥβˡ

  ʲΤ褦꤬¿Υ桼𤵤Ƥޤ

  1. С 4.5.19 Υ饤֥ϲƤ NIS ưޤ

  2. 饤֥ 4.5.19  4.5.24 ˥åץ졼ɤ su ޥ
     Ȥʤʤޤξ su ޥɤ Slackware 1.2.0 
     ꤷޤĤǤ˺ǿΥ饤֥ƳƤޤɤǤ礦

  3. NIS  DNS Ʊޥưʤǽޤ DNS 
     ϡ NIS ʤʤޤϺΤȤǤ

  4. NIS ФƵưݡypbind 

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

     Τ褦ʥåɽNIS Υǡ١ϿƤͤ
     Ǥʤʤ뤳Ȥޤroot ǥ󤹤뤳Ȥǽ
     顢󤷤 ypbind  kill ypbind ưʤƲ
     

  5. libc  5.4.20 ʾǤ˥åץ졼ɤȡYP tools ư
     ʤޤlibc >= 5.4.21  glibc 2.x ˤ yp-tools 1.2 ɬ
     פǡǤˤ yp-clients 2.2 ɬפǤ

  10.  褯 (FAQ)

  ʤ˻פäƤȤϤޤǤʬ褵줿ȤȻפ
  ޤĤäƤޤ顢

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

  ʤɤ˼䤹ɤȻפޤʸκԤ䤤碌Ƥ
  빽Ǥ

  ܸΥ˥塼롼פ

        fj.os.linux
        japan.comp.linux

  ʤɤޤ

