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

8. NIS ¼­¹ö ¼¼ÆÃÇϱâ

8.1 ¼­¹ö ÇÁ·Î±×·¥ ypserv

º» ¹®¼­´Â "ypserv" NIS ¼­¹öÀÇ ¼¼Æÿ¡ ´ëÇؼ­¸¸ ¾ð±ÞÇÑ´Ù.

NIS ¼­¹ö ¼ÒÇÁÆ®¿þ¾î´Â ´ÙÀ½¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù:

Site            Directory                       File Name

ftp.kernel.org  /pub/linux/utils/net/NIS        ypserv-1.3.6.tar.gz

¿©·¯ºÐÀº http://www.suse.de/~kukuk/linux/nis.html ¿¡¼­ ´õ ¸¹Àº Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ´Ù.

¼­¹öÀÇ ¼Â¾÷Àº ÀüÅëÀûÀÎ NIS³ª NYS¸ðµÎ °°´Ù.

ypserv¿Í makedbm ÇÁ·Î±×·¥À» ¾ò±â À§ÇØ ¼ÒÇÁÆ®¿þ¾î¸¦ ÄÄÆÄ ÀÏÇ϶ó. securenet ÆÄÀÏ È¤Àº tcp_wrapper¸¦ »ç¿ëÇϱâ À§Çؼ­ ypserv¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. tcp_wrapper´Â º¸´Ù ´õ À¯¿¬Çϳª, ¸¹Àº À̵éÀÌ ±×°ÍÀ» ÀÌ¿ëÇÏ´Â µ¥ ÀÖ¾î ¹®Á¦¸¦ ÀÏÀ¸Å²´Ù. ±×¸®°í tcp_wrapper¸¦ À§ÇÑ ¾î¶² ¼³Á¤Àº ¸Þ¸ð¸® ´©Ãâ±î Áö ÀÏÀ¸Å³ ¼ö ÀÖ´Ù. ¸¸¾à ¿©·¯ºÐÀÌ tcp_wrapper¸¦ À§ÇØ ÄÄÆÄÀÏ µÈ ypserv¿Í ¹® Á¦¸¦ ÀÏÀ¸Å³ °æ¿ì, securenet ÆÄÀÏÀ» ÀÌ¿ëÇÏ¿© ´Ù½Ã ±×°ÍÀ» ÄÄÆÄÀÏ Ç϶ó. ypse rv --version ¸í·ÉÀÌ ¿©·¯ºÐÀÌ ¾î¶² ¹öÀüÀ» °¡Áö°í ÀÖ´ÂÁö °¡¸£ÃÄ ÁÙ °ÍÀÌ´Ù.

¿©·¯ºÐÀÇ ¼­¹ö¸¦ master·Î »ç¿ëÇÏ°í ÀÖ´Ù¸é, NIS¸¦ »ç¿ë °¡´ÉÇÏ°Ô Çϱâ À§ÇØ ¾î ¶² ÆÄÀÏÀ» ¿ä±¸ÇÒ °ÍÀÎÁö¸¦ °áÁ¤ÇÏ°í, /var/yp/Makefile¿¡ ¸ðµç rule ¿¡ ´ëÇÑ ÀûÀýÇÑ ¿£Æ®¸®µéÀ» Ãß°¡Çϰųª ȤÀº Á¦°ÅÇ϶ó. ¿©·¯ºÐÀº Ç×»ó Makefile À» º¸°í ÆÄÀÏÀÇ ¾ÕºÎºÐÀÇ ¿É¼ÇµéÀ» ¼öÁ¤ÇØ¾ß ÇÑ´Ù.

ypserv 1.1 °ú ypserv 1.2»çÀÌ¿¡´Â ÇϳªÀÇ Å« º¯È­°¡ ÀÖ¾ú´Ù. ¹öÀü 1.2¿¡¼­´Â ÆÄ ÀÏÀÇ ÇÚµéµéÀÌ Ä³½¬°¡µÈ´Ù. ÀÌ°ÍÀº ¿©·¯ºÐÀÌ »õ·Î¿î mapÀ» ¸¸µé¶§, Ç×»ó -c ¿É¼Ç À¸·Î makedbmÀ» È£ÃâÇؾßÇÑ´Ù´Â ÀǹÌÀÌ´Ù. ¿©·¯ºÐÀÌ ypserv 1.2ȤÀº ±× ÀÌÈĹöÀü ¿¡¼­ÀÇ »õ·Î¿î /var/yp/MakefileÀ» »ç¿ëÇÏ´øÁö ¾Æ´Ï¸é, Makefile¿¡¼­ m akedbmÀ» ÇÏ´Â ºÎºÐ¿¡ -c Ç÷¡±×¸¦ Ãß°¡ÇØ Áà¾ßÇÑ´Ù. ÀÌ·¸°Ô ÇÏÁö ¾ÊÀ¸¸é, ypser v´Â °è¼Ó ÀÌÀüÀÇ mapÀ» »ç¿ëÇÏ°Ô µÇ¾î ¾÷µ¥ÀÌÆ®µÈ mapÀ» »ç¿ëÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù.

