´ÙÀ½ ÀÌÀü Â÷·Ê

6. NIS¸¦ ¼³Ä¡Çϱâ À§ÇØ ÇÊ¿äÇÑ °ÍµéÀº ¹«¾ùÀΰ¡?

6.1 ¿©·¯ºÐÀÌ Server, SlaveȤÀº ClientÀÎÁö °áÁ¤Ç϶ó.

ÀÌ ¹®Á¦¿¡ ´äÇϱâ Àü¿¡, ´ÙÀ½ µÎ°¡Áö¸¦ °í·ÁÇØ¾ß ÇÑ´Ù.

  1. ¿©·¯ºÐÀÇ ¸Ó½®Àº Á¸ÀçÇÏ´Â NIS ¼­¹ö¿Í ÇÔ²²ÇÏ´Â ³×Æ®¿öÅ©ÀÇ ÀÏ¿øÀÌ µÉ °Í ÀÌ´Ù.
  2. ¿©·¯ºÐÀº ¾ÆÁ÷ ³×Æ®¿öÅ©¿¡ NIS ¼­¹ö°¡ ¾ø´Ù.

ù ¹ø° °æ¿ì¿¡´Â, ´ÜÁö ypbind, ypswitch, ypcat, yppoll, ypmatch °°Àº Ŭ¶óÀÌ ¾ðÆ® ÇÁ·Î±×·¥¸¸À» ÇÊ¿ä·Î ÇÑ´Ù. °¡Àå Áß¿äÇÑ ÇÁ·Î±×·¥Àº ypbindÀÌ´Ù. ÀÌ ÇÁ·Î±× ·¥Àº Ç×»ó ½ÇÇà Áß¿¡ ÀÖ¾î¾ß ÇÑ´Ù. ±×°ÍÀº ±× ÇÁ·Î±×·¥ÀÌ Ç×»ó ÇÁ·Î¼¼½ºÀÇ ¸®½º Æ®¿¡ ÀÖ¾î¾ß ÇÑ´Ù´Â ¸»ÀÌ´Ù. ÀÌ°ÍÀº µ¥¸ó ÇÁ·Î¼¼½º·Î ½Ã½ºÅÛ ½ÃÀÛ ÆÄÀÏ¿¡ ÀÇÇØ ½ÃÀ۵Ǿî¾ß ÇÑ´Ù. (¿¹·Î, /etc/init.d/nis, /sbin/init.d/ypclinet, /etc/rc.d/ init.d/ypbind, /etc/rc.local)¿©·¯ºÐÀÇ ½Ã½ºÅÛÀº ypbind°¡ ½ÃÀÛµÇÀÚ ¸¶ÀÚ NISÀÇ Å¬¶óÀ̾ðÆ®°¡ µÇ´Â °ÍÀÌ´Ù.

µÎ ¹ø° °æ¿ì¿¡, NIS ¼­¹ö°¡ Á¸ÀçÇÏÁö ¾ÊÀ» ¶§, ¿©·¯ºÐÀº ºÐ¸í NIS ¼­¹ö ÇÁ·Î±× ·¥(º¸Åë ypserv¶ó ºÒ¸²)ÀÌ ÇÊ¿äÇÒ °ÍÀÌ´Ù. NIS¼¼ÆÃÇϱ⠺κп¡¼­ Peter Eriksson°ú Thorsten Kukuk¿¡ ÀÇÇØ ¸¸µé¾îÁø "ypserv" ¸¦ ÀÌ¿ëÇÏ ¿© ¿©·¯ºÐÀÇ ¸®´ª½º ¸Ó½®¿¡ NIS¸¦ ¾î¶»°Ô ¼³Ä¡ÇÏ´ÂÁö¸¦ ¼³¸íÇÒ °ÍÀÌ´Ù. ¹öÀü 0. 14ºÎÅÍ´Â 4.1ºÎºÐ¿¡¼­ ¾ð±ÞÇÑ ¹Ù ÀÖ´Â master-slave°³³äÀÌ Áö¿øµÈ ´Ù´Â °ÍÀ» ¿° µÎÇØ µÎ¾î¶ó.

