Chapter 9
Various Network Applications


D.M.Z CONTENT PRE NEXT

9.1 The inetd Super-Server
9.2 The tcpd access control facility
9.3 The services and protocols Files
9.4 Remote Procedure Call
9.5 configuring the r Commands

IP¿Í resolver¸¦ ¼º°øÀûÀ¸·Î ¼Â¾÷ÇÏ°í ³ª¸é, ÀÌÁ¦ ³×Æ®¿÷À» ÅëÇØ Á¦°øÇÏ°íÀÚ ÇÏ´Â ¼­ºñ½º ÂÊÀ¸·Î ´«À» µ¹¸®ÀÚ. ÀÌ Àå¿¡¼± ¸î°¡Áö ´Ü¼øÇÑ ³×Æ®¿÷ ¾îÇø®ÄÉÀ̼Ç, °¡·É inetd ¼­¹ö¶óµç°¡ rlogin Á·(ðé) ÇÁ·Î±×·¥ °°Àº °ÍµéÀÇ ¼³Á¤¿¡ ´ëÇØ ´Ù·é´Ù. Network File System (NFS)¿Í Network Information System(NIS) °°Àº ¼­ºñ½ºÀÇ ±â¹ÝÀÌ µÇ´Â Remote Procedure Call ÀÎÅÍÆäÀ̽º·Î °£·«ÇÏ°Ô³ª¸¶ ´Ù·ê °ÍÀÌ´Ù. ±×·¯³ª, NFS¿Í NISÀÇ ¼³Á¤Àº Á» ´õ ¾ê±â ÇÒ °ÍÀÌ ¸¹À¸¹Ç·Î, º°µµÀÇ Àå¿¡¼­ ¼³¸íÇÑ´Ù. Electronic mail°ú netnewsÀÇ °æ¿ìµµ ¸¶Âù°¡ÁöÀÌ´Ù.

¹°·Ð, ÀÌ ¹®¼­¿¡¼­ ¸ðµç ³×Æ®¿÷ ¾îÇø®ÄÉÀ̼ÇÀ» ¼³¸íÇÒ ¼ö´Â ¾ø´Â ÀÏÀÌ´Ù. ¸¸¾à ÀÌ Ã¥¿¡¼­ ¼³¸íÇϱ⠾ʴ talk, gopher, XmosaicÀ» ¼³Ä¡ÇÏ°íÀÚ ÇÑ´Ù¸é ±×°ÍµéÀÇ ¸Å´º¾ó ÆäÀÌÁö¸¦ Âü°íÇÏ±æ ¹Ù¶õ´Ù.


9.1 The inetd Super-Server

ÈçÈ÷, ¼­ºñ½º´Â µ¥¸ó(daemon)À̶ó´Â °ÍÀ» ÅëÇØ ÇàÇØÁø´Ù. µ¥¸óÀ̶õ ƯÁ¤ Æ÷Æ®¸¦ ¿­¾î, Ä¿³Ú¼ÇÀÌ µé¾î¿À±æ ±â´Ù¸®´Â ÇÁ·Î±×·¥ÀÌ´Ù. ¸¸¾à, Ä¿³Ø¼ÇÀÌ µé¾î¿Â´Ù¸é, ÀÚ½Ä ÇÁ·Î¼¼½º¿¡°Ô Ä¿³Ø¼ÇÀ» ³Ñ°ÜÁÖ°í, ÀÚ½ÅÀº °è¼Ó ¶Ç´Ù¸¥ ¿äûÀ» listenÇÑ´Ù. ÀÌ °³³ä´ë·Î´Ù¸é, ¸ðµç Á¦°øµÇ´Â ¼­ºñ½º¸¶´Ù Çϳª¾¿ÀÇ µ¥¸óÀ» µ¹·Á Ä¿³Ø¼ÇÀÌ ÀϾ´ÂÁö listenÇÏ¿©¾ß ÇÑ´Ù´Â (ÀϹÝÀûÀ¸·Î ÀÌ´Â ½º¿Ò°ø°£ µîÀÇ ½Ã½ºÅÛ ¸®¼Ò½º ³¶ºñ¸¦ ÀǹÌÇÑ´Ù) ´ÜÁ¡ÀÌ ÀÖ´Ù.

±×¸®ÇÏ¿© °ÅÀÇ ¸ðµç UN*X´Â, ¼­ºñ½ºÀÇ ¼ö ¸¸Å­ ¼ÒÄÏÀ» »ý¼ºÇÏ°í select(2) ½Ã½ºÅÛ ÄÝÀ» »ç¿ëÇÏ¿© ±×¸¦ ¸ðµÎ¿¡ ´ëÇØ listening ÇÏ´Â "super-server"¸¦ µ¹¸°´Ù. ¸®¸ðÆ® È£½ºÆ®°¡ ±× ¼­ºñ½ºµé Áß Çϳª¸¦ ¿ä±¸ÇÒ ¶§, super-server´Â À̸¦ ÀÎÁöÇÏ¿© ÀÌ Æ÷Æ®¿¡ ÁöÁ¤µÈ ¼­¹ö¸¦ ½ÇÇà ½ÃŲ´Ù.

º¸Åë »ç¿ëÇÏ´Â super-server´Â inetd, Internet DaemonÀÌ´Ù. ±×°ÍÀº ½Ã½ºÅÛ ºÎÆýÿ¡ ±¸µ¿µÇ°í, /etc/inetd.conf ÆÄÀÏÀ» ±× ¶§ ÀÐ¾î ¼­ºñ½ºÀÇ ¸ñ·ÏÀ» ¾ò´Â´Ù. ¼­¹ö°¡ ºÒ·¯µéÀÎ ¼­ºñ½º ¿Ü¿¡µµ, ÀÎÅͳΠ¼­ºñ½º(internal services)¶ó´Â, inet ÀڽŠ½º½º·Î ¼öÇàÇÏ´Â ¸î°¡Áö »ç¼ÒÇÑ ¼­ºñ½ºµµ Àִµ¥, ´Ü¼øÈ÷ ¹®ÀÚ¿­À» ¹ß»ý½ÃÅ°´Â chargenÀ» ºñ·ÔÇÏ¿©, ±× ½Ã½ºÅÛÀÇ ½Ã°£À» ¾Ë·ÁÁÖ´Â daytimeµîÀÌ ±×°ÍÀÌ´Ù.

ÀÌ inet.conf ÆÄÀÏ¿¡¼­ÀÇ °¢ ¿£Æ®¸®´Â ´ÙÀ½ÀÇ Çʵå·Î ÀÌ·ç¾îÁø´Ù.

     service type protocol wait user server cmdline

°¢ ÇʵåÀÇ Àǹ̴ ´ÙÀ½°ú °°´Ù.