ÀÌÁ¦ /var/yp/securents ¿Í /etc/ypserv.conf ÆÄÀÏÀ» ÀÛ¼ºÇضó . º¸´Ù ¸¹Àº Á¤º¸¸¦ À§ÇÏ¿©, ¸Þ´º¾ó ÆäÀÌÁö ypserv(8)°ú ypserv.conf(5) ¸¦ ÂüÁ¶ Ç϶ó.

portmapper (portmap(8))ÀÌ µ¹¾Æ°¡°í ÀÖ´Â °ÍÀ» È®ÀÎÇ϶ó. ±×¸®°í ¼­¹öÀÎ yp serv¸¦ ½ÇÇàÇ϶ó. ¸í·É

        % rpcinfo -u localhost ypserv

À» ½ÇÇàÇÏ¸é ´ÙÀ½°ú ºñ½ÁÇÑ °á°ú¸¦ Ãâ·ÂÇØ¾ß ÇÑ´Ù.

        program 100004 version 1 ready and waiting
        program 100004 version 2 ready and waiting

"version 1" ¶óÀÎÀº ypservÀÇ ¹öÀü°ú ¿©·¯ºÐÀÇ confiuration¿¡ µû¶ó¼­ ¾øÀ» ¼ö µµ ÀÖ´Ù. ÀÌ°ÍÀº ¿©·¯ºÐÀÌ ¿¹ÀüÀÇ SunOS 4.xÀÇ Å¬¶óÀ̾ðÆ®ÀÏ ¶§¸¸ ÇÊ¿äÇÏ´Ù.

ÀÌÁ¦ NIS (YP) µ¥ÀÌÅͺ£À̽º¸¦ »ý¼ºÇÏÀÚ. master»ó¿¡¼­, ´ÙÀ½À» ½ÇÇàÇ϶ó.

        % /usr/lib/yp/ypinit -m

slave¿¡¼­ ypwhich -m ¸í·ÉÀÌ ÀÛµ¿ÇÏ´ÂÁö È®ÀÎÇ϶ó. ÀÌ°ÍÀº ¿©·¯ºÐ ÀÇ slave°¡ ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇϱâÀü¿¡ NIS Ŭ¶óÀ̾ðÆ®·Î¼­ configureµÇ¾ß ÇÏ´Â Áö¸¦ ÀǹÌÇÑ´Ù. ´ÙÀ½ ¸í·ÉÀº È£½ºÆ®°¡ NIS slave°¡ µÇµµ·Ï ÀνºÅçÇÑ´Ù.

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

¸¸¾à ¿©·¯ºÐ¿¡°Ô ¾î¶² ´õ Å« ¹®Á¦°¡ ÀÖ´Ù¸é, ¼­·Î ´Ù¸¥ xterm¿¡¼­ µð¹ö±× ¸ðµå ·Î ypserv¿Í ypbind¸¦ ½ÃÀÛÇÒ ¼ö ÀÖ´Ù. µð¹ö±×ÀÇ Ãâ·ÂÀº ¿©·¯ºÐ¿¡°Ô ¹«¾ùÀÌ À߸øµÇ¾ú´ÂÁö¸¦ º¸¿©ÁØ´Ù.

mapÀ» ¾÷µ¥ÀÌÆ®ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é, NIS masterÀÇ /var/yp µð·ºÅ丮¿¡¼­ make¸¦ ÇØÁØ´Ù. ÀÌ°ÍÀº ¼Ò½º ÆÄÀÏÀÌ »õ·Î¿î °ÍÀÌ¸é »õ·Ó°Ô ¾÷µ¥ÀÌÆ®¸¦ ÇØÁÙ °ÍÀÌ°í, slave ¼­¹öµé¿¡°Ô ÆÄÀϵéÀ» ÀüÇØÁÙ °ÍÀÌ´Ù. mapÀ» ¾÷µ¥ÀÌÆ® ÇÏ´Â µ¥ ypinit¸¦ »ç¿ëÇÏÁö ¸¶¶ó.