µ¶ÀÏÀÇ Tobias Reber°¡ ¸¸µç yps¶ó´Â NIS ¼­¹ö ÇÁ·Î±×·¥µµ master-slave °³³ä À» Áö¿øÇÏÁö¸¸, ¿À·¡ÀüºÎÅÍ Áö¿øÇÏÁö ¾ÊÀº ´Ù¸¥ Á¦¾àµéÀÌ ÀÖ´Ù.

6.2 ¼ÒÇÁÆ®¿þ¾î

½Ã½ºÅÛ ¶óÀ̺귯¸®ÀÎ "/usr/lib/libc.a" (¹öÀü 4.4.2ÀÌÈÄÀÇ °Í) ȤÀº, °øÀ¯¶óÀÌ ºê·¯¸®ÀÎ "/lib/libc.so.x"´Â NIS Ŭ¶óÀ̾ðÆ®, ¼­¹ö ÇÁ·Î±×·¥À» ¼º°øÀûÀ¸·Î ÄÄ ÆÄÀÏ Çϱâ À§ÇÑ ½Ã½ºÅÛ ÄÝÀ» ¸ðµÎ °¡Áö°í ÀÖ´Ù. GNU C ¶óÀ̺귯¸® 2(glibc2)¿¡ ´ëÇؼ­´Â /lib/libnsl.so.1À» ÇÊ¿ä·ÎÇÑ´Ù.

¾î¶² À̵éÀº NIS°¡ ¹öÀü 4.5.21ÀÌÈÄÀÇ "/usr/lib/libc.a"¿Í¸¸ ÀÛµ¿µÈ´Ù°í Çϱ⠶§¹®¿¡, ¾ÈÀüÇÏ°Ô ÀÛµ¿ÇÏ±æ ¿øÇÑ´Ù¸é ¿¾³¯ ¹öÀüÀÇ libcµéÀ» ¾²Áö ¾Ê´Â°Ô ÁÁ´Ù. NIS Ŭ¶óÀ̾ðÆ® ¼ÒÇÁÆ®¿þ¾î´Â ´ÙÀ½ÀÇ Àå¼Ò¿¡¼­ ¾òÀ» ¼ö ÀÖ´Ù.

Site                    Directory                       File Name

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

¼ÒÇÁÆ®¿þ¾î¸¦ ±¸ÇßÀ» ¶§, ¼ÒÇÁÆ®¿þ¾î¿¡ Æ÷ÇÔµÈ ÀνºÆ®·°¼ÇÀ» ÀÐ°í µû¸£±æ ¹Ù¶õ ´Ù. yp-clients 2.2´Â libc4¿Í libc5 ¿¡¼­ 5.4.20±îÁö¸¦ À§ÇÑ °ÍÀÌ´Ù. libc 5.4 .21°ú glibc 2.x´Â yp-tools 1.4.1°ú ±× ÀÌÈÄ ¹öÀüÀ» ÇÊ¿ä·Î ÇÑ´Ù. »õ·Î³ª¿Â yp -tools 2.2´Â ¸ðµç ¸®´ª½ºÀÇ libc¿¡¼­ ÀÛµ¿µÈ´Ù. ´Ü, NIS Äڵ忡 ¹ö±×°¡ À־ , ¿©·¯ºÐÀº 5.4.21 - 5.4.35 ¹öÀüÀÇ libc´Â »ç¿ëÇÏ¸é ¾ÈµÈ´Ù. ´ë½Å 5.4.36 ÀÌÈÄ ¹öÀüÀ» »ç¿ëÇÏ´Â°Ô ÁÁ´Ù. ±×·¸Áö ¾ÊÀ¸¸é ´ëºÎºÐÀÇ YPÇÁ·Î±×·¥Àº ÀÛµ¿ÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù. ypbind 3.3µµ ¿ª½Ã ¸ðµç ¶óÀ̺귯¸®¿¡¼­ ÀÛµ¿ÇÑ´Ù. ¸¸¾à gcc 2.8.xȤÀº ±× ÀÌÈÄ ¹öÀü,egcs ȤÀº glibc 2.x¸¦ »ç¿ëÇÑ´Ù¸é, ypbind-3.3-glibc5.diff patc h¸¦ ypbind-3.3¿¡ Ãß°¡ÇØ Áà¾ßÇÑ´Ù. yp-clients 2.2¿¡¼­ ³ª¿Â ypbind¸¦ »ç¿ëÇÏÁö ¸»¶ó. ypbind-mt´Â »õ·Î³ª¿Â ¸ÖƼ ¾²·¹µå µ¥¸óÀÌ´Ù. ÀÌ°ÍÀº Kernel 2.2¿Í glibc 2.1ȤÀº ÀÌÈÄ ¹öÀüÀ» ÇÊ¿ä·Î ÇÑ´Ù.