service ¼­ºñ½ºÀÇ ¸íĪÀ» ºÎ¿©ÇÑ´Ù. ¼­ºñ½º ³×ÀÓÀº /etc/services ÆÄÀÏÀÇ °Ë»öÀ» ÅëÇØ Æ÷Æ® ¹øÈ£·Î º¯È¯µÈ´Ù. /etc/vervicesÆÄÀÏ¿¡ ´ëÇؼ± The service and protocol Files ¼½¼Ç¿¡¼­ ¼­¼úÇÑ´Ù.
type ¼ÒÄÏ Å¸ÀÔÀÌ (connection-oriented ÇÁ·ÎÅäÄÝÀ» À§ÇÑ) streamÀÎÁö, ¶Ç´Â (datagram ÇÁ·ÎÅäÄÝÀ» À§ÇÑ) dgramÀÎÁö ÁöÁ¤ÇÑ´Ù. TCP ±â¹Ý ¼­ºñ½º´Â ¾ðÁ¦³ª streamÀ» »ç¿ëÇÏ°í UDP ±â¹Ý ¼­ºñ½º´Â dgramÀ» Ç×»ó »ç¿ëÇÒ °ÍÀÌ´Ù.
protocol ¼­ºñ½º¿¡ »ç¿ëµÇ´Â Àü¼Û ÇÁ·ÎÅäÄÝÀÇ À̸§. ÀÌ´Â ¹Ýµå½Ã ¾Æ·¡¿¡¼­ ¼³¸íÇÒ protocol ÆÄÀÏ¿¡ ÀÖ´Â ÀûÀýÇÑ ÇÁ·ÎÅäÄÝ ¸íÀ̾î¾ß ÇÑ´Ù.
wait ÀÌ ¿É¼ÇÀº dgram ¼ÒÄÏ¿¡¸¸ Àû¿ëµÇ¸ç, ±× °ªÀº wait³ª nowait ÁßÀÇ ÇϳªÀÌ´Ù. ¸¸¾à wait°¡ ÁöÁ¤µÇ¸é, ÁöÁ¤µÈ Æ÷Æ®¿¡ ¾ðÁ¦³ª ÇϳªÀÇ ¼­¹ö¸¸À» ½ÇÇà½Ãų °ÍÀÌ´Ù. ±× ¹Ý´ëÀÇ °æ¿ì¿£ ¼­¹ö¸¦ ½ÇÇà½ÃŲ Áï½Ã Æ÷Æ®¸¦ listenÇÏ´Â ÀÏÀ» °è¼ÓÇÒ °ÍÀÌ´Ù.

ÀÌ´Â µé¾î¿À´Â µ¥ÀÌÅͱ׷¥ÀÌ ´õ ¾øÀ» ¶§±îÁö ±×°ÍÀ» ÀоîµéÀÌ°í Á¾·áÇÏ´Â, "single-threaded" ¼­¹ö¿¡ À¯¿ëÇÏ´Ù. ´ëºÎºÐÀÇ RPC ¼­¹öµéÀÌ ÀÌ·¯ÇÑ Å¸ÀÔÀ̸ç, ±×¿¡ µû¶ó wait¸¦ ÁöÁ¤ÇØ ÁÖ¾î¾ß ÇÒ °ÍÀÌ´Ù. ¹Ý´ëÀÇ Å¸ÀÔÀÎ "multi-threaded" ¼­¹öµéÀº ¿¬¼ÓÀûÀ¸·Î ¼ö¿¡ Á¦ÇÑ ¾øÀÌ instance¸¦ ½ÇÇàÇÒ ¼ö ÀÖ´Ù; ÀÌ´Â ÈçÈ÷ »ç¿ëµÇÁö ¾Ê´Â´Ù. ÀÌµé ¼­¹ö¿£ nowait¸¦ ÁöÁ¤ÇØ Áà¾ß ÇÑ´Ù.

stream ¼ÒÄÏÀº ¾ðÁ¦³ª nowait¸¦ »ç¿ëÇÑ´Ù.

user ÀÌ´Â ÇÁ·Î¼¼½º ¼ÒÀ¯ÁÖÀÇ login idÀÌ´Ù. ÈçÈ÷ root·Î ÁöÁ¤µÇ³ª, ¸î¸î ¼­ºñ½º¿¡¼± ´Ù¸¥ °èÁ¤À» »ç¿ëÇϱ⵵ ÇÑ´Ù. ¿©±â¿¡ ÃÖ¼Ò ±ÇÇÑÀÇ ¿øÄ¢, Áï ÇÁ·Î±×·¥ÀÌ ±â´ÉÀ» ÀûÀýÈ÷ ¼öÇàÇϴµ¥ Ư±ÇÀÌ ÀÖ´Â °èÁ¤À» ÇÊ¿ä·Î ÇÏÁö ¾Ê´Â´Ù¸é, ±× ±ÇÇÑÀ¸·Î Ä¿¸Çµå¸¦ ½ÇÇà½ÃÅ°Áö ¾Ê´Â ¿øÄ¢À» Àû¿ëÇÏ´Â °ÍÀÌ ÁÁÀº »ý°¢ÀÌ´Ù. ¿¹¸¦ µé¾î NNTP ¼­¹ö´Â newsÀÇ ±ÇÇÑÀ¸·Î ½ÇÇàµÇ°í, º¸¾È»óÀÇ À§ÇèºÎ´ãÀ» ¾È°í ÀÖ´Â ¼­ºñ½ºµé(tftp¶Ç´Â finger)Àº Á¾Á¾ nobodyÀÇ ±ÇÇÑÀ¸·Î µ¹¸°´Ù.
server ½ÇÇàµÉ ÇÁ·Î±×·¥ÀÇ Àý´ë °æ·Î¸¦ ÁöÁ¤ÇØ ÁØ´Ù. ÀÎÅͳΠ¼­ºñ½ºinternal Å°¿öµå¸¦ Àû´Â´Ù.
cmdline ÀÌ´Â ¼­¹ö¿¡ ³Ñ°Ü ÁÙ Ä¿¸Çµå ¶óÀÎÀ̸ç, ÀÎÀÚ ¾øÀÌ Ä¿¸Çµå ³×ÀÓ¸¸À» Á־ µÈ´Ù. º¸Åë ¼­¹ö ÇÁ·Î±×·¥ÀÇ À̸§ÀÌ ¿©±â µé¾î°£´Ù.

ÀÌ Çʵå´Â ÀÎÅͳΠ¼­ºñ½ºÀÇ °æ¿ì ºñ¾îÀÖ´Ù.

 #
 # inetd services
 ftp     stream tcp nowait root   /usr/sbin/ftpd    in.ftpd -l
 telnet  stream tcp nowait root   /usr/sbin/telnetd in.telnetd -b/etc/issue
 #finger stream tcp nowait bin    /usr/sbin/fingerd in.fingerd
 #tftp   dgram  udp wait   nobody /usr/sbin/tftpd   in.tftpd
 #tftp   dgram  udp wait   nobody /usr/sbin/tftpd   in.tftpd /boot/diskless
 login   stream tcp nowait root   /usr/sbin/rlogind in.rlogind
 shell   stream tcp nowait root   /usr/sbin/rshd    in.rshd
 exec    stream tcp nowait root   /usr/sbin/rexecd  in.rexecd
 #
 #       inetd internal services
 #
 daytime   stream tcp nowait root internal
 daytime   dgram  udp nowait root internal
 time      stream tcp nowait root internal
 time      dgram  udp nowait root internal
 echo      stream tcp nowait root internal
 echo      dgram  udp nowait root internal
 discard   stream tcp nowait root internal
 discard   dgram  udp nowait root internal
 chargen   stream tcp nowait root internal
 chargen   dgram  udp nowait root internal
±×¸² 9.1 : »ùÇà /etc/inetd.conf ÆÄÀÏ

±×¸² 9.1Àº inetd.confÆÄÀÏÀÌ´Ù. finger ¼­ºñ½º´Â ÁÖ¼®Ã³¸®µÇ¾î ÀÖ¾î, ¾Æ¿ë °¡´ÉÇÏÁö ¾Ê´Ù º¸¾È»óÀÇ ÀÌÀ¯·Î ÀÌ·¸°Ô Çϴµ¥, ¿Ö³ÄÇϸé attacker°¡ ½Ã½ºÅÛÀÇ À¯Àú ³×ÀÓÀ» ¾ò´Âµ¥ »ç¿ëÇÒ ¼öµµ Àֱ⠶§¹®ÀÌ´Ù.