*slave ¼­¹ö¿¡¼­* ·çÆ®ÀÇ crontabÀ» ÀÛ¼ºÇϱ⸦ ¿øÇÑ´Ù¸é ´ÙÀ½ ¶óÀεéÀ» Ãß°¡Ç϶ó.

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

ÀÌ°ÍÀº master¿¡¼­ ¾÷µ¥ÀÌÆ®°¡ µÈ ½ÃÁ¡¿¡¼­ slave°¡ ´Ù¿îÀÌ µÇ¾î¼­ ¾÷µ¥ÀÌÆ®°¡ ¾ÈµÈ °æ¿ì¶óµµ ´ëºÎºÐÀÇ NIS mapµéÀÌ ÃÖ±Ù°ÍÀ¸·Î µÇ´Â °ÍÀ» º¸ÀåÇÑ´Ù.

¿©·¯ºÐÀº ³ªÁß ¾ðÁ¦¶óµµ slave¸¦ Ãß°¡ÇÒ ¼ö ÀÖ´Ù. óÀ½¿¡, »õ·Î¿î slave ¼­¹ö¿¡ ´ëÇÏ¿© NIS master¿¡ ´ëÇÑ contactÇÒ ±ÇÇÑÀÌ ÀÖ´Ù´Â °ÍÀ» È®ÀÎÇ϶ó. ±×¸®°í »õ·Î ¿î slave ¼­¹ö¿¡¼­ ´ÙÀ½À» ½ÇÇàÇ϶ó.

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

master ¼­¹öÀÇ /var/yp/ypservers ¿¡ »õ·Î¿î salve¼­¹ö¸¦ Ãß°¡ÇÏ°í /var/yp µð·ºÅ丮¿¡¼­ make¸¦ ½ÇÇà½ÃÄÑ mapÀ» ¾÷µ¥ÀÌÆ®Ç϶ó.

¿©·¯ºÐÀÇ NIS ¼­¹ö¿¡¼­ »ç¿ëÀڵ鿡 ´ëÇÏ¿© Á¢±ÙÁ¦ÇÑÀ» µÎ°í ½Í´Ù¸é, NIS ¼­¹ö¿¡ ¼­µµ ypbind¸¦ ½ÇÇà½ÃÅ°°í, /etc/passwd Æнº¿öµå ÆÄÀÏ Áß°£¿¡ Ç÷¯½º ¿£Æ®¸®¸¦ Ãß°¡ÇÏ´Â ¹æ¹ýÀ¸·Î ¼¼ÆÃÀ» ÇØÁà¾ß ÇÑ´Ù. ¶óÀ̺귯¸® functionµéÀº 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:/usr/games:
        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 Æнº¿öµå¿Í ±×·ìÆÄÀÏ µéÀº º¸Åë /etc/yp/µð·ºÅ丮¿¡ ÀúÀåµÇ¾î ÀÖ´Ù. ¿©·¯ºÐÀÌ ÀÌ·¸°Ô Çϱ⸦ ¿øÇÑ´Ù¸é passwd, chfn, adduser°°Àº ÀϹÝÀûÀÎ °ü¸® ÅøÀº ´õÀÌ»ó ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù. µû¶ó¼­ À̰͵éÀ» À§ÇØ ¾î¶² Ưº°ÇÑ ÅøÀ» ¸¸µé¾î¾ß ÇÑ´Ù.

±×·¸Áö¸¸ yppasswd, ypchsh ±×¸®°í ypchfnÀÌ ´ë½Å ÀÛ µ¿ÇÒ °ÍÀÌ´Ù.

8.2 ¼­¹ö ÇÁ·Î±×·¥ yps