6.3 ypbind µ¥¸ó

¼ÒÇÁÆ®¿þ¾î¸¦ ¼º°øÀûÀ¸·Î ÄÄÆÄÀÏÀ» ÇßÀ¸¸é, ÀÌÁ¦ ÀνºÅçÀ» ÇÒ Áغñ°¡ µÈ °ÍÀÌ ´Ù. ypbind µ¥¸óÀÇ Àû´çÇÑ µð·ºÅ丮´Â /usr/sbin ÀÌ´Ù. ¾î¶² À̵éÀº NYS¸¦ ÀÌ¿ë ÇÏ´Â ½Ã½ºÅÛ¿¡¼­´Â ypbind°¡ ÇÊ¿ä ¾øÀ» °ÍÀ̶ó°í ¸»ÇÒ ¼öµµ ÀÖ´Ù. ÀÌ°ÍÀº Ʋ¸° °ÍÀÌ´Ù. ypwhich¿Í ypcatÀº Ç×»ó ypbind¸¦ ÇÊ¿ä·Î ÇÑ´Ù.

¼³Ä¡ ´Ü°èÀÇ °¡Àå ù¹ø°·Î ÀÌ°ÍÀ» ÇؾßÇÑ´Ù. ´Ù¸¥ ¹ÙÀ̳ʸ®µé(ypwhich, ypcat , yppasswd, yppoll, ypmatch)Àº º¸Åë /usr/bin°ú °°Àº ´Ù¸¥ ¸ðµç À¯ÀúµéÀÌ Á¢ ±Ù °¡´ÉÇÑ °÷¿¡ ÀÖ¾î¾ß ÇÑ´Ù.

»õ·Î¿î ¹öÀüÀÇ ypbind´Â /etc/yp.conf¶ó´Â ¼³Á¤ÆÄÀÏÀ» °¡Áö°í ÀÖ´Ù. ¿©·¯ºÐÀº ±× ÆÄÀÏ¿¡¼­ NIS¼­¹ö¸¦ ÇϵåÄÚµåÇØ ÁÙ ¼ö ÀÖ´Ù. Á» ´õ »ó¼¼ÇÑ ³»¿ëÀº manual pa geÀÇ ypbind(8)À» ÂüÁ¶Çϱ⠹ٶõ´Ù. NYS¸¦ À§Çؼ­µµ ÀÌ ÆÄÀÏÀÌ ÇÊ¿äÇÏ´Ù. ¿¹¸¦µé¸é:

        ypserv votager
        ypserv defiant
        ypserv ds9

¸¸¾à ½Ã½ºÅÛ¿¡¼­ NIS¾øÀÌ È£½ºÆ® ³×ÀÓÀ» ¾Ë¾Æ³¾ ¼ö ÀÖ´Ù¸é ±×³É ±× À̸§À» »ç¿ë ÇÏ¸é µÇÁö¸¸, ±×·¸Áö ¾ÊÀº °æ¿ì¿¡´Â IP address¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù. ypbind 3.3Àº ¹ö±×°¡ À־, À§ ¿¹ÀÇ ¸¶Áö¸·ÀÎ ypserv ds9¸¸À» »ç¿ëÇØ¾ß ÇÑ´Ù. ¸ðµç ´Ù¸¥ °Í µéÀº ¹«½ÃµÈ´Ù. ypbind-mt´Â ÀÌ°ÍÀ» ¼öÁ¤ÇÏ¿© »ç¿ëÇÑ´Ù.