tftpµµ ¿ª½Ã³ª ÁÖ¼®Ã³¸® µÇ¾î ÀÖ´Ù. tftp, Áï Primitive File Transfer ProtocolÀº Æнº¿öµå °ËÁõ ¾øÀ̵µ ½Ã½ºÅÛ³»ÀÇ world-readableÇÑ ÆÄÀÏÀ» Àü¼ÛÇØ ÁØ´Ù. À̴ ƯÈ÷ /etc/passwd ÆÄÀÏÀ» Àü¼ÛÇØ ÁÙ ¼ö ÀÖ¾î À§ÇèÇÑ °ÍÀÌ°í, shadow Æнº¿öµå¸¦ »ç¿ëÇÏÁö ¾ÊÀ» °æ¿ì ´õ¿í ±×·¸´Ù.

TFTP´Â µð½ºÅ© ¾ø´Â Ŭ¶óÀ̾ðÆ®³ª X Å͹̳ÎÀÌ ºÎÆ® ¼­¹ö¿¡¼­ ÀÚ½ÅÀÇ ÄÚµå(Ä¿³Î)¸¦ ´Ù¿î·Îµå Çϴµ¥ »ç¿ëÇÏ´Â °ÍÀÌ´Ù. ¸¸¾à ÀÌ·¯ÇÑ ÀÌÀ¯·Î tftp¸¦ µ¹¸®°íÀÚ ÇÑ´Ù¸é, ÆÄÀÏÀ» ¾òÀ» µð·ºÅ丮¸¦ tftpÀÇ Ä¿¸Çµå¶óÀο¡ Ãß°¡ÇØ ÁÖ¾î ±×°ÍÀÇ ÇѰ踦 ±× µð·ºÅ丮¿¡¸¸ Á¦ÇÑ µÇµµ·Ï ¸¸µé¾î¾ßÇÑ´Ù. ¿¹Á¦¿¡¼­ µÎ¹ø° tftp ¶óÀÎÀÌ ±×¿Í °°´Ù.


9.2 The tftpd access control facility

ÄÄÇ»Å͸¦ ÀÎÅÍ³Ý ¾ï¼¼½º¿¡ ¿­¾î ³õ´Â´Ù´Â °ÍÀÌ ¸¹Àº À§ÇèÀ» ²ø¾îµéÀÌ´Â ÀÏÀ̱⠶§¹®¿¡, ¾îÇø®ÄÉÀ̼ÇÀº ¸î°¡Áö ŸÀÔÀÇ ¾îÅÃÀ» ¸·À» ¼ö ÀÖµµ·Ï ¼³°èµÇ¾ú´Ù. ±×·¯³ª ÀÌ Áß ¾î¶²°Í¿£ ¾àÁ¡ÀÌ Àְųª(RTM ÀÎÅÍ³Ý ¿úÀÌ À̸¦ ¾ÆÁÖ Àß Áõ¸íÇÑ´Ù), ƯÁ¤ ¼­ºñ½º ¿ä±¸¸¦ ¹Þ¾ÆµéÀ̰ųª °ÅºÎÇؾßÇÒ, secure È£½ºÆ®¿Í insecure È£½ºÆ®¸¦ ±¸ºÐÇÏÁö ¸ôÇϱ⵵ ÇÑ´Ù. ¿ì¸®´Â ÀÌ¹Ì finger³ª tftp ¼­ºñ½º¿¡ ´ëÇØ À§¿¡¼­ ¾ê±âÇÑ ¹Ù ÀÖ´Ù. ±×¸®ÇÏ¿© ÀÌ·¯ÇÑ ¼­ºñ½º¸¦ "trusted È£½ºÆ®"¿¡¸¸ ±¹ÇÑ ½ÃÅ°°íÀÚ ÇÑ´Ù¸é, ÀÌ´Â º¸ÅëÀÇ ¼Â¾÷À¸·Î´Â º¼°¡´ÉÇÏ°í, º°µµÀÇ Á¶Ä¡°¡ ÇÊ¿äÇÏ´Ù. ¿Ö³ÄÇϸé inetd´Â ÀÌ ¼­ºñ½º¸¦ ¸ðµç Ŭ¶óÀ̾ðÆ®¿¡ Á¦°øÇϰųª ÀüÇô ÇÏÁö ¾Ê°Å³ª ±× µÑ ÁßÀÇ ÇϳªÀ̱⠶§¹®ÀÌ´Ù.

À̸¦ À§ÇÑ À¯¿ëÇÑ ÅøÀÌ ¹Ù·Î daemon wrapper¶ó ºÒ¸®´Â tcpdÀÌ´Ù. ´ç½ÅÀÌ ¸ð´ÏÅÍÇϰųª º¸È£ ÇؾßÇÑ´Ù°í ÆǴܵǴ TCP ¼­ºñ½º°¡ ÀÖ´Ù¸é ¼­¹ö ÇÁ·Î±×·¥ ´ë½Å¿¡ ±×°ÍÀ» Àû¾îµÎÀÚ. tcpd´Â request°¡ ÀÖÀ¸¸é syslog µ¥¸ó¿¡ ·Î±×¸¦ ³²±â°í, ¸®¸ðÆ® È£½ºÆ®°¡ ±× ¼­ºñ½º¸¦ »ç¿ëÇϵµ·Ï Çã¿ëµÇ¾î ÀÖÀ» ¶§¿¡¸¸ ½ÇÁ¦ ¼­¹ö ÇÁ·Î±×·¥À» ½ÇÇà½ÃŲ´Ù. ÀÌ´Â UDP ±â¹Ý ¼­ºñ½º¿¡¼± µ¿ÀÛÇÏÁö ¾Ê´Â´Ù´Âµ¥ ÁÖÀÇÇ϶ó.

¿¹¸¦ µé¾î, finger µ¥¸óÀ» wrapÇÑ´Ù¸é inetd.conf¿¡¼­ ±×¿¡ ´ëÇÑ ¶óÀÎÀ» ´ÙÀ½°ú °°ÀÌ °íÃÄÁÖ¾î¾ß ÇÑ´Ù.

     #wrap finger daemon
     finger	stream	tcp nowait root /usr/sbin/tcpd in.fingerd

¾ï¼¼½º ÄÁÆ®·ÑÀ» Ãß°¡ÇÏÁö ¾Ê´Â´Ù¸é, ÀÌ´Â syslogÀÇ auth ±â´É¿¡ ·Î±×¸¦ º¸³½´Ù´Â °Í ¿Ü¿¡´Â º¸ÅëÀÇ finger ¼Â¾÷°ú °°´Ù.

¾ï¼¼´À ÄÁÆ®·ÑÀº /etc/hosts.allow¿Í /etc/hosts.deny¶ó´Â µÎ°³ÀÇ ÆÄÀÏ¿¡ ÀÇÇØ ½ÇÇàµÈ´Ù. ±×°ÍµéÀº ƯÁ¤ ¼­ºñ½º¿Í È£½ºÆ®¿¡ ´ëÇØ °¢°¢ Çã¿ëÇÏ´Â, ±×¸®°í °ÅºÎÇÏ´Â ¾ï¼¼½ºÀÇ ¿£Æ®¸®¸¦ °®°í ÀÖ´Ù. tcpd°¡ °¡·É biff.foobar.comÀ̶ó´Â Ŭ¶óÀ̾ðÆ® È£½ºÆ®¿¡¼­ ¿Â finger¿Í °°Àº ¼­ºñ½º ¿äûÀ» ´Ù·ç°í ÀÖÀ» ¶§, ±×°ÍÀº hosts.allow¿Í hosts.deny¸¦ (¼ø¼­´ë·Î) °Ë»çÇÏ¿©, ±× ¼­ºñ½º¿Í Ŭ¶óÀ̾ðÆ® È£½ºÆ® ¾çÂÊ ¸ðµÎ ÀÏÄ¡ÇÏ´Â ¿£Æ®¸®°¡ ÀÖ´ÂÁö »ìÆ캻´Ù. ¸¸¾à ÀÏÄ¡ÇÏ´Â ¿£Æ®¸®°¡ hosts.allow¿¡ ÀÏ´Ù¸é hosts.deny¿¡ ¾î¶² ¿£Æ®¸®°¡ ÀÖµçÁö »ó°ü ¾øÀÌ ¾ï¼¼½º¸¦ ¹Þ¾ÆµéÀδÙ. hosts.deny¿¡¼­ ±×°ÍÀÌ ¹ß°ßµÇ¸é Ä¿³Ø¼ÇÀ» ²÷À½À¸·Î½á ±× ¿äûÀ» °ÅºÎÇÑ´Ù. ÀÏÄ¡ÇÏ´Â °ÍÀ» ãÁö ¸øÇßÀ» ¶§¿£ ±× ¿äûÀ» ¹Þ¾ÆµéÀδÙ.