"yps" NIS¼­¹ö¸¦ ¼¼ÆÃÇÒ ¶§, ÀÌÀü ¹®´ÜÀ» ÂüÁ¶Çϱ⠹ٶõ´Ù. "yps" ¼­¹ö ¼¼ÆÃÀº ºñ ½ÁÇÏ´Ù. _±×·¸Áö¸¸_ Á¤È®ÇÏ°Ô ÀÏÄ¡ÇÏÁö ¾Ê±â ¶§¹®¿¡ "ypserv" ¸í·ÉÀ» "yps"¿¡ Àû ¿ëÀ» ½ÃµµÇÒ ¶§ °¢º°È÷ Á¶½ÉÇضó! "yps"´Â ¾î¶² ÀúÀÛÀÚµé·Î ºÎÅ͵µ Áö¿øµÇÁö ¾ÊÀ¸ ¸ç, ¾î´À Á¤µµ º¸¾ÈÀÇ Ãë¾àÁ¡À» °¡Áö°í ÀÖ´Ù. ¿©·¯ºÐÀº Á¤¸» ÀÌ°ÍÀ» »ç¿ëÇÏ¸é ¾È µÈ´Ù!

"yps" NIS ¼­¹ö ¼ÒÇÁÆ®¿þ¾î´Â ´ÙÀ½¿¡¼­ ãÀ» ¼ö ÀÖ´Ù:

        Site                    Directory                       File Name

        ftp.lysator.liu.se      /pub/NYS/servers                yps-0.21.tar.gz
        ftp.kernel.org          /pub/linux/utils/net/NIS        yps-0.21.tar.gz

8.3 rpc.ypxfrd ÇÁ·Î±×·¥

rpc.ypxfrd´Â NIS master¿¡¼­ NIS slave¼­¹öµé·Î Àü¼ÛµÇ´Â ¸Å¿ì Å« NIS mapµé¿¡ ´ëÇÑ Àü¼Û ¼Óµµ¸¦ Çâ»ó½ÃÅ°±â À§ÇÑ °ÍÀÌ´Ù. ¸¸¾à NIS slave°¡ »õ·Î¿î mapÀÇ ³»¿ë À» °¡Áø ¸Þ½ÃÁö¸¦ ¹Þ¾ÒÀ» ¶§, ÀÌ°ÍÀº »õ·Î¿î mapÀÇ Àü¼ÛÀ» À§Çؼ­ ypxfrÀ» ½ÇÇà½Ã ų °ÍÀÌ´Ù. ypxfrÀº yp_all()ÇÔ¼ö¸¦ »ç¿ëÇÏ¿©, master¼­¹ö·ÎºÎÅÍ mapÀÇ ³»¿ëÀ» ÀÐÀ» °ÍÀÌ´Ù. ÀÌ ÇÁ·Î¼¼½º´Â µ¥ÀÌÅͺ£À̽º ¶óÀ̺귯¸®¿¡ ÀúÀå µÇ¾î¾ßÇÒ mapÀÌ ±² ÀåÈ÷ Å« °ÍµéÀ̶ó¸é ¸î ºÐ Á¤µµ ¼Ò¿äµÈ´Ù.

rpc.ypxfrd¼­¹ö´Â NIS slave ¼­¹öµé¿¡°Ô °¢°¢µéÀÇ scartch·Î ºÎÅÍ ºôµåÇÏ´Â °Íº¸ ´Ù °£´ÜÈ÷ master ¼­¹öÀÇ map ÆÄÀϵéÀ» º¹»çÇÏ´Â °ÍÀ» Çã¿ëÇÔÀ¸·Î½á Àü¼Û ÇÁ·Î¼¼ ½ºÀÇ ¼Óµµ¸¦ Çâ»ó½ÃŲ´Ù. rpc.ypxfrd´Â RPC±â¹ÝÀÇ ÆÄÀÏ Àü¼Û ±Ô¾àÀ» »ç¿ëÇÑ´Ù. µû ¶ó¼­ ´Ù½Ã »õ·Ó°Ô map ÆÄÀÏÀ» ºôµåÇÏÁö ¾Ê¾Æµµ µÈ´Ù.

rpc.ypxfrd´Â inted¿¡ ÀÇÇؼ­ ½ÃÀÛµÉ ¼ö ÀÖ´Ù. ÇÏÁö¸¸ ÀÌ°ÍÀº ¸Å¿ì ´Ê°Ô ½ÃÀÛµÉ °ÍÀ̱⠶§¹®¿¡, ypserv¿Í °°ÀÌ ½ÃÀ۵Ǿî¾ß ÇÑ´Ù. ¿©·¯ºÐÀº rpc.ypxfrd¸¦ NIS ma ster¼­¹ö¿¡¼­¸¸ ½ÇÇà½ÃÄÑ¾ß ÇÑ´Ù.

8.4 rpc.yppasswdd ÇÁ·Î±×·¥