½ºÅ¸Æ® ¾÷ ÆÄÀÏ¿¡¼­ ½ÇÁ¦·Î Àû¿ëÇØ º¸±âÀü¿¡, ypbind¸¦ Å×½ºÇØ º¸´Â °ÍÀº ÁÁ´Ù. ypbind¸¦ Å×½ºÆ® ÇØ º¸±â À§ÇØ ´ÙÀ½°ú °°ÀÌ ÇÒ ¼ö ÀÖ´Ù.

ÀÌÁ¦ ¿©·¯ºÐÀº ypcatµî°ú °°Àº NISŬ¶óÀ̾ðÆ® ÇÁ·Î±×·¥µéÀ» ½ÇÇà½Ãų ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î "ypcat passwd.byname"Àº ¿©·¯ºÐ¿¡°Ô Àüü NIS Æнº¿öµå µ¥ÀÌÅͺ£ÀÌ ½º¸¦ Á¦°øÇØ ÁÙ °ÍÀÌ´Ù.

Áß¿ä»çÇ× : ¸¸¾à ¿©·¯ºÐÀÌ Å×½ºÆ®¸¦ ±×³É °Ç³Ê¶Ù¾ú´Ù¸é, domain ³×ÀÓÀ» ¼¼ÆÃÇÏ ´Â °Í°ú, ´ÙÀ½ µð·ºÅ丮 ¸¸µå´Â °ÍÀ» È®½ÇÈ÷ Ç϶ó.

        /var/yp

ÀÌ µð·ºÅ丮´Â ypbind°¡ ¼º°øÀûÀ¸·Î ¼öÇàµÇ±â À§ÇÏ¿© "¹Ýµå½Ã" Á¸ÀçÇØ¾ß ÇÑ´Ù.

domainnmaeÀÌ ¿Ã¹Ù¸£°Ô ¼¼ÆõǾú´ÂÁö¸¦ º¸±âÀ§ÇØ, yp-tools 2.2ÀÇ /bin/ypdomai nname À» »ç¿ëÇ϶ó. ÀÌ°ÍÀº º¸´Ù ¾ö°ÝÇÑ yp_get_default_domain()ÇÔ¼ö¸¦ »ç¿ë ÇÑ´Ù. ÀÌ°ÍÀº ¸®´ª½º¿¡ ±âº»À¸·Î ¼³Á¤µÇ¾î ¸¹Àº ¹®Á¦¸¦ ÀÏÀ¸Å°´Â (none) domain nameÀ» Çã¿ëÇÏÁö ¾Ê´Â´Ù.

ÀÌÁ¦ Å×½ºÆ®°¡ µÇ¾ú´Ù¸é, ¿©·¯ºÐÀº ºÎÆýà ypbind°¡ ¼öÇàµÇ¾î ¿©·¯ºÐÀÇ ¸Ó½®ÀÌ NIS Ŭ¶óÀ̾ðÆ®°¡ µÉ ¼ö ÀÖµµ·Ï ½ÃÀÛ ÆÄÀÏÀ» ¼öÁ¤ÇÏ±æ ¿øÇÒ Áöµµ ¸ð¸¥´Ù. ypbin d°¡ ½ÃÀ۵DZâ Àü¿¡ domainnameÀÌ ¼¼Æõȴٴ °ÍÀ» È®½ÇÈ÷ ¾Ë¾Æ µÎÀÚ.

¹Ù·Î ±×°Å´Ù. ¸Ó½®À» ¸®ºÎÆ®ÇÏ°í, ypbind°¡ ½ÇÁ¦·Î ½ÃÀ۵Ǿú´ÂÁö ºÎÆ® ¸Þ½ÃÁö ¸¦ »ìÆ캸¾Æ¶ó.

6.4 Traditional NIS¿¡¼­ÀÇ NIS¼¼ÆÃÇϱâ