¾ï¼¼½º ÆÄÀÏ¿¡¼­ °¢ ¿£Æ®¸®´Â ´ÙÀ½°ú °°Àº Çü½ÄÀ» µû¸¥´Ù.

     servicelist:  hostlist  [:shellcmd]
	
servicelist´Â /etc/serviceÀÇ ¼­ºñ½º ³×ÀÓÀÇ ¸ñ·Ï ¶Ç´Â ALL Å°¿öµåÀÌ´Ù. finger¿Í tftp¸¦ Á¦¿ÜÇÑ ¸ðµç ¼­ºñ½º¸¦ ÀǹÌÇÏ°íÀÚ ÇÑ´Ù¸é, "ALL EXCEPT finger, tftp"¸¦ »ç¿ëÇ϶ó.

hostlist¿£ IP ÁּҶǴ ȣ½ºÆ®³×ÀÓÀÇ ¸ñ·Ï, ¶Ç´Â ALL, LOCAL, UNKNOWNÁßÀÇ Çϳª°¡ µé¾î°£´Ù. ALLÀº ¸ðµç È£½ºÆ®¿¡ ÇØ´çµÇ¸ç, LOCALÀº °°Àº Á¡À» Æ÷ÇÔÇÏÁö ¾Ê´Â(·ÎÄõµ¸ÞÀÎ »óÀÇ) È£½ºÆ®³×ÀÓ¿¡, UNKNOWNÀº È£½ºÆ®³×ÀÓÀ̳ª ÁÖ¼Ò¸¦ °Ë»öÇÒ ¼ö ¾ø´Â ¾î¶² È£½ºÆ®¸¦ ÀǹÌÇÑ´Ù. Á¡À¸·Î ½ÃÀ۵Ǵ À̸§Àº ÀÌ À̸§°ú µ¿ÀÏÇÑ µµ¸ÞÀÎÀÇ ¸ðµç È£½ºÆ®¿¡ ´ëÀÀµÈ´Ù. ¿¹¸¦ µé¾î, .foobar.comÀº biff.foobar.com¿¡ ÀÏÄ¡ÇÑ´Ù. ¿ª½Ã³ª IP ³×Æ®¿÷ ÁÖ¼Ò¿Í ¼­ºê³Ýµµ ÀÌ¿Í °°Àº ¹æ¹ýÀ¸·Î °¡´ÉÇÏ´Ù. Á»´õ ¼¼ºÎÀûÀÎ »çÇ×Àº hosts_access(5) ¸Å´º¾ó ÆäÀÌÁö¸¦ Âü°íÇϱ⠹ٶõ´Ù.

·ÎÄà ȣ½ºÆ®¿Ü¿¡´Â finger¿Í tftp¸¦ °ÅºÎÇϵµ·Ï Çϱâ À§Çؼ±, /etc/hosts.deny¿¡ ´ÙÀ½ÀÇ ¶óÀÎÀ» Ãß°¡ÇÏ°í, /etc/hosts.deny´Â ºñ¿öµÎ¶ó.

     in.ftpd: ALL EXCEPT LOCAL,	.vbrew.com : \
     	echo "request from %d@%h" >> /var/log/finger.log: \
     	if [%h != "vlarger.vbrew.com" ]; then \
     		finger -l @%h >> /var/log/finger.log \
     	fi

%h¿Í %d ÀÎÀÚ´Â tcpd¿¡ ÀÇÇØ °¢°¢ Ŭ¶óÀ̾ðÆ® È£½ºÆ®¿Í ¼­ºñ½º ¸íĪÀ¸·Î È®ÀåµÈ´Ù. ¼¼ºÎÇ׸ñÀº hosts_access(5) ¸Å´º¾ó ÆäÀÌÁö¿¡¼­ ¼³¸íÇÏ°í ÀÖ´Ù.


9.3 The service and protocol Files

ƯÁ¤ "Ç¥ÁØ" ¼­ºñ½º¿¡ ºÎ¿©µÈ Æ÷Æ®¹øÈ£´Â "Assigned Numbers" RFC ¿¡¼­ Á¤ÀÇÇÏ°í ÀÖ´Ù. ¼­¹ö¿Í Ŭ¶óÀ̾ðÆ®°¡ ¼­ºñ½º ³×ÀÓÀ» ÀÌ ¹øÈ£·Î º¯È¯ÇÒ ¼ö ÀÖµµ·ÏÇϱâ À§Çؼ±, Àû¾îµµ ¸ñ·ÏÀÇ ÀϺκÐÀÌ¶óµµ °¢ È£½ºÆ®¿¡ Áö´Ï°í ÀÖ¾î¾ß ÇÑ´Ù. ±×°ÍÀº /etc/services¶ó´Â ÆÄÀÏ¿¡ ÀúÁ¤µÇ¸ç, ±× ¿£Æ®¸®ÀÇ ÇüÅ´ ´ÙÀ½°ú °°´Ù.

     services port/protocol [aliases]

services¿£ ¼­ºñ½º ¸íĪÀ» ÁöÁ¤ÇÏ°í, port¿£ ¼­ºñ½º°¡ Á¦°øµÇ´Â Æ÷Æ®¸¦ Á¤ÀÇÇϸç, protocolÀº ¾î¶² Àü¼Û ÇÁ·ÎÅäÄÝÀÌ »ç¿ëµÇ´ÂÁö ³ªÅ¸³»´Âµ¥, º¸Åë ÀÌ´Â udpÀ̰ųª tcpÀÌ´Ù. ¶ÇÇÑ, ÇÑ ¼­ºñ½º°¡ Çϳª ÀÌ»óÀÇ ÇÁ·ÎÅäÄÝÀ» Á¦°øÇϰųª, ´Ù¸¥ ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÏ´Â ´Ù¸¥ Á¾·ùÀÇ ¼­ºñ½ºµéÀÌ µ¿ÀÏÇÑ Æ÷Æ®¸¦ »ç¿ëÇÏ´Â °ÍÀÌ °¡´ÉÇÏ´Ù. aliasesÇʵå´Â ¼­ºñ½º¿¡ ´ëÇÑ º°¸íÀ» ÁöÁ¤Çϴµ¥ ¾²ÀδÙ.

ÀϹÝÀûÀÎ °æ¿ì, ´ç½ÅÀÇ ¸®´ª½º ½Ã½ºÅÛÀÇ ³×Æ®¿÷ ¼ÒÇÁÆ®¿þ¾î¿¡ µþ·Á¿À´Â ¼­ºñ½º ÆÄÀÏÀ» º¯°æÇÒ ÇÊ¿ä°¡ ¾øÀ¸³ª, ¾Æ·¡¿¡ ¾à°£À̳ª¸¶ ¹ßÃéÇØ º¸¿©ÁÖ°íÀÚ ÇÑ´Ù.

     # The services file:
     #
     # well-known services
     echo       7/tcp                 # Echo
     echo       7/udp                 #
     discard    9/tcp  sink null      # Discard
     discard    9/udp  sink null      #
     daytime    13/tcp                # Daytime
     daytime    13/udp                #
     chargen    19/tcp  ttytst source # Character Generator
     chargen    19/udp  ttytst source #
     ftp-data   20/tcp                # File Transfer Protocol (Data)
     ftp        21/tcp                # File Transfer Protocol (Contr
     telnet     23/tcp                # Virtual Terminal Protocol
     smtp       25/tcp                # Simple Mail Transfer Protocol
     nntp      119/tcp  readnews      # Network News Transfer Protoco
     
     # UNIX services
     exec      512/tcp                # BSD rexecd
     biff      512/udp  comsat        # mail notification
     login     513/tcp                # remote login
     who       513/udp  whod          # remote who and uptime
     shell     514/tcp  cmd           # remote command, no passwd use
     syslog    514/udp                # remote system logging
     printer   515/tcp  spooler       # remote print spooling
     route     520/udp  router routed # routing information protocol