»ç¿ëÀÚµéÀÌ ±×µéÀÇ Æнº¿öµå¸¦ ¹Ù²Ü¶§¸¶´Ù, NIS Æнº¿öµå µ¥ÀÌÅͺ£À̽º¿Í ±×¿¡ ÀÇÁöÇÏ´Â ´Ù¸¥ NIS µ¥ÀÌÅͺ£À̽ºµéÀº ¾÷µ¥ÀÌÆ® µÇ¾î¾ß ÇÑ´Ù. "rpc.yppasswdd"ÇÁ ·Î±×·¥Àº Æнº¿öµåÀÇ º¯°æÀ» ´Ù·ç°í NIS Á¤º¸µéÀÌ ÀûÀýÇÏ°Ô ¾÷µ¥ÀÌÆ® µÇµµ·Ï ÇÏ °Ô ÇÏ´Â ¼­¹öÀÌ´Ù. rpc.yppasswd ´Â ÇöÀç ypserv¿¡ ÅëÇյǾî ÀÖ´Ù. ¿©·¯ºÐÀº µû ¶ó¼­ ºÐ¸®µÇ¾ú´ø ¿¾³¯ÀÇ yppasswd-0.9.tar.gz ȤÀº yppasswd-0.10.tar.gz¸¦ ÇÊ ¿ä·ÎÇÏÁö ¾Ê´Â´Ù. ±×¸®°í ´õÀÌ»ó ±×°ÍÀ» »ç¿ëÇÏ¸é ¾ÈµÈ´Ù. ypserv 1.3.2¿¡ ÀÖ´Â rpc.yppasswdd´Â shadowÀÇ ¸ðµç °ÍÀ» Áö¿øÇÑ´Ù. yppasswd´Â ÀÌÁ¦ yp-tools-2.2. tar.gzÀÇ ºÎºÐÀÌ´Ù.

¿©·¯ºÐÀº NIS master¼­¹ö¿¡¼­¸¸ rpc.yppasswdd¸¦ ½ÇÇà½ÃÅ°¸é µÈ´Ù. ±âº»ÀûÀ¸·Î, »ç¿ëÀÚµéÀº ±×µéÀÇ ¿ÏÀüÇÑ À̸§À̳ª ·Î±ä ½©À» ¹Ù²ÙÁö ¸øÇϵµ·Ï µÇ¾îÀÖ´Ù. ¿©·¯ ºÐÀº -e chfn ȤÀº -e chsh¿É¼ÇÀ¸·Î ÀÌ°ÍÀ» °¡´ÉÇÏ°Ô ÇÒ ¼ö ÀÖ´Ù.

¸¸¾à ¿©·¯ºÐÀÇ passwd¿Í shadowÆÄÀϵéÀÌ ´Ù¸¥ µð·ºÅ丮 ¸»°í /etc¿¡ ÀÖ´Ù¸é, ¿©·¯ ºÐÀº -D ¿É¼ÇÀ» Ãß°¡ÇÏ¸é µÈ´Ù. ¿¹¸¦ µé¾î ¸ðµç ¼Ò½º ÆÄÀϵéÀ» /etc/yp¿¡ ÀÖ°í »ç¿ëÀÚµéÀÌ ±×µéÀÇ ½©À» ¹Ù²Ù´Â °ÍÀ» Çã¿ëÇÏ°Ô ÇÑ´Ù¸é, rpc.yppasswdd¸¦ ´ÙÀ½°ú °° Àº ÆĶó¹ÌÅÍ¿Í ÇÔ²² ½ÇÇà½ÃÅ°¸é µÈ´Ù.

        rpc.yppasswdd -D /etc/yp -e chsh

ȤÀº

        rpc.yppasswdd -s /etc/yp/shadow -p /etc/yp/passwd -e chsh

´õÀÌ»ó ÇÒ°ÍÀÌ ¾ø´Ù. ¿©·¯ºÐÀº ´ÜÁö rpc.yppasswdd°¡ /var/yp/Make file¿¡¼­ »ç¿ëÇÏ´Â °°Àº ÆÄÀÏÀ» »ç¿ëÇÑ´Ù´Â °Í¸¸ È®½ÇÈ÷ ÇØ µÎ¸é µÈ´Ù. ¿¡ ·¯´Â syslog¿¡ ÀÇÇØ ±â·ÏµÉ °ÍÀÌ´Ù.


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