È£½ºÆ® lookupÀ» À§ÇØ /etc/host.conf ÆÄÀÏÀÇ lookup order ÁÙ¿¡ "nis" ¸¦ ºÙ¿© ³Ö¾î¶ó. ÀÚ¼¼ÇÑ ³»¿ëÀ» À§ÇÏ¿© manÆäÀÌÁöÀÇ "resolv+.8"À» ÂüÁ¶Ç϶ó.

¿©·¯ºÐ NISŬ¶óÀ̾ðÆ®ÀÇ /etc/passwdÆÄÀÏ¿¡ ´ÙÀ½ ÁÙÀ» Ãß°¡ÇÏ¿©¶ó.

+::::::

¿©·¯ºÐÀº +¿Í -¹®ÀÚµéÀ» »ç¿ëÇÏ¿© »ç¿ëÀÚµéÀ» Æ÷ÇÔ/Á¦¿Ü ȤÀº º¯°æÇÒ ¼ö ÀÖ´Ù. ¸¸¾à guestÀ¯Àú¸¦ »ç¿ëÇÏ°í ½Í´Ù¸é, ´ÜÁö -guest¸¦ /etc/passwdÆÄÀÏ¿¡ ³Ö¾îÁÖ¸é µÈ´Ù. "linux"¶ó´Â À¯Àú¿¡°Ô ksh°ú °°Àº ´Ù¸¥ ½©À» »ç¿ëÇÏ°Ô ÇÏ°í ½Í´ÙÇصµ ¾Æ ¹« ¹®Á¦ ¾ø´Ù. ´ÜÁö "+linux::::::/bin/ksh" ( ""´Â Á¦¿ÜÇÏ°í )À» /etc/passwd ¿¡ Ãß°¡ÇÏ¸é µÈ´Ù. º¯°æÇÏ°í ½ÍÀº ¾ÊÀº Çʵ忡 ´ëÇؼ­´Â ±×³É ºóÄ­À¸·Î ³õ¾Æ µÎ ¸é µÈ´Ù. ¿©·¯ºÐÀº ¶ÇÇÑ »ç¿ëÀÚµéÀ» °ü¸®Çϱâ À§ÇØ NetgroupÀ» »ç¿ë ÇÒ ¼ö ÀÖ´Ù.

¿¹¸¦ µé¾î, miquels¿Í dth, ed ±×¸®°í ¸ðµç sysadmin netgroupÀÇ ¸ðµç ¸â¹öµé¿¡ °Ô¸¸ ·Î±ä Á¢±ÙÀ» Çã¿ëÇÏÁö¸¸, ´Ù¸¥ ¸ðµç À¯ÀúµéÀÇ °èÁ¤ µ¥ÀÌÅ͸¦ »ç¿ë°¡´ÉÇÑ »óÅ·Π³²°Ü µÎ±â À§Çؼ­´Â ´ÙÀ½°ú °°ÀÌ ÇÏ¸é µÈ´Ù.

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

¸®´ª½º¿¡¼­´Â À§ÀÇ ¿¹Á¦¿Í °°ÀÌ Æнº¿öµå Çʵ带 Áßø ÇÒ ¼ö ÀÖ´Ù. "ftp" ·Î±ä À» Á¦°Å Ç߱⠶§¹®¿¡, ÀÌ°ÍÀº ´õÀÌ»ó ¾Ë·ÁÁöÁö ¾Ê¾Æ anonymous ftp´Â ´õÀÌ»ó ÀÛ µ¿ÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù.

netgroup´Â ´ÙÀ½°ú °°´Ù.

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

Áß¿ä»çÇ× : netgroupÀÇ ±â´ÉÀº libc 4.5.26ºÎÅÍ ¸¸µé¾îÁ³±â ¶§¹®¿¡, 4.5.26 ÀÌ Àü ¹öÀüÀ» »ç¿ëÇÏ°Ô µÈ´Ù¸é, ypbind°¡ »ì¾Æ ÀÖ´Â ÇÑ NIS Æнº¿öµå µ¥ÀÌÅͺ£À̽º ¿¡ ÀÖ´Â ¸ðµç À¯ÀúµéÀÌ ¿©·¯ºÐÀÇ ¸®´ª½º ¸Ó½®¿¡ ·Î±ä ÇÒ ¼ö ÀÖ´Ù!!!