¿¹¸¦ µé¾î, echo ¼­ºñ½º´Â Æ÷Æ® 7¿¡¼­ TCP¿Í UDP·Î ¸ðµÎ Á¦°øµÇ°í, Æ÷Æ® 512´Â UDP¸¦ »ç¿ëÇÏ´Â COMSAT µ¥¸ó (À¯Àú¿¡°Ô »õ ¸ÞÀÏÀÇ µµÂøÀ» ¾Ë¸®´Â ÇÁ·Î±×·¥, xbiff(1x)¸¦ º¸¶ó)°ú TCP¸¦ »ç¿ëÇÏ´Â ¿ø°Ý½ÇÇà(rexec(1))ÀÇ ¼­·Î ´Ù¸¥ µÎ ¼­ºñ½º¿¡ ÀÇÇØ »ç¿ëµÈ´Ù.

¼­ºñ½º ÆÄÀÏ°ú ºñ½ÁÇÏ°Ô, "³×Æ®¿öÅ· ¶óÀ̺귯¸®¿£ (¼­ºñ½º ÆÄÀÏ¿¡¼­ »ç¿ëµÇ´Â) ÇÁ·ÎÅäÄÝ ¸íÀ» ´Ù¸¥ È£½ºÆ®ÀÇ IP ·¹À̾ Çؼ®ÇÒ ¼ö ÀÖ°Ô²û ÇÁ·ÎÅäÄÝ·Î º¯È¯ÇÒ ¹æ¹ýÀÌ ÇÊ¿äÇÏ´Ù. ÀÌ´Â /etc/protocol ÆÄÀϳ»ÀÇ À̸§À» °Ë»öÇÔÀ¸·Î½á ÀÌ·ç¾îÁø´Ù. ±× ÆÄÀÏ¿¡´Â °¢ ¶óÀθ¶´Ù, ÇÁ·ÎÅäÄÝ ¸í°ú ±×¿¡ ´ëÀÀµÇ´Â ¼ýÀÚ¸¦ Áö´Ï´Â ¿£Æ®¸®°¡ µé¾îÀÖ´Ù. ÀÌ ÆÄÀÏÀº /etc/services ÆÄÀÏÀ» °íÄ¡´Â ÀϺ¸´Ù º¸´Ù ´õ ÇÊ¿ä°¡ ¾ø´Ù. ¾Æ·¡´Â ¿¹Á¦ ÆÄÀÏÀÌ´Ù

     #
     # Internet (IP) protocol
     #
     ip      0	     IP       # internet protocol, pseudo protocol number
     icmp    1       ICMP     # internet control message protocol
     igmp    2       IGMP     # internet group multicast protocol
     tcp     6       TCP      # transmission control protocol
     udp     17      UDP      # user datagram protocol
     raw     255     RAW      # RAW IP interface


9.4 Remote Procedure Call

Ŭ¶óÀ̾ðÆ®- ¼­¹ö ¾îÇø®ÄÉÀ̼ÇÀÇ ¾ÆÁÖ ÀϹÝÀûÀÎ ¸ÞÄ«´ÏÁòÀº RPC(Remote Procedure Call ÆÐÅ°Áö)¿¡ ÀÇÇØ Á¦°øµÇ¾ú´Ù. RPC´Â Sun Microsystems¿¡ ÀÇÇØ °³¹ßµÈ Åø°ú ¶óÀ̺귯¸® ÇÔ¼öÀÇ ¸ðÀ½ÀÌ´Ù. RPC ¼º°øÀÇ ¹ßÆÇÀÌ µÈ ÁÖ¿ä ¾îÇø®ÄÉÀ̼ÇÀº NFS(Network Filesystem)°ú NIS(Network Information System)À¸·Î, ÀÌ µÑ¿¡´ëÇؼ± ³ªÁß¿¡ µû·Î ¼Ò°³ÇÒ °ÍÀÌ´Ù.

RPC ¼­¹ö´Â, Ŭ¶óÀ̾ðÆ®°¡ ÇÁ·Î½ÃÀú ÆĶó¹ÌÅ͸¦ ÅëÇØ ¼­¹ö¿¡°Ô·Î RPC request¸¦ º¸³¿À¸·Î½á callÇÒ ¼ö ÀÖ´Â, ÇÁ·Î½ÃÀúÀÇ ¸ðÀ½À¸·Î ±¸¼ºµÇ¾ú´Ù. ¼­¹ö´Â Ŭ¶óÀ̾ðÆ®¸¦ ´ë½ÅÇØ Áö½ÃµÈ ÇÁ·Î½ÃÀú¸¦ ½ÇÇàÇÏ°í, ¸®ÅÏ °ªÀÌ ÀÖÀ» °æ¿ì ±×°ÍÀ» µÇµ¹·ÁÁØ´Ù. machine-independentÇϱâ À§ÇØ, Ŭ¶óÀ̾ðÆ®¿Í ¼­¹ö°£¿¡ ±³È¯µÇ´Â ¸ðµç µ¥ÀÌÅÍ´Â External Data Representation Æ÷¸Ë (XDR)À̶õ °ÍÀ¸·Î ¼Û½ÅÃø¿¡ ÀÇÇØ º¯È¯µÇ°í, ¼ö½ÅÃø¿¡¼­´Â À̸¦ ´Ù½Ã machine-local representationÀ¸·Î º¯È¯ÇÑ´Ù.

¶§¶§·Î, °³¼±µÈ RPC ¾îÇø®ÄÉÀ̼ÇÀº ÇÁ·Î½ÃÀú ÄÝ ÀÎÅÍÆäÀ̽º¿¡¼­, ºñȣȯÀûÀÎ º¯°æÁ¡À» ¼Ò°³ÇÑ´Ù. ¹°·Ð ´Ü¼øÈ÷ ¼­¹ö¸¦ º¯°æÇÏ´Â °Íµµ, ÀÌÀüÀÇ µ¿ÀÛÀ» ±â´ëÇÏ´Â ¸ðµç ¾îÇø®ÄÉÀ̼ÇÀÌ Á¦´ë·Î µ¹¾Æ°¡Áö ¾Ê°ÔÇÑ´Ù. ±×¸®ÇÏ¿©, RPC ÇÁ·Î±×·¥¿¡´Â ¹öÀü¹øÈ£°¡ ºÎ¿©µÇ¾î ÀÖÀ¸¸ç, ÀÌ´Â º¸Åë, 1¿¡¼­ ½ÃÀÛÇÏ¿© °¢ RPCÀÎÅÍÆäÀ̽ºÀÇ »õ ¹öÀü¿¡¼± ÀÌ ¼ö°¡ ¿Ã¶ó°£´Ù. ÀϹÝÀûÀ¸·Î, ¼­¹ö´Â ¿©·¯°³ÀÇ ¹öÀüÀ» µ¿½Ã¿¡ Á¦°øÇϸç, Ŭ¶óÀ̾ðÆ®´Â request³»ÀÇ ¹öÀü¹øÈ£¸¦ ÅëÇØ ÀÚ½ÅÀÌ »ç¿ëÇÏ°íÀÚ ÇÏ´Â ¼­ºñ½ºÀÇ implementationÀÌ ¹«¾ùÀÎÁö¸¦ °¡¸®Å²´Ù.