6.5 NYS¿¡¼­ÀÇ NIS¼¼ÆÃÇϱâ

NIS ¼³Á¤ ÆÄÀÏÀÎ /etc/yp.conf¿¡¼­ ÇÊ¿äÇÑ ¼³Á¤Àº ´ÜÁö ¿Ã¹Ù¸¥ ¼­¹ö¸¦ °¡¸®Å° ´Â °ÍÀÌ´Ù. ¶ÇÇÑ Name Services Switch ¼³Á¤ ÆÄÀÏ( /etc/nsswitch.conf )µµ ¿Ã ¹Ù¸£°Ô ¼Â¾÷ µÇ¾î ÀÖ¾î¾ß ÇÑ´Ù.

¿©·¯ºÐÀº ypbind¸¦ ¼³Ä¡ÇØ¾ß ÇÑ´Ù. libc°¡ ÀÌ°ÍÀ» ÇÊ¿ä·Î ÇÏÁö´Â ¾ÊÁö¸¸, NIS(Y P) ÅøµéÀº ÀÌ°ÍÀ» ÇÊ¿ä·Î ÇÑ´Ù.

¿©·¯ºÐÀÌ »ç¿ëÀÚ Æ÷ÇÔ/Á¦¿ÜÀÇ ±â´É(+/-guest/+@admins)À» »ç¿ëÇÏ±æ ¿øÇÑ´Ù¸é, n sswitch.conf ÆÄÀÏ¿¡¼­ "passwd: compat"°ú "group :compat"À» »ç¿ëÇØ¾ß ÇÑ´Ù. "shadow: compat"ÀÌ ¾ø´Ù´Â °ÍÀ» È®½ÇÈ÷ ¾Ë¾Æ µÎÀÚ. ÀÌ·± °æ¿ì¿¡ ±×°Í ´ë½Å "sh adow: files nis"¸¦ »ç¿ëÇÑ´Ù.

NYS ¼Ò½ºµéÀº libc 5 ¼Ò½ºµéÀÇ ÀϺκÐÀÌ´Ù. ¼³Á¤À» ÇÒ ¶§, óÀ½¿¡ "Values corr et"ÀÇ ¹°À½¿¡ "NO"¶ó°í ÇÏ°í, "Build a NYS libc from nys"¶ó´Â ¹°À½¿¡´Â "YES" ¶ó°í ´äÇ϶ó.

6.6 glibc 2.x¿¡¼­ÀÇ NIS¼¼ÆÃÇϱâ

glibc´Â "ÀüÅëÀûÀÎ NIS"¸¦ »ç¿ëÇÑ´Ù. ±×·¡¼­ ypbind¸¦ »ç¿ëÇؾßÇÒ ÇÊ¿ä°¡ ÀÖ´Â °ÍÀÌ´Ù. Name Services Switch¼³Á¤ ÆÄÀÏ( /etc/nsswitch.conf ) ÆÄÀÏÀÌ ¿Ã¹Ù¸£°Ô ¼Â¾÷ µÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. ¸¸¾à ¿©·¯ºÐÀÌ passwd, ½¦µµ¿ì ȤÀº group¿¡ ´ëÇÏ¿© co mpat ¸ðµå¸¦ »ç¿ëÇÑ´Ù¸é ÆÄÀÏ ¸Ç ¸¶Áö¸·¿¡ "+"¸¦ Ãß°¡ÇØ Áà¾ß ÇÑ´Ù. ±×·¯¸é À¯Àú ÀÇ Æ÷ÇÔ/Á¦¿Ü ±â´ÉÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¼³Á¤Àº ¼Ö¶ó¸®½º 2.x¿¡¼­ ÇÏ´Â °Í°ú Á¤È® ÇÏ°Ô ÀÏÄ¡ÇÑ´Ù.