RPC ¼­¹ö¿Í Ŭ¶óÀ̾ðÆ®°£ÀÇ ³×Æ®¿÷ Åë½ÅÀº ´Ù¼Ò ¹¦Çѵ¥°¡ ÀÖ´Ù. RPC ¼­¹ö´Â Çϳª ÀÌ»óÀÇ ÇÁ·Î½ÃÀú ¸ðÀ½À» Á¦°øÇÏ°í, °¢ ¼¼Æ®´Â ÇÁ·Î±×·¥(program)À̶ó ºÒ¸®¸ç, °¢ ÇÁ·Î±×·¥Àº ÇÁ·Î±×·¥ ¹øÈ£(program number)¿¡ ÀÇÇØ ±¸º°µÈ´Ù. ¼­ºñ½º ³×ÀÓÀ» ÇÁ·Î±×·¥ ¹øÈ£·Î ¸ÅÇÎÇÑ ¸ñ·ÏÀº º¸Åë, /etc/rpc¿¡ µé¾î ÀÖÀ¸¸ç, ±×¸² 9.2´Â ±× ÀϺθ¦ ¹ßÃéÇÑ °ÍÀÌ´Ù.

     #
     # /etc/rpc - miscellaenous RPC-based services
     #
     portmapper      100000  portmap sunrpc
     rstatd          100001  rstat rstat_svc rup perfmeter
     rusersd         100002  rusers
     nfs             100003  nfsprog
     ypserv          100004  ypprog
     mountd          100005  mount showmount
     ypbind          100007
     walld           100008  rwall shutdown
     yppasswdd       100009  yppasswd
     bootparam       100026
     ypupdated       100028  ypupdate
	

±×¸² 9.2: »ùÇà /etc/rpc ÆÄÀÏ

ÀÌÀü¿¡ RPCÀÇ Á¦ÀÛÀÚ´Â TCP/IP ³×Æ®¿÷ ³»¿¡¼­ ÇÁ·Î±×·¥ ¹øÈ£¸¦ ÀÏ¹Ý ³×Æ®¿÷ ¼­ºñ½º·Î ¸ÅÇÎÇϴµ¥ ´ëÇÑ ¹®Á¦·Î °í½ÉÇÏ¿´´Ù. °á±¹ ±×µéÀº °¢ ¼­¹ö°¡ °¢°¢ÀÇ ÇÁ·Î±×·¥°ú ¹öÀü¿¡ ´ëÇØ TCP¿Í UDP Æ÷Æ®¸¦ ¸ðµÎ Á¦°øÇϵµ·Ï ¸¸µå´Â ÀÏÀ» ¼±ÅÃÇß´Ù. ÀϹÝÀûÀ¸·Î, RPC ¾îÇø®ÄÉÀ̼ÇÀº µ¥ÀÌÅ͸¦ º¸³¾ ¶§ UDP¸¦ »ç¿ëÇÏ°í, Àü¼ÛµÉ µ¥ÀÌÅͱ׷¥ÀÌ ´ÜÀÏ UDP µ¥ÀÌÅͱ׷¥¿¡ µé¾î°¡Áö ¾ÊÀ» ¶§¿¡¸¸ TCP¸¦ »ç¿ëÇÑ´Ù.

¹°·Ð, Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¥µµ ÇÁ·Î±×·¥ ¹øÈ£°¡ ¸ÅÇÎµÈ Æ÷Æ®°¡ ¾î¶² °ÍÀÎÁö ã¾Æ³¾ ¹æ¹ýÀ» °¡Áö°í ÀÖ¾î¾ßÇÑ´Ù. ÀÌ¿¡ ¼³Á¤ÆÄÀÏÀ» »ç¿ëÇÏ´Â °ÍÀº ³Ê¹«µµ À¶Å뼺 ¾ø´Â ¹æ¹ýÀÏ °ÍÀÌ´Ù. RPC ¾îÇø®ÄÉÀ̼ÇÀÌ ¿¹¾àµÈ Æ÷Æ®¸¦ »ç¿ëÇÒ ¼ö ¾ø±â ¶§¹®¿¡, ¿ø·¡ µ¥ÀÌÅͺ£À̽º ¾îÇø®ÄÉÀ̼ǿ¡ »ç¿ëµÇ¾î¾ßÇÒ Æ÷Æ®°¡ ¾î¶² ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ ÀÇÇØ »ç¿ëµÇÁö ¾Ê´Â´Ù´Â º¸ÀåÀÌ ¾ø´Â °ÍÀÌ´Ù. ±×¸®ÇÏ¿©, RPC ¾îÇø®ÄÉÀ̼ÇÀº ¾òÀ» ¼ö ÀÖ´Â ¾Æ¹« Æ÷Æ®³ª Âï¾î¼­, Àϸí partmapper daemonÀ̶ó´Â °Í¿¡ ±×°ÍÀ» µî·ÏÇÑ´Ù. portmapper µ¥¸óÀº ¸Ó½Å»ó¿¡ µ¹¾Æ°¡´Â ¸ðµç RPC ¼­ºñ½º¿¡ ´ëÇÑ ¼­ºñ½º ºê·ÎĿó·³ µ¿ÀÛÇÏ´Â °ÍÀ¸·Î, Ŭ¶óÀ̾ðÆ®°¡ ÇÁ·Î±×·¥ ¹øÈ£¸¦ ÁÖ¾î ¼­ºñ½º¿¡ Á¢¼ÓÇÏ°íÀÚ ÇÒ ¶§, °¡Àå ¸ÕÀú ¼­¹öÀÇ portmapper¿¡ Äõ¸®ÇÑ´Ù. ±×·¯¸é, ¼­ºñ½º¸¦ ÇÒ ¼ö ÀÖ´Â TCP¿Í UDP Æ÷Æ®¹øÈ£¸¦ µÇµ¹·Á ÁØ´Ù.

ÀÌ ¹æ¹ýÀº, Ç¥ÁØ Berkely ¼­ºñ½º¿¡ ´ëÇØ inetd µ¥¸óÀÌ ÇÏ´Â °Í°ú ¾ÆÁÖ À¯»çÇÏ°Ô, ½ÇÆп¡´ëÇÑ ´ÜÆíÀûÀÎ ºÎºÐ¹Û¿¡ ¾Ë·ÁÁÖÁö ¸øÇÏ´Â µ¥´Ù°¡, ½ÉÁö¾î ±×º¸´Ù ´õ Á¶¾ÇÇϱâ±îÁö ÇÏ´Ù. ¿Ö³ÄÇϸé portmapper°¡ Á×¾úÀ» ¶§ ¸ðµç RPC Á¤º¸¸¦ ÀÒ¾î ¹ö¸®±â ¶§¹®À¸·Î, ÀÌ´Â º¸Åë ¸ðµç RPC¼­¹ö¸¦ ¼öµ¿À¸·Î Àç½Ãµ¿ÇϵçÁö Àüü ¸Ó½ÅÀ» ¸®ºÎÆ® ½ÃÄÑ¾ß ÇÑ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù.

¸®´ª½º »ó¿¡¼­ portmapper´Â rpc.portmapÀÇ À̸§À» °¡Áö°í ÀÖÀ¸¸ç, /usr/bin¿¡ µé¾îÀÖ´Ù. portmapper¸¦ ±¸µ¿ ½ÃÅ°´Â ±¸ÀýÀÌ rc.inet2¿¡ ÀÖ´ÂÁö È®Àθ¸ Çϸé portmapper¼³Á¤Àº ³¡³­´Ù.


9.5 Configuring the r Commands