6.7 nsswitch.conf ÆÄÀÏ¿¡ ´ëÇؼ­

/etc/host.conf°¡ È£½ºÆ®¸¦ ã´Â ¹æ¹ýÀ» °áÁ¤ÇÏ´Â °Í°ú °°ÀÌ, Network Service switchÆÄÀÏ /etc/nsswitch.conf´Â ¾î¶² Á¤º¸°¡ ¿ä±¸µÇ¾úÀ» ¶§, lookupÇÏ´Â ¼ø¼­ ¸¦ °áÁ¤ÇÑ´Ù. ¿¹¸¦ µé¸é ´ÙÀ½ ¶óÀÎ

        hosts: files nis dns

host¸¦ lookup(ã´Â)ÇÏ´Â ±â´ÉÀº ¸ÕÀú NIS lookup¿¡ µÚÀÌÀº /etc/hosts ÆÄÀÏÀ» ã¾Æº¸°í ¸¶Áö¸·À¸·Î µµ¸ÞÀÎ ³×ÀÓ ¼­ºñ½º( /etc/resolv.conf¿Í named )¸¦ ÅëÇÑ ´Ù. ÀÌ ¶§, ½ÇÆÐÇßÀ» °æ¿ì¿¡´Â ¿¡·¯¸¦ ¸®ÅÏÇÑ´Ù. ÀÌ ÆÄÀÏÀº ¸ðµç À¯Àú¿¡°Ô Àб⠱ÇÇÑÀÌ ÁÖ¾îÁ®¾ß ÇÑ´Ù! ¿©·¯ºÐÀº man-pageÀÇ nsswitch.5ȤÀº nsswitch.conf.5¿¡ ¼­ Á» ´õ ¸¹Àº Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖÀ» °ÍÀÌ´Ù.

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 or nis+     Use NIS+ (NIS version 3)
#   nis or yp       Use NIS (NIS version 2), also called YP
#   dns         Use DNS (Domain Name Service)
#   files           Use the local files
#   db          Use the local database (.db) files
#   compat          Use NIS on compat mode
#   [NOTFOUND=return]   Stop searching if not found so far
#

passwd:         compat
group:          compat

# For libc5, you must use shadow: files nis
shadow:         compat

passwd_compat: nis
group_compat: nis
shadow_compat: nis

hosts:          nis 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 nisplus
aliases:    nisplus [NOTFOUND=return] files

passwd_compat, group_compat ±×¸®°í shadow_compatÀº glibc 2.x¿¡¼­¸¸ Áö¿øµÈ ´Ù. ¸¸¾à /etc/nsswitch.conf¿¡ ½¦µµ¿ì¿¡ ´ëÇÑ ±ÔÄ¢µéÀÌ ¾ø´Ù¸é, glibc´Â look upÀ» À§ÇØ passwd ±ÔÄ¢À» »ç¿ëÇÒ °ÍÀÌ´Ù. glibc¸¦ À§ÇØ hesoid°°Àº ´Ù¸¥ looku p ¸ðµâµéÀÌ ÀÖ´Ù. Á»´õ ¸¹Àº Á¤º¸¸¦ À§ÇØ, glibc ¹®¼­¸¦ ÂüÁ¶Çϱ⠹ٶõ´Ù.

6.8 NIS¿¡¼­ÀÇ ½¦µµ¿ì(Shadow) Æнº¿öµå

NIS¿¡¼­ÀÇ ½¦µµ¿ì Æнº¿öµå´Â Ç×»ó ÁÁÁö ¾ÊÀº ¾ÆÀ̵ð¾îÀÌ´Ù. ½¦µµ¿ì°¡ ÁÖ´Â º¸¾È À» ÀÒÀ» »Ó¸¸ ¾Æ´Ï¶ó, ÀÌ°ÍÀº ¾ÆÁÖ ÀûÀº ¸î¸îÀÇ ¸®´ª½º C ¶óÀ̺귯¸®¿¡¼­¸¸ Áö¿ø µÈ´Ù. NIS¿¡¼­ÀÇ ½¦µµ¿ì Æнº¿öµå¸¦ ÇÇÇÏ´Â ÁÁÀº ¹æ¹ýÀº ¿ÀÁ÷ ·ÎÄà ½Ã½ºÅÛÀÇ À¯ Àú¸¸ /etc/shadow¿¡ ³Ö´Â °ÍÀÌ´Ù. ÀÌ·¸°Ô ÇÔÀ¸·Î½á ¿©·¯ºÐÀº root ·Î±ä½Ã ½¦µµ¿ì ¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ°í, ÀÏ¹Ý NIS À¯Àúµé¿¡°Ô´Â º¸ÅëÀÇ passwd ¹æ¹ýÀ» »ç¿ëÇÒ ¼ö ÀÖ ´Ù. ÀÌ°ÍÀ¸·Î ¸ðµç NISŬ¶óÀ̾ðÆ®¿Í ÇÔ²² ÀÛµ¿ÇÏ´Â ÀÌÁ¡À» ¾òÀ» ¼ö ÀÖ´Ù.

Linux

NIS¿¡¼­ ½¦µµ¿ì Æнº¿öµå¸¦ Áö¿øÇÏ´Â ¸®´ª½º libc´Â GNU C Library 2.x¹Û¿¡ ¾ø ´Ù. ¸®´ª½º libc 5´Â ÀÌ°ÍÀ» Áö¿øÇÏÁö ¸øÇÑ´Ù. ¸®´ª½º libc 5°¡ NYS°¡ °¡´ÉÇÑ ÄÚµå¿Í ÇÔ²² ÄÄÆÄÀÏ µÇ¾úÁö¸¸, ±× ÄÚµå´Â ¾î¶² °æ¿ì¿¡ À־ ½É°¢ÇÏ°Ô ±úÁ®¹ö ¸®°í, ¸ðµç ¿Ã¹Ù¸¥ ½¦µµ¿ì ¿£Æ®¸®¿¡ ´ëÇÏ¿© ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù.

Solaris

¼Ö¶ó¸®½º´Â NIS¸¦ ÅëÇÑ ½¦µµ¿ì Æнº¿öµå¸¦ Áö¿øÇÏÁö ¾Ê´Â´Ù.

PAM

PAMÀº À¯³­È÷ pam_pwdb/libpwdb¿¡¼­ NIS¸¦ ÅëÇÑ Æнº¿öµå¸¦ Áö¿øÇÏÁö ¾Ê´Â´Ù. ÀÌ°ÍÀº RedHat 5.x À¯Àúµé¿¡°Ô À־ Å« ¹®Á¦ÀÌ´Ù. ¸¸¾à glibc¿Í PAMÀ» °¡Áö °í ÀÖ´Ù¸é, ¿©·¯ºÐÀº /etc/pam.d/* ¿£Æ®¸®µéÀ» º¯°æÇÒ ÇÊ¿ä°¡ ÀÖ´Ù. ¸ðµç pam_p wdb ±ÔÄ¢µéÀ» pam_unix_* ¸ðµâµé·Î ±³Ã¼Çضó. pam_unix_auth.so ¸ðµâÀÇ ¹ö±× ¶§ ¹®¿¡, ÀÌ°ÍÀº ¾ðÁ¦³ª ÀÛµ¿ÇÏÁö´Â ¾Ê´Â´Ù.

/etc/pam.d/login ÆÄÀÏÀÇ ¿¹´Â ´ÙÀ½°ú À¯»çÇÏ´Ù:

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

ÀÎÁõÀ» À§ÇÏ¿© ¿©·¯ºÐÀº pam_unix_auth.so ¸ðµâÀÌ ÇÊ¿äÇÏ´Ù. °èÁ¤À» À§Çؼ­´Â p am_unix_acct.so°¡ ÇÊ¿äÇÏ°í Æнº¿öµå¸¦ À§Çؼ­ pam_unix_passwd.so ±×¸®°í ¼¼ ¼Ç󸮸¦ À§ÇØ pam_unix_session.so¸ðµâÀÌ ÇÊ¿äÇÏ´Ù.


´ÙÀ½ ÀÌÀü Â÷·Ê