¸®¸ðÆ® »ó¿¡¼­ Ä¿¸Çµå¸¦ ½ÇÇà½Ãų¼ö ÀÖ´Â Ä¿¸Çµå·Î rlogin, rsh, rpc, rcmd°¡ ÀÖ´Ù. À̰͵éÀº ¸ðµÎ ¸®¸ðÆ® È£½ºÆ®¿¡¼­ ½©À» ¶ç¿ö À¯Àú°¡ Ä¿¸Çµå¸¦ ½ÇÇàÇÒ ¼ö ÀÖ°ÔÇÑ´Ù. ¹°·Ð, Ŭ¶óÀ̾ðÆ®´Â Ä¿¸Çµå¸¦ ½ÇÇàÇÒ È£½ºÆ®¿¡ °èÁ¤À» °®°í ÀÖ¾î¾ßÇÑ´Ù. µû¶ó¼­ À̵é Ä¿¸Çµå´Â ¸ðµÎ ÀÎÁõ ÀýÂ÷¸¦ ¼öÇàÇϴµ¥, º¸Åë Ŭ¶óÀ̾ðÆ®°¡ ¼­¹ö¿¡ À¯ÀúÀÇ ·Î±×ÀÎ ³×ÀÓÀ» ¸»ÇÏ¸é ¼­¹ö´Â Æнº¿öµå¸¦ ¿ä±¸ÇÑ´Ù.

±×·¯³ª À̵û±Ý¾¿ ƯÁ¤ »ç¿ëÀÚ¿¡ ´ëÇؼ­ Á¶±Ý ´À½¼ÇÑ ÀÎÁõÀ» ¿øÇϱ⵵ Çϴµ¥, ¿¹¸¦µé¾î, ´ç½ÅÀÌ °°Àº LAN »ó¿¡ Á¸ÀçÇÏ´Â ´Ù¸¥ ¸Ó½ÅÀ¸·Î À̵û±Ý¾¿ µé¾î°¡°íÀÚ ÇÒ ¶§, ¸Å¹ø Æнº¿öµå¸¦ ÃÄ ³ÖÁö ¾Ê¾ÒÀ¸¸é ÇÒ °ÍÀÌ´Ù.

ÀÎÁõÀ» ÇÏÁö ¾ÊÀº ÀÏÀº, µ¿±âÈ­µÈ Æнº¿öµå µ¥ÀÌÅͺ£À̽º¸¦ °¡Áø ¸î¸îÀÇ È£½ºÆ®¿¡¼­³ª, ¶Ç´Â °ü¸®»óÀÇ ÀÌÀ¯·Î ¼ö¸¹Àº ¸Ó½Å¿¡ ¾ï¼¼½ºÇÒ ÇÊ¿ä°¡ Àִ Ư±Ç À¯Àú¿¡ ´ëÇؼ­³ª ÀÌ¿ëÇÏ±æ ±ÇÇÑ´Ù. »ç¶÷µéÀÌ ·Î±×ÀÎ id³ª Æнº¿öµå¸¦ ÁöÁ¤ÇØ ÁÖÁö ¾Ê°í¼­µµ ¾ðÁ¦³ª ´ç½ÅÀÇ È£½ºÆ®·Î ·Î±×ÀÎ ÇØ µé¾î ¿Ã ¼ö ÀÖ°Ô ÇÏ°íÀÚ ÇÑ´Ù¸é, ¾î¶²»ç¶÷ÀÌ ¿ì¿¬È÷ ¾ï¼¼½ºÇÑ °ÍÀ» ¹Þ¾ÆµéÀÌÁö ¾Êµµ·Ï È®ÀÎÇØ¾ß ÇÑ´Ù.

r Ä¿¸ÇµåÀÇ ÀÎÁõ üũ¸¦ ²¨µÎ´Âµ¥´Â µÎ°¡Áö ¹æ¹ýÀÌ ÀÖ´Ù. ÇÑ°¡Áö´Â ½´ÆÛÀ¯Àú°¡ ƯÁ¤ ¶Ç´Â ¸ðµç È£½ºÆ® »óÀÇ Æ¯Á¤ ¶Ç´Â ¸ðµç À¯Àú¿¡ ´ëÇØ Æнº¿öµå¸¦ ¹¯´Â ÀÏ ¾øÀÌ ·Î±×ÀÎÇØ µé¾î¿Ã ¼ö ÀÖµµ·Ï ÇÏ´Â ¹æ¹ýÀ¸·Î(¸ðµç È£½ºÆ®ÀÇ À¯Àú¿¡ ´ëÇØ Çã¿ëÇÏ´Â °ÍÀº Á¤¸»·Î ÁÁÁö ¾ÊÀº »ý°¢ÀÌ´Ù), ÀÌ ¾ï¼¼½º´Â /etc/hosts.equiv¶ó´Â ÆÄÀÏ¿¡¼­ Á¶Á¤ÇÒ ¼ö ÀÖ´Ù. ±× ÆÄÀÏ¿£ È£½ºÆ®¿Í À¯Àú ³×ÀÓÀÇ ¸ñ·ÏÀÌ µé¾î ÀÖÀ¸¸ç ÀÌ´Â ·ÎÄà ȣ½ºÆ®»óÀÇ À¯Àúµé°ú µ¿µîÇÑ °ÍÀ¸·Î °£ÁֵȴÙ. ¶Ç´Ù¸¥ ¹æ¹ýÀ¸·Î´Â »ç¿ëÀÚ°¡ ƯÁ¤ È£½ºÆ®ÀÇ ¶Ç´Ù¸¥ À¯Àú °èÁ¤À¸·Î ÀÚ½ÅÀÇ °èÁ¤¿¡ ¾ï¼¼½º ÇÏ°Ô²û ¸¸µå´Â °ÍÀ̸ç, À̴ Ȩ µð·ºÅ丮ÀÇ .rhosts ÆÄÀÏ¿¡ ³ª¿­µÈ´Ù. º¸¾È»óÀÇ ÀÌÀ¯·Î ÀÌ ÆÄÀÏÀº ¹Ýµå½Ã À¯Àú³ª ½´ÆÛÀ¯ÀúÀÇ ¼ÒÀ¯¿©¾ß Çϸç, ½Éº¼¸¯ ¸µÅ©¿©¼­´Â ¾ÈµÈ´Ù. ±×·¸Áö ¾ÊÀ» °æ¿ì ±×°ÍÀº ¹«½ÃµÈ´Ù.

Ŭ¶óÀ̾ðÆ®°¡ r ¼­ºñ½º¸¦ ¿äûÇÒ ¶§, ±×ÀÇ È£½ºÆ®¿Í À¯Àú³×ÀÓÀ» /etc/hosts.equiv¿¡¼­ ã°í, ±×¸®°í ±× ±ÇÇÑÀ¸·Î ·Î±×ÀÎ ÇØ µé¾î°¡°íÀÚ ÇÏ´Â À¯ÀúÀÇ .rhostsÆÄÀÏ¿¡¼­ ±×°ÍÀ» ã´Â´Ù. ¿¹¸¦ µé¾î, janetÀº gauss¿¡ ÀÖ°í, eulerÀÇ joe °èÁ¤À¸·Î ·Î±×ÀÎÇØ µé¾î°¡°íÀÚ ÇÑ´Ù°í °¡Á¤ÇÏÀÚ. ÀÌÈÄ·Î JanetÀº Ŭ¶óÀ̾ðÆ® À¯Àú·Î, Joe´Â ·ÎÄà À¯Àú¶ó°í ĪÇÑ´Ù. ±×·¯¸é ÀÌÁ¦, JanetÀÌ ´ÙÀ½À» gauss¿¡ ÃÄ ³ÖÀ» ¶§,

     $rlogin -l joe euler

¼­¹ö´Â ¸ÕÀú JanetÀÌ ÀÚÀ¯·Ó°Ô ¾ï¼¼½ºÇÏ°Ô²û µÇ¾î ÀÖ´ÂÁö ¾Æ´ÑÁö¸¦ ¾Ë±â À§ÇØ hosts.equiv¸¦ üũÇÑ´Ù. ¸¸¾à ¿©±â¿¡¼­ ½ÇÆÐÇÑ´Ù¸é, ±×°ÍÀº JoeÀÇ È¨ µð·ºÅ丮¿¡ ÀÖ´Â .rhost¿¡¼­ ±×³à°¡ ÀÖ´ÂÁö °Ë»öÇÑ´Ù.

eulerÀÇ hosts.equivÆÄÀÏÀº ´ÙÀ½°ú °°´Ù.

     gauss
     euler
     -public
     quark.physics.groucho.edu	andres
	

ÇϳªÀÇ ¿£Æ®¸®´Â È£½ºÆ® ³×ÀÓ°ú ºÎ°¡ÀûÀº À¯Àú³×ÀÓÀ¸·Î ÀÌ·ç¾îÁø´Ù. ¸¸¾à È£½ºÆ®³×ÀÓ¸¸ÀÌ À־Ƹé, ±× È£½ºÆ®ÀÇ ¸ðµç À¯Àú°¡ ¾î¶°ÇÑ Ã¼Å© ¾øÀ̵µ ·ÎÄà °èÁ¤À¸·Î µé¾î¿Ã ¼ö ÀÖ°Ô µÈ´Ù. ¿öÀÇ ¿¹Á¦¿¡¼­, JanetÀº gauss¿¡¼­ µé¾î¿Â´Ù¸é ±×³àÀÇ °èÁ¤Àº janetÀ¸·Î ·Î±×ÀÎÇØ µé¾î°¥ ¼ö ÀÖ°í, root¸¦ Á¦¿ÜÇÑ ´Ù¸¥ À¯ÀúÀÇ °æ¿ì·Î ÀÌ¿Í ¸¶Âù°¡ÁöÀÌ´Ù. ±×·¯³ª, ¸¸¾à JanetÀÌ joeÀÇ °èÁ¤À¸·Î ·Î±×ÀÎÇÏ·Á ÇÑ´Ù¸é, º¸ÅëÀÇ °æ¿ì¿Í ¸¶Âù°¡Áö·Î Æнº¿öµå ÇÁ·ÒÇÁÆ®¸¦ ¹ÞÀ» °ÍÀÌ´Ù.

¸¸¾à À§ ¿¹Á¦ÆÄÀÏÀÇ ¸¶Áö¸· ¶óÀÎÀÇ °æ¿ìó·³ È£½ºÆ®³×ÀÓ µÚ¿¡ À¯Àú³×ÀÓÀÌ ÀÖ´Ù¸é, ÀÌ À¯Àú´Â root °èÁ¤À» Á¦¿ÜÇÑ ¸ðµç °èÁ¤¿¡ ´ëÇØ Æнº¿öµå ¾øÀÌ ¾ï¼¼½º ÇÒ ¼ö ÀÖ´Ù.

"-public" ó·³ ¸¶À̳ʽº ±âÈ£°¡ ¾Õ¿¡ ºÙÀº È£½ºÆ®³×ÀÓÀº, °³º° À¯ÀúµéÀÌ .rhostsÆÄÀÏÀ» ¾î¶»°Ô ¼³Á¤Çß´ÂÁö¿¡ »ó°ü¾øÀÌ publicÀÇ ¸ðµç À¯Àú¿¡ ´ëÇØ ÀÎÁõÀ» ¿ä±¸ÇÏ°Ô ¸¸µç´Ù.

.rhosts ÆÄÀÏÀÇ Æ÷¸ËÀº hosts.equivÀÇ ±×°Í°ú µ¿ÀÏÇϳª, Àǹ̴ ¾à°£ ´Ù¸£´Ù. euler »ó¿¡¼­ JoeÀÇ .rhosts ÆÄÀÏÀÌ ´ÙÀ½°ú °°´Ù°í °£ÁÖÇÏÀÚ.

     chomp.cs.groucho.edu
     gauss	janet

ù¹ø° ¿£Æ®¸®´Â chomp.cs.groucho.edu¿¡¼­ ·Î±×ÀÎ ÇØ µé¾î¿Ã ¶§ Æнº¿öµå ¾øÀÌ joe¿¡ ¾ï¼¼½ºÇÏ°Ô²û Çϳª, euler³ª chompÀÇ ´Ù¸¥ °èÁ¤ÀÇ ±ÇÇÑ¿¡´Â ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê´Â´Ù. µÎ¹ø° ¿£Æ®¸®´Â ÀÌ¿Í ¾à°£ ´Þ¸®, janetÀÌ gauss¿¡¼­ ·Î±×ÀÎ ÇÒ ¶§¿£ JoeÀÇ °èÁ¤¿¡ ÀÚÀ¯·ÎÀÌ ¾ï¼¼½ºÇÒ ¼ö ÀÖ°Ô ÇÑ´Ù.

ÁÖÀÇÇÒ °ÍÀº, Ŭ¶óÀ̾ðÆ®ÀÇ È£½ºÆ® ³×ÀÓÀ» ¾òÀ»¶§, È£ÃâÀÚÀÇ ÁÖ¼Ò¸¦ ³×ÀÓÀ¸·Î ¿ª ¸ÅÇÎÇÑ´Ù´Â °ÍÀ¸·Î, ÀÌ¿¡ µû¶ó resolver¿¡ unknownÇÑ È£½ºÆ®¿¡¼­´Â ÀÌ·¯ÇÑ ±â´ÉÀ» »ç¿ëÇÒ ¼ö ¾ø´Ù. Ŭ¶óÀ̾ðÆ®ÀÇ È£½ºÆ®³×ÀÓÀÌ È£½ºÆ®ÆÄÀÏÀÇ À̸§°ú ÀÏÄ¡ÇÏ´Â °ÍÀ¸·Î °£ÁÖÇÏ´Â °æ¿ì´Â ´ÙÀ½ ÁßÀÇ ÇϳªÀÌ´Ù.

  • Ŭ¶óÀ̾ðÆ®ÀÇ canonical È£½ºÆ®³×ÀÓ(alias°¡ ¾Æ´Ñ)ÀÌ ÆÄÀÏÀÇ È£½ºÆ®³×ÀÓ°ú ±ÛÀÚ ±×´ë·Î ÀÏÄ¡ÇÑ´Ù.

  • ¸¸¾à Ŭ¶óÀ̾ðÆ®ÀÇ È£½ºÆ®³×ÀÓÀÌ FQDN(DNS¸¦ µ¹¸±¶§ resolver¿¡¼­ ¸®ÅϵǴÂ)ÀÌ°í, È£½ºÆ® ÆÄÀϳ»ÀÇ È£½ºÆ®³×ÀÓ°ú ±ÛÀÚ ±×´ë·Î ÀÏÄ¡ÇÏÁö ¾Ê´Â´Ù¸é, ±×°ÍÀº ·ÎÄà µµ¸ÞÀÎ ³×ÀÓÀ» ºÙ¿© È®ÀåÇÑ È£½ºÆ®³×ÀÓ¿¡ ºñ±³ÇÑ´Ù.

Other Chapters

1. Introduction to Networking
2. Issues of TCP/IP Networking
3. Configuring the Networking Hardware
4. Setting up the Serial Hardware
5. Configuring TCP/IP Networking
6. Name Service and Resolver Configuration
7. Serial Line IP
8. The Point-to-Point Protocol
9. Various Network Applications
10. The Network Information System
11. The Network File System
12. Managing Taylor UUCP
13. Electronic Mail
14. Getting smail Up and Running
15. Sendmail+IDA
16. Netnews
17. C News
18. A Description of NNTP
19. Newsreader Configuration

Appendix

A. A Null Printer Cable for PLIP
B. Sample smail Configuration Files
C. The GNU General Public License