· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Linuxdoc Sgml/Various_Info-KLDP

¶Ç ´Ù¸¥ ¸®´ª½ºÀÇ ¼¼°è

¶Ç ´Ù¸¥ ¸®´ª½ºÀÇ ¼¼°è

ÀÌ ¸¸¿ë geoman@nownuri.net

1997³â 6¿ù SGML ÆíÁý: À¯ ¼ºÅ alloying@nownuri.net

1. SysV ÃʱâÈ­

Áö±ÝºÎÅÍ´Â ·¹µåÇÞ ¹èÆ÷ÆÇ¿¡¼­ »ç¿ëÇÏ´Â SysV ÃʱâÈ­ ½ºÅ¸ÀÏ¿¡ ´ëÇؼ­ ¾Ë¾Æº¸µµ·Ï ÇÏ°Ú´Ù. ±× µ¿¾È °¡Àå ¸¹ÀÌ »ç¿ëµÇ¾î ¿Ô´ø ¹èÆ÷ÆÇÀº ¿ª½Ã ÆÐÆ®¸¯ º¼Ä¿µù ¾¾ÀÇ ½½·¢¿þ¾îÀÓÀÌ ºÐ¸íÇϸç Åë°è»óÀ¸·Î º¼ ¶§ Áö±Ý ÇöÀçµµ ±×·¯ÇÏ´Ù. ÇÏÁö¸¸ ·¹µåÇÞ, µ¥ºñ¾È ¹èÆ÷ÆÇÀÇ »ç¿ëÀÚµéÀÌ ¸¹¾ÆÁö¸é¼­ ½½·¢¿þ¾îó·³ ijÁÖ¾óÇÏ°í ¾à°£Àº ¾Æ¸¶Ãß¾îÀûÀÎ ¹èÆ÷ÆÇ°ú´Â ´Þ¸® °í°¡ÀÇ »ó¿ë À¯´Ð½º ½Ã½ºÅÛ¿¡¼­³ª º¼ ¼ö ÀÖ¾ú´ø źźÇÑ ÆÐÅ°Áö °ü¸® ½Ã½ºÅÛ, ÀÌ·Î ÀÎÇØ ´õ ÀÌ»ó ¸î ´Þ¿¡ ÇÑ ¹ø¾¿ ½Ã½ºÅÛ Àüü¸¦ ´Ù½Ã ¼³Ä¡ÇØ¾ß ÇÏ´Â ±¼·¹¿¡¼­ ¹þ¾î³ª°Ô µÇ¾ú´Ù´Â Á¡Àº ¸®´ª½º ¼¼°èÀÇ ¹ßÀüÀ̶ó ÇÏÁö ¾ÊÀ» ¼ö ¾ø´Ù.

½½·¢¿þ¾î¸¦ ¾²°í ÀÖ´Â »ç¶÷µé, ±×¸®°í ¾û°Ì°á¿¡ ½½·¢¿þ¾î¿¡¼­ »õ·Î¿î ¹èÆ÷ÆÇÀ¸·Î ÁÖ¸ñ¹Þ´Â ·¹µåÇÞ ¹èÆ÷ÆÇÀ¸·Î ¿Å°Ü¿Â »ç¶÷µéÀº ½½·¢¿þ¾î¿Í ºñ±³ÇÏ¿© ¾î¶°ÇÑ ºÎºÐÀÌ ´Ù¸¥ °ÍÀÎÁö ¾Ë°í ½Í¾îÇÑ´Ù.

ÀüüÀûÀ¸·Î ¹èÆ÷ÆÇ ¸ðµÎ´Â °°Àº ¸®´ª½ºÀÌ¸ç ´Ù¸¥ ¸®´ª½ºÀÏ ¼ö ¾ø´Ù´Â Á¡Àº ºÐ¸íÇÏ´Ù. ¸¹Àº »ç¶÷µéÀÌ ½½·¢¿þ¾î, ·¹µåÇÞ, µ¥ºñ¾ÈÀÌ ¸¶Ä¡ ÀüÇô ´Ù¸¥ °ÍÀÎ °Íó·³ ´À³¢´Âµ¥ ÀÌ ¸ðµÎ¸¦ »ç¿ëÇغ» ÇÊÀڷμ­´Â °á·ÐÀûÀ¸·Î ¡®¸®´ª½º¡¯¶ó´Â Á¡¿¡¼­ ±×¸®°í °á±¹Àº ¸ðµÎ °ü¸®ÀÚ(Áï ¿©·¯ºÐ)ÀÇ ´É·Â¿¡ ´Þ·È´Ù°í ¸»ÇÏ°í ½Í´Ù. ÀÌ¹Ì ÀÚ½ÅÀÇ ¸®´ª½º ½Ã½ºÅÛÀÌ ¿©·¯ºÐÀÇ ºÎÁö·±ÇÑ ¼Õ±æÀ» ¹Þ¾Æ¼­ ÃæºÐÈ÷ ¾ÈÁ¤È­µÇ¾î ÀÖ´Ù¸é, ±×¸®°í Ưº°ÇÑ ÀÌÀ¯°¡ ¾øÀ¸¸é ´ÜÁö »õ·Î¿î ¹èÆ÷ÆÇÀÌ ³ª¿Ô´Ù°í ÇÏ¿© ¸ÖÂÄÇÏ°Ô Àß µ¹¾Æ°¡´Â ½Ã½ºÅÛÀ» ³¯¸®´Â ÀÏÀº ¾øµµ·Ï ÇØ¾ß ÇÑ´Ù°í »ý°¢ÇÑ´Ù. ¹èÆ÷ÆÇ ¼³Ä¡ÂëÀÌ¾ß ÀÌÁ¦ ³²ÀÇ µµ¿ò ¾øÀ̵µ ½º½º·Î Çس¾ ¼ö ÀÖ´Â »ç¶÷À̶ó¸é »õ·Î¿î ¹èÆ÷ÆÇÀ» °æÇèÇغ¸´Â Àç¹Ì ¶ÇÇÑ »©³õÀ» ¼ö ¾ø´Â Àç¹ÌÀÏÁö ¸ð¸¥´Ù.

ÇÏÁö¸¸ ÇÊÀÚÀÇ »ý°¢À¸·Î´Â ¹èÆ÷ÆÇ Àç¹Ìº¸´Ù´Â »õ·Î¿î ÀÀ¿ë ±â¼ú°ú ÇÁ·Î±×·¥À» ÀÍÈ÷´Â °ÍÀÌ ´õ À¯ÀÍÇÑ ½Ã°£ÀÌ µÇÁö ¾ÊÀ»±î ÇÑ´Ù. ¶Ç´Â ¿©°¡½Ã°£ µ¿¾È HOWTO ¹®¼­¸¦ Àо°Å³ª Çѱ۷Π¹ø¿ªµÇÁö ¾ÊÀº ¹®¼­¸¦ ¹ø¿ªÇؼ­ ´Ù¸¥ Çѱ¹ ¸®´ª¼­µéÀ» µ½´Â °ÍÀÌ ´õ ÁÁÀº ÀÏÀÌ ¾Æ´Ò±î »ý°¢ÇÑ´Ù.

1.1 ¸®´ª½ºÀÇ Ã¹ ¹ø° ÇÁ·Î¼¼½º´Â init

Ä¿³ÎÀÌ ¸Þ¸ð¸®¿¡ ÀûÀçµÇ°í Á¦ÀÏ ¸ÕÀú ½ÃÀÛÇÏ´Â ÇÁ·Î¼¼½º´Â ¹Ù·Î initÀÌ´Ù. ÀÌ initÀÌ ½ÃÀÛÇÏ¸é ¸®´ª½º ½Ã½ºÅÛÀÌ °¡µ¿µÇ±â ½ÃÀÛÇÏ´Â °ÍÀ̸ç ÀÌ initÀÌ Á×À¸¸é ±× ½Ã½ºÅÛÀº ¸ØÃá °ÍÀÌ´Ù.

$ ps aux | less

À§ ¸í·ÉÀ¸·Î È®ÀÎÇغ¸¶ó. initÀÇ PID´Â 1 ¹øÀÌ´Ù. À¯´Ð½º ½Ã½ºÅÛÀ» ¾Æ´Â »ç¶÷Àº ÀÌ¹Ì ¾Ë°í ÀÖ´Â ³»¿ëÀ¸·Î¼­ ¸ðµç ÇÁ·Î¼¼½º´Â °á±¹ initÀ¸·ÎºÎÅÍ º¹Á¦(fork)µÇ¾î »ý¼ºµÈ °ÍÀÌ´Ù.

USER PID %CPU %MEM SIZE RSS  TTY STAT  START TIME
COMMAND
bin   136 0.0 0.0  824   0 ? SW Mar 13  0:00 (portmap)
nobody 189 0.0 0.2 1104  112 ? S  Mar 13  0:00 (httpd)
nobody 190 0.0 0.2 1104  116 ? S  Mar 13  0:00 (httpd)
nobody 191 0.0 0.2 1104  104 ? S  Mar 13  0:00 (httpd)
nobody 192 0.0 0.2 1104  120 ? S  Mar 13  0:00 (httpd)
nobody 193 0.0 0.2 1104  108 ? S  Mar 13  0:00 (httpd)
root   1 0.0 0.4  812  212 ? S  Mar 13  0:04 init
root   2 0.0 0.0   0   0 ? SW Mar 13  0:00 (kflushd)
root   3 0.0 0.0   0   0 ? SW<Mar 13  0:00 (kswapd)
root   4 0.0 0.0   0   0 ? SW Mar 13  0:00 (nfsiod)
root   5 0.0 0.0   0   0 ? SW Mar 13  0:00 (nfsiod)
root   6 0.0 0.0   0   0 ? SW Mar 13  0:00 (nfsiod)
root   7 0.0 0.0   0   0 ? SW Mar 13  0:00 (nfsiod)
root   21 0.0 0.1  796   48 ? S  Mar 13  0:00 /sbin/kerneld
root  103 0.0 0.3  824  164 ? S  Mar 13  0:00 syslogd
root  114 0.0 0.2  972  112 ? S  Mar 13  0:00 klogd
root  125 0.0 0.1  820   84 ? S  Mar 13  0:00 crond
root  147 0.0 0.0  804   16 ? S  Mar 13  0:00 (inetd)
root  158 0.0 0.0  828   4 ? S  Mar 13  0:00 (lpd)
root  170 0.0 0.1  976   76 ? S  Mar 13  0:00 named
root  181 0.0 0.3 1104  160 ? S  Mar 13  0:00 httpd
root  207 0.0 0.4 1220  224 ? S  Mar 13  0:00 sendmail: accepting

initÀÇ Áß¿äÇÑ ÀÓ¹« Áß Çϳª´Â ½Ã½ºÅÛÀ» ÃʱâÈ­½ÃÅ°´Â °ÍÀÌ´Ù. ¿ì¼± initÀº ´ÙÀ½ ÆÄÀÏÀ» »ìÆ캸°í ÀڱⰡ ¾î¶² ÀÏÀ» ÇØ¾ß ÇÒÁö ¾Ë¾Æº»´Ù.

/etc/inittab

½ÇÇà ·¹º§(Run Level)À̶ó´Â °³³ä

¸®´ª½º´Â ½ÇÇà ·¹º§À̶ó´Â °³³äÀ» °®´Â´Ù. ·¹µåÇÞ ½Ã½ºÅÛ¿¡¼­ ½Ã½ºÅÛ Á¤Áö¸¦ ÀǹÌÇÏ´Â 0 ¹ø, ·çÆ®¸¸ÀÌ ·Î±×ÀÎÇÒ ¼ö ÀÖ°í ½Ã½ºÅÛÀÇ ¹®Á¦¸¦ °íÄ¡°Ô µÇ´Â ½Ì±Û À¯Àú ¸ðµå 1 ¹ø, NFS ¼­ºñ½º¸¦ Á¦°øÇÏÁö ¾Ê´Â ´ÙÁß »ç¿ëÀÚ ¸ðµå 2 ¹ø, ±×¸®°í ±âº»°ªÀ¸·Î ¸ðµç »ç¿ëÀÚµéÀÌ ·Î±×ÀÎÇÒ ¼ö ÀÖ°í ½Ã½ºÅÛÀÇ ¸ðµç ±â´ÉÀÌ ´Ù ¹ßÈֵǴ 3 ¹ø, ÃʱâÈ­ÇÏÀÚ¸¶ÀÚ ·Î±×ÀÎ È­¸éÀÌ X À©µµ ·Î±×ÀÎ È­¸éÀ¸·Î ¶ß´Â 5 ¹ø, ±×¸®°í ¸¶Áö¸·À¸·Î ¸®ºÎÆà ¸ðµåÀÎ 6 ¹øÀÌ ÀÖ´Ù. 4 ¹øÀº ¾îµð Àִ°¡? ±×°ÍÀº »ç¿ëÇÏÁö ¾Ê´Â´Ù.

initdefault Ç׸ñ¿¡¼­ ±âº»°ªÀ» Á¤ÇØÁÖ°Ô µÇ¾î Àִµ¥ Àý´ë 0 ¹øÀ̳ª 6 ¹øÀ¸·Î Á¤ÇÏ´Â ½Ç¼ö¸¦ ¹üÇÏÁö ¸»¶ó. ½Ã½ºÅÛÀÌ ºÎÆõÇÀÚ¸¶ÀÚ ¸®ºÎÆõǰųª ÁßÁöÇعö¸± °ÍÀÌ´Ù.

ÀÌ·¸°Ô ½ÇÇà ·¹º§À̶ó´Â °³³äÀ» °¡Áö¹Ç·Î ½Ã½ºÅÛÀº ¿©·¯ °¡Áö »óȲ¿¡ ´ëÇÏ¿© Á»´õ À¯¿¬ÇÏ°Ô ´ëóÇÒ ¼ö ÀÖ°í ´õ¿í ³í¸®ÀûÀÎ ½Ã½ºÅÛÀÌ µÈ´Ù.

1.2 /etc/rc.d µð·ºÅ͸® ŽÇè

ÀÌ µð·ºÅ͸®ÀÇ ±¸Á¶°¡ ½½·¢¿þ¾î¿Í´Â ÀüÇô ´Þ¶ó ¸¹Àº »ç¶÷µéÀÌ ¾î¸®µÕÀýÇØ ÇÏ°ïÇÑ´Ù.

rc.sysinit

½Ã½ºÅÛ ÃʱâÈ­½Ã ¸Ç ¸ÕÀú µü ÇÑ ¹ø ½ÇÇàµÇ´Â ÃʱâÈ­ ½ºÅ©¸³Æ®ÀÌ´Ù. /etc/sysconfig/network ³»¿ëÀ» ºÒ·¯µéÀÎ ´ÙÀ½, hostname ¸í·ÉÀ¸·Î È£½ºÆ® À̸§À» ¼³Á¤ÇÑ´Ù. ¸¹Àº »ç¶÷µéÀÌ ·¹µåÇÞÀÇ Á¦¾îÆÇ(control-panel)¿¡¼­ ³×Æ®¿öÅ© ¼³Á¤À» ÇÏ¸é ¾îµð¿¡ ÀúÀåµÇ´ÂÁö ¾Ë°íÀÚ Çϴµ¥ ¹Ù·Î ±âº»°ªÀÌ /etc/sysconfig ¹Ø¿¡ ÀúÀåµÇ¾î ÀÖ´Ù´Â °ÍÀ» ¾Ë¾ÆµÎ±â ¹Ù¶õ´Ù.

½º¿ÒÀ» È°¼ºÈ­½ÃÅ°°í /etc/fstab Á¤º¸¿¡ ÀÇ°ÅÇÏ¿© ÆÄÀÏ ½Ã½ºÅÛ¿¡ ÀÌ»óÀÌ ÀÖ´ÂÁö ÀÏ´Ü Á¡°ËÇÑ´Ù. ¸¶¿îÆ®ÇÑ´Ù. ¸¸¾à ½É°¢ÇÑ ¹®Á¦°¡ ¹ß»ýÇÏ´Â °æ¿ì¿¡´Â (Repair filesystem) # ¶ó´Â ÇÁ·ÒÇÁÆ®¸¦ ³»³õ°í ¼öµ¿À¸·Î e2fsck¸¦ µ¹·Á¼­ ÆÄÀÏ ½Ã½ºÅÛÀ» Á¡°ËÇϵµ·Ï ¿äûÇÑ´Ù. ·¹µåÇÞ ½Ã½ºÅÛ¿¡¼­´Â ÆÄÀÏ ½Ã½ºÅÛÀ» Á¡°ËÇÑ ÈÄ¿¡´Â ¸®ºÎÆÃÇϵµ·Ï µÇ¾î ÀÖ´Ù. ¼Ð ½ºÅ©¸³Æ®¸¦ ÀÌÇØÇÏ´Â »ç¶÷µéÀº °õ°õÈ÷ Àо±â ¹Ù¶õ´Ù. ¿©·¯ºÐÀÌ ´Ù¸¥ ¿ëµµ·Î ¼Ð ½ºÅ©¸³Æ®¸¦ Â¥´Âµ¥ ¸¹Àº µµ¿òÀÌ µÉ °ÍÀ̶ó ¹Ï´Â´Ù.

rc0.d
rc1.d
rc2.d
rc3.d
rc4.d
rc5.d
rc6.d

·¹µåÇÞ ¸®´ª½ºÀÇ /etc/rc.d µð·ºÅ͸®ÀÇ Æ¯Â¡Àº ¹Ù·Î ¿©±â¿¡ ÀÖ´Ù. °¢ ½ÇÇà ·¹º§ ¸¶´Ù º°µµÀÇ µð·ºÅ͸®¸¦ ¸¶·ÃÇصΰí ÀÖ´Ù. ÀÚ, ±âº» ½ÇÇà ·¹º§ 3 ¹ø¿¡ °ü°èµÇ´Â rc3.d µð·ºÅ͸®¿¡ µé¾î°¡º¸¶ó. ±×¸®°í ls -l Çغ¸ÀÚ.

S10network    ->   ../init.d/network
S30syslog     ->   ../init.d/syslog
S40cron       ->   ../init.d/cron.init
S40portmap    ->   ../init.d/portmap.init
S50inet       ->   ../init.d/inet
S50lpd.init   ->   ../init.d/lpd.init
S55named.init ->   ../init.d/named.init
S65httpd      ->   /etc/rc.d/init.d/httpd.init
S75keytable   ->   ../init.d/keytable
S80sendmail   ->   ../init.d/sendmail.init
S85gpm        ->   ../init.d/gpm
S99local      ->   ../rc.local

¿À·ÎÁö ¸µÅ©¸¸ Á¸ÀçÇÑ´Ù. ±×¸®°í ±× ¸µÅ©´Â ¸ðµÎ /etc/init.d µð·ºÅ͸®ÀÇ ½ºÅ©¸³ Æ®µéÀ» °¡¸®Å°°í ÀÖ´Ù. ´Ù¸¥ µð·ºÅ͸®µé¿¡ µé¾î°¡µµ ¸¶Âù°¡ÁöÀÌ´Ù.

½ÇÁ¦ ½ºÅ©¸³Æ®´Â ¸ðµÎ /etc/rc.d/init.d ¿¡ ÀÖ´Ù.

¸µÅ©µÈ À̸§À» Àß »ìÆ캸¸é S## À̸§ÀÇ Çü½ÄÀ» ¶ç°í ÀÖ´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù(¿©±â¼­ ##´Â ¼ýÀÚ). rc6.d¿¡ °¡º¸¸é ´ëºÎºÐÀÌ K## À̸§ÀÇ Çü½ÄÀ» °¡Áö°í ÀÖ´Ù´Â °Íµµ ¾Ë ¼ö ÀÖ´Ù. ÀÌ¿¡ ´ëÇÑ ¼³¸íÀº Àá±ñ ¹Ì·ç±â·Î ÇÏÀÚ. ÀÏ´Ü ¸ðµç ½ºÅ©¸³Æ®°¡ µé¾îÀÖ´Â /etc/rc.d/init.d µð·ºÅ͸®·Î °¡º»´Ù.

cron.init      Å©·Ð ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
functions      ´Ù¸¥ ½ºÅ©¸³Æ®¿¡ »ç¿ëµÇ´Â À¯Æ¿¸®Æ¼ ÇÔ¼ö
gpm            ÅؽºÆ® ¸ðµå ¸¶¿ì½º ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
halt           halt ¶Ç´Â reboot ½ºÅ©¸³Æ®
httpd.init     À¥ ¼­¹ö ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
inet           inet ¼öÆÛ ¼­¹ö ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
keytable       Å°º¸µå Å×À̺í ÁöÁ¤ ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
killall        Á×Áö ¾Ê´Â ÇÁ·Î¼¼½º °­Á¦ Á¾·á ½ºÅ©¸³Æ®
lpd.init       BSD ÇÁ¸°Æà µ¥¸ó ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
named.init     ·ÎÄà ³×ÀÓ¼­¹ö µ¥¸ó ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
network        ³×Æ®¿öÅ© ¾÷/´Ù¿î ½ºÅ©¸³Æ®
news           ´º½º¼­¹ö ¾÷/´Ù¿î ½ºÅ©¸³Æ®
nfs            NFS ¼­ºñ½º ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
nfsfs          NFS ¸¶¿îÆ® ½ºÅ©¸³Æ®
pcmcia         PCMCIA ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
portmap.init   Æ÷Æ®¸Ê µ¥¸ó ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
random         ³­¼ö ¹ß»ý ½ºÅ©¸³Æ®
sendmail.init  ¸ÞÀÏ ¼­¹ö ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®
single         ½Ì±Û ¸ðµå ÁøÀÔ ½ºÅ©¸³Æ®
skeleton       ·¹µåÇÞ init ½ºÅ©¸³Æ® »À´ë
syslog         syslog ½ÃÀÛ/Á¾·á ½ºÅ©¸³Æ®

¸¸¾à À¥ ¼­¹ö¸¦ ¸ØÃß°Ô ÇÏ°íÀÚ ÇÑ´Ù¸é ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù.

# ./httpd.init stop

´Ù½Ã ½ÃÀÛÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÑ´Ù.

# ./httpd.init start

»ó´çÈ÷ À̼ºÀûÀÌÁö ¾ÊÀº°¡? ½ÃÀÛÇÏ·Á¸é start¸¦, ¸ØÃß·Á¸é stopÀ» ¼Ð ½ºÅ©¸³Æ®ÀÇ Àü´Þ Àμö·Î ÁØ´Ù. ¸¸¾à ¿©·¯ºÐÀÌ ¾î¶² ¼­ºñ½º¿¡ ´ëÇÑ ÃʱâÈ­ ½ºÅ©¸³Æ®¸¦ ¸¸µé·Á°í ÇÑ´Ù¸é ´ÙÀ½ÀÇ skeleton ½ºÅ©¸³Æ®¸¦ ±âº» »À´ë·Î ÇÏ°í ³ª¸ÓÁö ½ºÅ©¸³Æ®¸¦ Âü°íÇÏ¿© start¿¡ ´ëÇؼ­´Â ¼­ºñ½º ½ÃÀÛ ¸í·ÉÀ», ±×¸®°í stop¿¡ ´ëÇؼ­´Â ¼­ºñ½º Á¾·á¿¡ °ü°èµÈ ¸í·ÉÀ» Àû¾îÁÖµµ·Ï ÇÑ´Ù.

# ½ºÅ©¸³Æ®¿¡ »ç¿ëµÇ´Â ÇÔ¼ö ¶óÀ̺귯¸® ·çƾÀ» ¼Ò½º(source)ÇÑ´Ù
. /etc/rc.d/init.d/functions

# ÀÌ ºÎºÐÀ» À¯½ÉÈ÷ »ìÆ캸±â ¹Ù¶õ´Ù.
case "$1" in
 start)
    touch /var/lock/subsys/skeleton
    ;;
 stop)
    rm -f /var/lock/subsys/skeleton
    ;;
 *)
    echo "Usage: skeleton {start|stop}"
    exit 1
esac

exit 0

±×·³ rc?.d µð·ºÅ͸®ÀÇ °¢ ½Éº¼¸¯ ¸µÅ© ÆÄÀÏÀÇ À̸§Àº ¾î¶² Àǹ̸¦ °®´Â°¡? S·Î ½ÃÀÛÇÏ´Â ½Éº¼¸¯ ¸µÅ© ÆÄÀÏÀº °¡¸®Å°´Â ½ºÅ©¸³Æ®¿¡ start°¡ ºÙ¾î¼­ ½ÇÇàµÈ´Ù. Áï ½ÃÀÛ ½ºÅ©¸³Æ®ÀÌ´Ù. K·Î ½ÃÀÛÇÏ´Â ½Éº¼¸¯ ¸µÅ©´Â °¡¸®Å°´Â ½ºÅ©¸³Æ®¿¡ stopÀÌ ºÙ¾î¼­ ½ÇÇàµÈ´Ù. Áï Á¾·á ½ºÅ©¸³Æ®À̸ç KillÀ» ÀǹÌÇÑ´Ù. ½ÇÁ¦·Î ¾î¶»°Ô È£ÃâµÇ°í ÀÖ´ÂÁö¸¦ ¾Ë¾Æº¸±â À§Çؼ­´Â /etc/rc.d/rc ½ºÅ©¸³Æ®¸¦ Àо¸é µÈ´Ù.

¿©·¯ºÐÀÌ ¿øÇÏ´Â ´Ü ÇÑ ¹øÀÇ ½ÇÇà ¸í·ÉÀº rc.local¿¡!

½Ã½ºÅÛ ÃʱâÈ­ÇÒ ¶§ µü ÇÑ ¹ø ½ÇÇàµÇ±æ ¿øÇÏ´Â ¸í·ÉÀº ¾Æ¹« °÷¿¡³ª µÎÁö ¸»°í rc.local ÆÄÀÏ µÞºÎºÐ¿¡ Ãß°¡ÇÑ´Ù. ÇÊÀÚ´Â ´ÙÀ½À» Ãß°¡ÇÏ¿´´Ù.

modprobe slhc 
modprobe ppp            PPP ±â´É ·Îµù
modprobe bsd_comp
modprobe ppp_deflate
modprobe ip_masq_ftp    FTP ¸Å½ºÄ¿·¹À̵ù ±â´É ·Îµù
modprobe aic7xxx        ¾Æ´äÅØ SCSI ÄÁÆ®·Ñ·¯ ÀνÄ
modprobe sbpcd          AT¹ö½º »çºí2¹è¼Ó ÀνÄ

rc.local ½ºÅ©¸³Æ®¸¦ Àß º¸¸é ¿©·¯ºÐÀÌ ·Î±×ÀÎÇÒ ¶§ º¼ ¼ö ÀÖ´Â Red Hat Linux release 4.1 (Vanderbilt)¿Í °°Àº ¸Þ½ÃÁö°¡ ¼³Á¤µÇ´Â ºÎºÐÀ» ÀÌÇØÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

1.3 Á¦¾îÆÇÀÇ ½ÇÇà·¹º§ ÆíÁý±â »ç¿ëÇϱâ

±×¸² 1£ºÁ¦¾îÆÇ
---------------------------------------------------------------
File                                                      Help
---------------------------------------------------------------
init.d     0 ¹ø    1 ¹ø    2 ¹ø    3 ¹ø    4 ¹ø    5 ¹ø    6 ¹ø
           ½ÃÀÛ    ½ÃÀÛ    ½ÃÀÛ    ½ÃÀÛ    ½ÃÀÛ    ½ÃÀÛ    ½ÃÀÛ
---------------------------------------------------------------
Add
Remove     0 ¹ø    1 ¹ø    2 ¹ø    3 ¹ø    4 ¹ø    5 ¹ø    6 ¹ø
Edit       Á¾·á    Á¾·á    Á¾·á    Á¾·á    Á¾·á    Á¾·á    Á¾·á
Execute
---------------------------------------------------------------

Á¦¾îÆÇÀÇ È­¸é ±¸¼ºÀº À§¿Í °°´Ù. ¸Ç ¿ÞÂÊ »ó´Ü â¿¡´Â /etc/rc.d/init.d µð·ºÅ͸®¿¡ ÀÖ´Â ¸ðµç ½ºÅ©¸³Æ®°¡ ³ªÅ¸³ª ÀÖ´Ù. ±× ½ºÅ©¸³Æ®¸¦ ¸î ¹ø ·¹º§ÀÇ ½ÃÀÛ ¶Ç´Â Á¾·á¿¡ ³ÖÀ» °ÍÀÎÁö °áÁ¤ÇÏ¸é µÈ´Ù. Çϳª¸¦ ¼±ÅÃÇÏ°í Ãß°¡(Add) ¹öÆ°À» ´©¸£¸é ¾î´À ½ÇÇà ·¹º§¿¡ Ãß°¡ÇÒ °ÍÀÎÁö ¹°¾î¿Â´Ù. ±×¸®°í ½ÃÀÛ ½ºÅ©¸³Æ®ÀÎÁö ¾Æ´Ï¸é Á¾·á ½ºÅ©¸³Æ®ÀÎÁö ¹°¾î¿À°Ô µÉ °ÍÀÌ´Ù. ±×¸®°í ³ª¼­´Â µÎ ÀÚ¸® ¼ýÀÚ¸¦ Àû¾îÁÖ°Ô µÇ´Âµ¥ ±× ¼ýÀÚ°¡ ³·À» ¼ö·Ï ¿ì¼±ÀûÀ¸·Î ½ÇÇàµÈ´Ù. Á¦°Å(Remove) ¹öÆ°Àº °¢ ½ÇÇà ·¹º§¿¡¼­ ¼±ÅÃÇÑ ÈÄ ¼±ÅÃÇÑ´Ù. ¹°¾îº¸Áö ¾Ê°í Áö¿ì¹Ç·Î ÁÖÀÇÇϱ⠹ٶõ´Ù.

ÆíÁý(Edit) ¹öÆ°Àº °¢ ½ºÅ©¸³Æ®ÀÇ ¿ì¼± ¼øÀ§ ¹øÈ£¸¦ ÆíÁýÇÏ´Â °ÍÀÌ´Ù. ½ÇÇà ¹öÆ° (Execute)Àº ÀÏ´Ü init.d â¿¡¼­ ¿øÇÏ´Â ½ºÅ©¸³Æ®¸¦ ¼±ÅÃÇÑ ÈÄ start/stopÀ» ¼±ÅÃÇÑ´Ù.

¼ÒÇü ½Ã½ºÅÛ¿¡¼­´Â ±×·¸°Ô ¸Å·ÂÀûÀ¸·Î º¸ÀÌÁö ¾ÊÀ»Áö ¸ð¸£³ª ´ëÇü ¼­¹ö¿¡¼­´Â °ü¸®ÀÚ·Î ÇÏ¿©±Ý ü°èÀûÀÎ ½Ã½ºÅÛ °ü¸®¸¦ ÇÏ°Ô ÇØÁÙ ¼ö ÀÖ´Â ÈǸ¢ÇÑ GUI µµ±¸¶ó°í º»´Ù. Áö±Ý±îÁö µ¶Æ¯ÇÑ ·¹µåÇÞ SysV ÃʱâÈ­ ½Ã½ºÅÛÀ» ¾Ë¾Æº¸¾Ò´Ù.

2. ³×Æ®¿öÅ©

¸®´ª½º¿¡¼­ Á¦ÀÏ Àç¹ÌÀÖ°Ô Áñ°Üº¼ ¼ö ÀÖ´Â °ÍÀÌ ³×Æ®¿öÅ©°¡ ¾Æ´Ò±î? ±×¸®°í ¿äÁòÀº ¸¹Àº °÷¿¡¼­ ¸®´ª½º´Â¡®À¥ ¼­¹ö ¿î¿µÃ¼°è¡¯¶ó°í ºÎ¸¦ ¼ö ÀÖÀ» ¸¸Å­ °¡Àå ¾ÈÁ¤ÀûÀÎ À¥ ¼­¹ö ¸Ó½ÅÀ¸·Î¼­ °¢±¤¹Þ°í ÀÌÁ¦¡®¸®´ª½º´Â ÈǸ¢ÇÑ°¡? ¾ÈÁ¤ÀûÀΰ¡? ¹ÏÀ» ¸¸ÇÑ°¡?¡¯¶ó´Â ¾µµ¥¾ø´Â Áú¹®ÀÌ »ç¶óÁøÁö ¿À·¡ÀÌ´Ù. ¸®´ª½ºÀÇ ¼º°øÀ» ½È¾îÇÏ´Â ¸¹Àº »ç¶÷µé¿¡°Ô ¾â¹Ì¿î ÀÏÀÎÁö ¸ð¸£³ª ¸®´ª½º´Â ¹Ù·Î ¿ì¸® ÀÚ½ÅÀÇ ¿î¿µÃ¼°èÀÌ°í ¾ðÁ¦³ª ¿­·ÁÀÖÀ¸¹Ç·Î °¡Àå ³ôÀº ¼ºÀå ¼Óµµ¸¦ º¸¿©ÁÖ°í ÀÖÀ¸¸ç ÀÚÀ¯¸¦ »ç¶ûÇÏ°í ÄÄÇ»ÅÍ ¼Ó¿¡¼­ ÀÚÀ¯¸¦ ½ÇÇöÇÏ°íÀÚ ÇÏ´Â »ç¶÷µéÀÌ ÀÖ´Â ÇÑ ÀüÁøÀº ¸ØÃßÁö ¾ÊÀ» °ÍÀÌ´Ù.

2.1 PLIPÀ̶õ?

À̹ø¿¡´Â ¸®´ª½º Ä¿³Î¿¡¼­ Áö¿øÇÏ´Â ¾ÆÁÖ µ¶Æ¯ÇÑ ±â´ÉÀ¸·Î¼­ ·£ Ä«µå¾øÀ̵µ µÎ ´ëÀÇ ÄÄÇ»Å͸¦ ¾ÆÁÖ °ª½Î°Ô ±×°Íµµ TCP/IP ÇÁ·ÎÅäÄÝ·Î °£´ÜÈ÷ ¿¬°áÇØ ÅÚ³Ý, FTP, NFS µî ¸ðµç ±â´ÉÀ» ½±°Ô »ç¿ëÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÇ ÇϳªÀÎ ¡®Æä·¯·¼ ¶óÀÎ ÀÎÅÍ³Ý ÇÁ·ÎÅäÄÝ PLIP¡¯¿¡ ´ëÇؼ­ ¾Ë¾Æº¸°Ú´Ù.

Áغñ¹°

ÇÁ¸°ÅÍ Æ÷Æ®¸¦ ¿¬°áÇÏ´Â(ÀϹÝÀûÀ¸·Î µµ½º ½ÃÀý FX ÄÉÀ̺íÀ̶ó°í ºÎ¸§) Æä·¯·¼ ³Î ÄÉÀ̺íÀ» ±¸ÀÔÇÑ´Ù. ¿ë»ê ÄÄÇ»ÅÍ »ó°¡, ƯÈ÷ ÄÉÀ̺í Àü¹® »óÁ¡¿¡¼­ ½±°Ô ±¸ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ¾à 2 õ¿ø   2 õ 5 ¹é¿ø Á¤µµ¸é ±¸ÀÔÇÒ ¼ö ÀÖ´Ù°í ¾È´Ù. ÄÄÆ÷Æ®¸¦ ¿¬°áÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ÇÁ¸°ÅÍ Æ÷Æ®¸¦ ¿¬°áÇÏ´Â ÄÉÀ̺íÀÓÀ» Á¤È®È÷ ¾Ë·ÁÁÖ¾î¾ß ÇÑ´Ù.

¸®´ª½º ÄÄÇ»ÅÍ 2 ´ë ¶Ç´Â ¸®´ª½º ¸Ó½Å ÇÑ ´ë¿Í µµ½º ¸Ó½Å ÇÑ ´ë ±×¸®°í Ä¿³Î ÄÄÆÄÀÏÇÒ ½Ã°£°ú Àڽۨ, ²ö±â°¡ ÀÖÀ¸¸é µÈ´Ù.

Ä¿³Î ÄÄÆÄÀÏÇϱ⠶Ǵ ¸ðµâ ·ÎµùÇϱâ

# cd /usr/src/linux
# make xconfig

Áö±Ý ¸®´ª½º Ä¿³Î ÄÄÆÄÀÏ¿¡¼­ °¡Àå ¸¹ÀÌ »ç¿ëµÇ´Â °ÍÀº ¿ª½Ã ¸ðµâ ÄÄÆÄÀÏÀÌ´Ù. Ŭ·¡½ÄÇÑ ¼³Á¤(Yes ¶Ç´Â No)°ú ´Þ¸® ÀÌÁ¦´Â ÁÖ·Î »ç¿ëÇÏÁö ¾Ê´Â ±â´É ¶Ç´Â ¼­·Î Ãæµ¹À» ÀÏÀ¸Å°´Â ±â´ÉÀ» ¸ðµâ(M)·Î ¼³Á¤ÇÏ¿© ½Ã½ºÅÛ ¿î¿µÁß ÀÚÀ¯ÀÚÀç·Î È°¼ºÈ­, ºñÈ°¼ºÈ­½Ãų ¼ö ÀÖ´Ù.

PLIPÀÇ °æ¿ì¿¡´Â Æä·¯·¼ Æ÷Æ®¸¦ »ç¿ëÇϱ⠶§¹®¿¡ ÇÁ¸°Å͸¦ »ç¿ëÇÏ´Â »ç¶÷µéÀº ÇÑ ¹ø¿¡ µÎ °¡Áö ±â´ÉÀ» ¸ðµÎ »ç¿ëÇÒ ¼ö´Â ¾ø´Ù´Â ¹®Á¦¸¦ °®´Â´Ù. ¹°·Ð Æä·¯·¼ Æ÷Æ®°¡ µÎ °³ ´Þ¸° °æ¿ì¿¡´Â ¹®Á¦°¡ ´Þ¶óÁö°ÚÁö¸¸ ´ëºÎºÐÀÇ PCµéÀº ´Ü ÇϳªÀÇ Æä·¯·¼ Æ÷Æ®¸¦ °¡Áö°í ÀÖ´Ù.

¹Ù·Î ¿©±â¼­ Áß¿äÇÑ °Í ÇÑ °¡Áö°¡ ÀÖ´Ù. ¿©·¯ºÐÀÌ ÇÁ¸°ÅÍ/PLIPÀ» ±×¶§¸¶´Ù »ç ¿ëÇÏ·Á¸é µÎ ±â´ÉÀ» ¸ðµÎ ¸ðµâ·Î ¼³Á¤ÇØ¾ß ÇÑ´Ù. ±×¸®°í ³ª¼­ ÇÁ¸°Å͸¦ ¾µ ¶§ ´Â PLIP ¸ðµâÀ» »©³»°í ÇÁ¸°ÅÍ ±â´ÉÀ» Áý¾î³Ö°í PLIPÀ» ¾µ ¶§´Â ¹Ý´ë°úÁ¤À» °ÅÃÄ¾ß ÇÑ´Ù. ¶ÇÇÑ Æä·¯·¼ ¹öÀüÀÇ ZIP µå¶óÀÌºê °°Àº °ÍÀ» »ç¿ëÇÏ´Â »ç¶÷µéÀº ´ç¿¬È÷ ZIP ±â´Éµµ ¸ðµâ·Î ¼³Á¤ÇØ¾ß ÇÑ´Ù.

# make dep ; make clean
# make zImage ¶Ç´Â make zlilo
# make modules ; make modules_install

µÎ ¹ø° make zImage °úÁ¤Àº ¿©·¯ºÐÀÇ Ä¿³Î¿¡ ÀÌ¹Ì ÇÁ¸°ÅÍ Áö¿øÀ̳ª ZIP ±â´ÉÀÌ Á¤ÀûÀ¸·Î µé¾î°¡ ÀÖ´Â °æ¿ìÀÌ´Ù. ¿äÁòÀÇ ¹èÆ÷ÆǵéÀº ´ëºÎºÐ ¸ðµâ ¹æ½ÄÀ» ÃëÇÏ°í ÃÖ´ëÇÑ ºÎÂ÷Àû ±â´ÉµéÀ» ¸ðµÎ ¸ðµâÈ­½ÃÄѳõ°í Àֱ⠶§¹®¿¡ 3 ¹ø° °úÁ¤¸¸ ÇØÁ־ ¹«¹æÇÏ´Ù.

¸ðµâÀ» ¸¸µé°í ¼³Ä¡Çϸé /lib/modules/<Ä¿³Î ¹öÀü> µð·ºÅ͸®¿¡ ¼³Ä¡µÈ´Ù. PLIP Àº ³×Æ®¿öÅ· °ü·ÃÀ̹ǷΠnet µð·ºÅ͸®¿¡ ÀÖ´Ù.

total 119
-rw-r--r-- 1 root root 9112 Feb 20 22:01 3c509.o
-rw-r--r-- 1 root root 5464 Feb 20 22:00 bsd_comp.o
-rw-r--r-- 1 root root 6044 Feb 20 22:01 dlci.o
-rw-r--r-- 1 root root 2160 Feb 20 22:01 dummy.o
-rw-r--r-- 1 root root 4320 Feb 20 22:00 new_tunnel.o
-rw-r--r-- 1 root root 12532 Feb 20 22:00 plip.o
-rw-r--r-- 1 root root 24268 Feb 20 22:00 ppp.o
-rw-r--r-- 1 root root 34176 Feb 20 22:01 ppp_deflate.o
-rw-r--r-- 1 root root 6440 Feb 20 22:00 slhc.o
-rw-r--r-- 1 root root 8548 Feb 20 22:01 slip.o

PLIPÀ» »ç¿ëÇÏ·Á´Â µÎ ´ëÀÇ ÄÄÇ»Å͸¦ Æä·¯·¼ ³Î ÄÉÀ̺í·Î ¿¬°áÇÑ´Ù. ±×¸®°í ³ª¼­ µÎ´ë ¸ðµÎ insmod, modprobe ¸í·ÉÀ¸·Î plip.o ¸ðµâÀ» Ä¿³Î ±â´ÉÀ¸·Î È°¼ºÈ­½ÃŲ´Ù.

/etc/hosts ÀÛ¼ºÇϱâ

TCP/IP ³×Æ®¿öÅ· ¿¬°áÀ̹ǷΠµÎ ´ë´Â ¼­·Î¸¦ ±¸º°ÇÒ ¼ö ÀÖ´Â ÁÖ¼Ò¸¦ °¡Á®¾ß ÇÑ´Ù. µÎ ´ëÀÇ ÄÄÇ»ÅÍ /etc/hosts ÆÄÀÏ µÚ¿¡ ´ÙÀ½ ³»¿ëÀ» Ãß°¡ÇÏÀÚ.

192.168.1.1    one  
192.168.1.2    two  

ÄÉÀ̺í·Î ¿¬°áÇÑ ÇÑ ÂÊÀÇ ÁÖ¼Ò¸¦ 192.168.1.1·Î Á¤ÇÏ°í À̸§Àº ±×³É oneÀ̶ó°í Çϱâ·Î ÇÑ´Ù. ³ª¸ÓÁö ÇÑ ÂÊÀº 192.168.1.2¸¦ ÁÖ¼Ò·Î ÇÏ°í two¶ó°í ºÎ¸£±â·Î ÇÏ¿´´Ù.

PLIP ÀÎÅÍÆäÀ̽º È°¼ºÈ­Çϱâ

one Áï 200.0.0.1À̶ó´Â ÁÖ¼Ò¸¦ ºÎ¿©¹ÞÀº ÇÑ ÂÊ ¸®´ª½º ¸Ó½Å¿¡¼­ ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù.

# ifconfig plip1 one pointopoint two up
# route add two plip1

ifconfig ¸í·ÉÀº Àß ¾Ë¾ÆµÎ¾î¾ß ÇÒ ¸í·ÉÀÌ´Ù. ¾î¶² ³×Æ®¿öÅ© ÀÎÅÍÆäÀ̽ºµç ¹Ù·Î ÀÌ ¸í·ÉÀ» °¡Áö°í ÀÛµ¿½ÃŲ´Ù. plip1À̶ó´Â ÀÎÅÍÆäÀ̽º¸¦ ¸¸µç´Ù. one°ú two¸¦ ÀÏ´ëÀÏ(P-t-P)·Î ¿¬°áÇÑ´Ù. ±×¸®°í ³ª¼­ ¶ó¿ìÆà Á¤º¸¸¦ ¼öµ¿À¸·Î ºÎ¿©Çϴµ¥ plip1¿¡´Ù°¡ two·Î °¡´Â °æ·Î¸¦ ¼³Á¤ÇÑ´Ù. ¸ñÀûÁö°¡ twoÀ̸é PLIP ÀÎÅÍÆäÀ̽º·Î ÆÐŶÀ» ³»º¸³»°Ô µÈ´Ù. two¶ó´Â À̸§ÀÇ ÄÄÇ»ÅÍ¿¡¼­´Â ¹Ý´ë °úÁ¤À» °ÅÃÄÁÖ¸é µÈ´Ù.

# ifconfig plip1 two pointopoint one up
# route add one plip1

ÀÚ! ÀÌ·¸°Ô ÇÏ¸é µÎ´ë´Â TCP/IP ÇÁ·ÎÅäÄÝ·Î ¿¬°áµÈ °ÍÀÌ´Ù. ¼­·Î ÅÚ³Ý, FTP¸¦ Çغ¸ÀÚ. NFS ¼³Á¤À» ÇÒ ¼ö ÀÖ´Â »ç¶÷Àº ¼­·Î NFS ¸¶¿îÆ® ÇÒ ¼öµµ ÀÖ´Ù. ³Ý½ºÄÉÀÌÇÁµµ ¸¶Âù°¡ÁöÀÌ´Ù. µÎ ÂÊ¿¡¼­ ¿î¿µÇÏ´Â À¥ ¼­¹ö¿¡ ¿¬°á ÇÏ´Â °Íµµ °¡´ÉÇÏ´Ù.

$ telnet two
$ ftp two

PLIPÀ» ¸¶Ä¡°í ½ÍÀ» ¶§´Â ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù.

# ifconfig plip1 down

ÀÎÅÍÆäÀ̽º¸¦ È°¼ºÈ­½Ãų ¶§ ¸¶Áö¸·¿¡ upÀ̶ó°í ÇßµíÀÌ À̹ø¿¡´Â downÀÌ´Ù. ±×¸®°í ³ª¼­ rmmod ¸í·ÉÀ¸·Î ¸ðµâÀ» »©³½´Ù.

# rmmod plip

¸î °¡Áö ³²´Â ¹®Á¦µé

PLIPÀº °³¼±ÀÇ ¿©Áö°¡ Á¤¸»·Î ¸¹Àº ±â´ÉÀ̶ó°í º»´Ù. ÅÚ³Ý ¼¼¼Ç¿¡¼­´Â ´À³¥ ¼ö ¾øÀ¸³ª ¸¸¾à µÎ ÄÄÇ»ÅÍ °£ÀÇ FTP ¼¼¼ÇÀ¸·Î ¸î ¸Þ°¡¾¿ µÇ´Â ÆÄÀÏÀ» Àü¼ÛÇÒ ¶§´Â ºó¹øÇÑ ÀÎÅÍ·´Æ® ¹ß»ýÀ¸·Î ÀÎÇØ µÎ ½Ã½ºÅÛÀÇ ºÎÇÏ°¡ Á¤¸» ¸¹ÀÌ °É·Á¼­ µµÀúÈ÷ Á¤»óÀûÀÎ ÀÛ¾÷À» ÇÒ ¼ö ¾øÀ» Á¤µµ°¡ µÈ´Ù.

ÀÌ´Â ¾îÂî º¸¸é ´ç¿¬ÇÑÁöµµ ¸ð¸¥´Ù. À̼­³×Æ® Ä«µå¿Í °°Àº Çϵå¿þ¾îÀû ÀåÄ¡°¡ ¾Æ´Ï±â ¶§¹®À̸ç 2õ¿øÂ¥¸® ³×Æ®¿öÅ©ÀÇ ÇÑ°èÀϱî? PLIPÀÌ À¯¿ëÇÏ°Ô ¾²ÀÏ ¸¸ÇÑ È¯°æÀº ¾Æ¸¶µµ ÇÑ ´ëÀÇ µ¥½ºÅ©Å¾°ú ·¦Å¾ ÄÄÇ»ÅÍ »çÀÌÀÇ ¿¬°áÀÌ ¾Æ´Ñ°¡ »ý°¢ÇÑ´Ù.

2.2 IP ¸Å½ºÄ¿·¹À̵ù/¹æÈ­º®

¸®´ª½º Ä¿³ÎÀÇ ³×Æ®¿öÅ© ±â´É Áß ¹æÈ­º®(Firewall) ±â´ÉÀ» ¾Ë¾Æº¸ÀÚ. ÀÌ°ÍÀ» »ç¿ëÇÏ¸é ¾î¶² ÀÏÀÌ °¡´ÉÇÑÁö ¾Ë¾Æº¸°Ú´Ù.

»óȲ

Áö±Ý ÇöÀç ¿©·¯ºÐÀÇ »ç¹«½Ç¿¡´Â 4 ´ëÀÇ ÄÄÇ»ÅÍ°¡ ÀÖ´Ù. ±×¸®°í ±× ÄÄÇ»Å͵éÀº ¸ðµÎ À̼­³×Æ® Ä«µå·Î ¿¬°áµÇ¾î ¼­·Î ¿¬°á °¡´ÉÇÏ´Ù. ±×·±µ¥ »ç¹«½Ç¿¡ ÇÒ´çµÈ °øÀû IP ÁÖ¼Ò´Â ´Ü ÇÑ °³»ÓÀÌ´Ù. °¡Àå ¼º´ÉÀÌ ÁÁ°í ºñ½Ñ ÄÄÇ»ÅÍ¿¡ ¿ÜºÎ¿ÍÀÇ ¿¬°á¼±À» À̾ »ç¿ëÁßÀÌ´Ù. ÀÌ ÁÖ¼Ò¸¦ ¿¹¸¦ µé¾î 210.126.77.222¶ó°í ÇÏÀÚ. ³»ºÎ ³×Æ®¿öÅ©´Â 192.168.1.1ºÎÅÍ ½ÃÀÛÇؼ­ 192.168.1.4±îÁö »ç¿ëÇÏ¿© ±¸ÃàµÇ¾î ÀÖ´Ù. ´ç¿¬È÷ ÀÎÅÍ³Ý Áï, ¿ÜºÎ¿ÍÀÇ Á¢¼ÓÀº ¿À·ÎÁö ¿ÜºÎ¿Í Á÷Á¢ ¿¬°áµÇ¾î 210.126.77.222¶ó´Â ÁÖ¼Ò¸¦ °®´Â ÄÄÇ»ÅÍ¿¡¼­¸¸ °¡´ÉÇÏ´Ù. ¿À·ÎÁö ±× ÄÄÇ»ÅÍ¿¡¼­¸¸ ÅÚ³Ý, FTP, À¥ÀÌ °¡´ÉÇÑ °ÍÀÌ´Ù.

½Ã½ºÅÛ °ü¸®ÀÚ´Â ÀÌ·± »ý°¢À» Çغ»´Ù. °øÀûÀÎ ÁÖ¼Ò 210.126.77.222, ³»ºÎÀûÀÎ ÁÖ¼Ò 192.168.1.1À̶ó´Â ÁÖ¼Ò¸¦ °®´Â ÄÄÇ»ÅÍ »Ó ¾Æ´Ï¶ó ´Ü¼øÈ÷ ±× ÄÄÇ»ÅÍ¿Í ¿¬°áµÇ¾î ÀÖÀ» »ÓÀÎ 3 ´ëÀÇ ÄÄÇ»ÅÍ¿¡¼­µµ ÀÎÅͳÝÀÌ °¡´ÉÇÒ ¼ö´Â ¾øÀ»±î? Á÷Á¢ ´Ù¸¥ ÄÄÇ»ÅÍ¿¡¼­ ÅÚ³Ý, FTP¸¦ Çغ¸¾Ò´Ù. ÇÏÁö¸¸ ÀüÇô µÉ ±â¹Ì°¡ º¸ÀÌÁú ¾Ê´Â´Ù. ±× ÀÌÀ¯´Â ¹«¾ùÀϱî? 192.168.1.2¶ó´Â ³»ºÎ ÁÖ¼Ò¸¸À» °®´Â ÄÄÇ»ÅÍ¿¡¼­ ¿ÜºÎ·Î ÅÚ³ÝÀ» ÇÑ´Ù°í Ä¡ÀÚ. ¿ÜºÎ·Î ³ª°¡±â À§Çؼ­´Â °á±¹ ¿ÜºÎ¿Í ¿¬°áµÇ¾î ÀÖ´Â ÄÄÇ»Å͸¦ °ÔÀÌÆ®¿þÀÌ(gateway)·Î °æÀ¯ÇÏ¿© ³ª°¡°Ô µÈ´Ù. ±×¸®°í´Â ´Ù½Ã´Â µ¹¾Æ¿Ã ¼ö ¾ø´Ù. ¿Ö³ÄÇÏ¸é ¿ÜºÎ¼¼°è·Î ³ª°£ 192.168.1.2¶ó´Â ÁÖ¼ÒÀÇ ÆÐŶÀº ¿ÜºÎ ¼¼°è¿¡¼­ º¼ ¶§ ÀüÇô ¾Ë ¼ö ¾ø´Â ÁÖ¼ÒÀÌ¸ç µµ´ëü ¾î¶² °æ·Î¸¦ ÅëÇÏ¿© 192.168.1.2¿¡°Ô ÆÐŶÀ» µ¹·Áº¸³¾ ¼ö ÀÖ´ÂÁö ÇØ°áÇÒ ¼ö ¾ø±â ¶§¹®ÀÌ´Ù.

ÇØ°áÃ¥

ÇØ°áÃ¥Àº ÀÖ´Ù. ¿ÜºÎ¿Í ¿¬°áµÇ¾î 210.126.77.222¶ó´Â IP ÁÖ¼Ò¸¦ °¡Áø ÄÄÇ»ÅÍ¿¡¼­´Â ÆÐŶÀÌ ³ª°¡°í µé¾î¿À´Â °ÍÀÌ °¡´ÉÇϹǷΠ´Ù¸¥ 3 ´ëÀÇ ÄÄÇ»Å͵鿡¼­ ³ª°¡´Â ÆÐŶµéÀÌ ¸¶Ä¡ 210.126.77.222¿¡¼­ ³ª°£ °Íó·³ °¡Àå(Masquerade)½ÃÅ°¸é µÉ °ÍÀÌ´Ù. ±×·¯¸é ÀÏ´Ü ÆÐŶÀÌ ³ª°¬´Ù°¡ µ¹¾Æ¿Ã ¼ö Àֱ⠶§¹®ÀÌ´Ù. ¿©±â¼­ ÇÑ °¡Áö ¹®Á¦´Â ÀÌÁ¦ 4 ´ëÀÇ ÄÄÇ»ÅÍ ¸ðµÎ°¡ 210.126.77.222¶ó´Â ÁÖ¼Ò¸¦ °¡ÀåÇÏ°í ÆÐŶÀ» ³»º¸³½ °Í±îÁö´Â ÁÁÀ¸³ª µ¹¾Æ¿Â ÆÐŶ¿¡ ´ëÇÏ¿© ±×°ÍÀÌ ½ÇÁ¦·Î´Â 4 ´ë Áß ¾î´À ÄÄÇ»Å͸¦ À§ÇÑ °ÍÀÎÁö ±¸º°Çس¾ ÇÊ¿ä°¡ »ý±ä´Ù. ÀÌ°ÍÀ» ±¸º°ÇÏÁö ¸øÇÏ¸é °á±¹ º¸³»±â´Â º¸³»µµ ¹Þ´Â ÃøÀº ¿À·ÎÁö 210.126.77.222À̹ǷΠ¿ì¸®°¡ ¿øÇÏ´Â °á°ú´Â ¾òÁö ¸øÇÑ °ÍÀÌ´Ù.

ÀÌ¿¡ ´ëÇÑ ÇØ°áÃ¥À» ¸®´ª½º°¡ Á¦½ÃÇÏ°í ÀÖ´Ù. ¿ÜºÎ¿ÍÀÇ ¿¬°á Åë·Î¿¡ Á¸ÀçÇÏ´Â ÄÄÇ»ÅÍ¿¡ ¸®´ª½º°¡ ¼³Ä¡µÇ¾î ³»ºÎ ³×Æ®¿öÅ©¿¡¼­ ³ª°¡´Â ÆÐŶ¿¡ ´ëÇÏ¿© IP¸¦ °¡ÀåÇØÁÖ°í µé¾î¿À´Â ÆÐŶ¿¡ ´ëÇؼ­´Â ±×°ÍÀÌ ³»ºÎ ³×Æ®¿öÅ© ¾îµð·Î º¸³»Á®¾ß ÇÏ´ÂÁö ÆǺ°ÇÏ´Â °ÍÀÌ °¡´ÉÇÏ´Ù.

Áغñ

ÀÌ¹Ì ¸®´ª½º¸¦ Á¶±Ý ½áº» »ç¶÷µéÀº ´«Ä¡Ã«À» °ÍÀÌ´Ù. ¾î¶»°Ô º¸¸é ¸®´ª½ºÀÇ ¸ðµç ÀÏÀº Ä¿³Î ÄÄÆÄÀÏ¿¡¼­ ½ÃÀÛÇؼ­ Ä¿³Î ÄÄÆÄÀÏ·Î ³¡³ª´Â µí ÇÏ´Ù. ¿©·¯ºÐÀÌ ¿øÇÏ´Â ¾î¶² ÀÏÀÌ Àִ°¡? ±×·¯¸é Ä¿³Î ÄÄÆÄÀÏ¿¡¼­ ±× ´äÀ» ãÀ¸¶ó. Ä¿³Î ÄÄÆÄÀÏ Áß ³×Æ®¿öÅ© ¿É¼Ç(Network Options) Ç׸ñÀ» µé¾î°¡º¸ÀÚ.

[*] Network firewalls
[*] TCP/IP networking
[*] IP: forwarding/gatewaying
[*] IP: firewalling
[*] IP: masquerading (EXPERIMENTAL)
[*] IP: always defragment
[*] Dummy net driver support

ÀÌ°ÍÀº ³×Æ®¿öÅ©¿Í ¿ÜºÎÀÇ »çÀÌ¿¡¼­ ¹æÈ­º® ¿ªÇÒÀ» ÇØÁÖ´Â ¸®´ª½º ¸Ó½Å Çϳª¿¡¼­¸¸ ÇØÁÖ¸é µÈ´Ù.

½ÇÇà

Ä¿³Î 2.0.0 À̻󿡼­´Â ipfwadmÀ̶ó´Â À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÑ´Ù. ¹æÈ­º® ¿ªÇÒÀ» ÇÏ´Â ÄÄÇ»ÅÍ¿¡¼­ 192.168.1.0 ³×Æ®¿öÅ©¿¡ ´ëÇÏ¿© ¿ÜºÎ¿Í Â÷´ÜÀ» ½ÃÅ°¸é¼­ ³»ºÎ ³×Æ®¿öÅ©¿¡¼­ ³ª°¡´Â ÆÐŶÀ» ¸¶Ä¡ ¹æÈ­º® ÁÖ¼Ò 210.126.77.222¿¡¼­ ³ª°¡´Â °Íó·³ ¼Ó¿©ÁÖ°í ¶ÇÇÑ ¿ÜºÎ¿¡¼­ µé¾î¿À´Â ÆÐŶÀÌ ½ÇÁ¦ ³»ºÎ ³×Æ®¿öÅ© Áß ¾îµð·Î °¡¾ß ÇÏ´ÂÁö ÆǺ°ÇØÁÖ´Â ¿ªÇÒÀ» Çϱâ À§Çؼ­´Â ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù. ÀÌ À¯Æ¿¸®Æ¼´Â ½½·¢¿þ¾î, ·¹µåÇÞ, µ¥ºñ¾È ¹èÆ÷ÆÇ¿¡ ¸ðµÎ ±âº»ÀûÀ¸·Î µé¾îÀÖ´Ù.

# ipfwadm -F -p deny
# ipfwadm -F -a m -S 210.126.77.0/24 -D 0.0.0.0/0

¸®´ª½º ¹æÈ­º® ÄÄÇ»ÅÍ¿Í ¿¬°áµÈ ÄÄÇ»Å͵éÀº ¸ðµÎ ¹æÈ­º®À» °ÅÃļ­ ³ª°¡°Ô µÉ °ÍÀ̹ǷΠ°¢ÀÚÀÇ ±âº» °ÔÀÌÆ®¿þÀ̸¦ ¸®´ª½º ¸Ó½ÅÀ¸·Î ¼³Á¤Ç϶ó.

route add default gw 192.168.1.1

ÀÌ·¸°Ô ÇØÁÖ¸é 192.168.1.0 ³×Æ®¿öÅ©¿¡ ÀÖ´Â ¸ðµç ÄÄÇ»ÅÍ¿¡¼­ ÀÚÀ¯·Ó°Ô ÀÎÅÍ³Ý »ç¿ëÀÌ °¡´ÉÇÏ´Ù. ¿ÜºÎ¿¡¼­ º¼ ¶§´Â 192.168.1.0À̶ó´Â ³×Æ®¿öÅ©´Â º¸ÀÌÁö ¾ÊÀ¸¸ç ¿À·ÎÁö 210.126.77.222¶ó´Â ÁÖ¼Ò¸¦ °®´Â ÇÑ ´ëÀÇ ÄÄÇ»Å͸¸ º¸ÀÏ »ÓÀÌ´Ù. ¹°·Ð ¸ðµç ÆÐŶÀÌ ¹æÈ­º®À» °ÅÃÄ ³ª°¡¹Ç·Î ¹æÈ­º®¿¡ °É¸®´Â ºÎÇÏ´Â ÀÌ·ç ¸»ÇÒ ¼ö ¾ø´Ù.

ÁÖÀÇÇÒ °Í Çϳª

-rw-r--r-- 1 root root 3012 Feb 20
22:03 ip_masq_ftp.o
-rw-r--r-- 1 root root 2640 Feb 20
22:03 ip_masq_irc.o
-rw-r--r-- 1 root root 2572 Feb 20
22:03 ip_masq_raudio.o
modprobe ip_masq_ftp

¸ðµâ ÄÄÆÄÀÏÀ» ÇÏ°í ³ª¼­ /lib/modules/<Ä¿³Î¹öÀü>/ipv4 µð·ºÅ͸®¿¡ °¡º¸¸é À§¿Í °°Àº ¸ðµâÀ» ¹ß°ßÇÒ ¼ö ÀÖ´Ù. óÀ½ºÎÅÍ °¢°¢ FTP, IRC, ¸®¾ó ¿Àµð¿À ±â´É¿¡ ´ëÇÑ ¸Å½ºÄ¿·¹À̵ùÀ» À§ÇÑ º°µµÀÇ ¸ðµâÀÌ´Ù. ³»ºÎ ³×Æ®¿öÅ©¿¡¼­ FTP¸¦ Á¦´ë·Î Çϱâ À§Çؼ­´Â ¹Ù·Î ip_masq_ftp ¸ðµâÀ» ¹æÈ­º® ¸®´ª½º ¸Ó½Å¿¡ ÀûÀçÇØÁÖ¾î¾ß ÇÑ´Ù. IRC, ¸®¾ó ¿Àµð¿À ¶ÇÇÑ ¸¶Âù°¡ÁöÀÌ´Ù.

2.3 MS Windows box¿Í ÀÚ¿ø °øÀ¯ - Samba

ÀÏ¹Ý »ç¿ëÀÚ¶ó¸é ³Ý½ºÄÉÀÌÇÁ³ª ¸ÞÀÏ Àбâ ÇÁ·Î±×·¥ µîÀÇ ¾ÖÇø®ÄÉÀÌ¼Ç »ç¿ë¹ýÀ» ¾à°£ÀÇ Áß±Þ »ç¿ëÀÚ¶ó¸é Àڱ⠽º½º·Î TCP/IP Á¢¼Ó ¼³Á¤À» ÀÍÇô¾ß ÇÑ´Ù. °ü¸®ÀÚ ¼öÁØÀÇ °í±Þ »ç¿ëÀÚ¶ó¸é ¿¬°áµÈ ¸ðµç ÄÄÇ»ÅÍ °£ÀÇ ¿øÈ°ÇÑ Á¤º¸ ±³ÅëÀ» À§ÇÏ¿© ÀûÀýÇÑ ¶ó¿ìÆÃ(Routing) ¼³Á¤, °¢Á¾ ¼­¹ö ¼³Á¤À» ÀÍÇô¾ß ÇÒ °ÍÀÌ´Ù. ÀÌ Àå¿¡¼­ ´Ù·ç´Â ³»¿ëÀÇ ´ë»óÀº ¹Ù·Î Áß°í±Þ »ç¿ëÀÚ¸¦ À§ÇÑ ³»¿ëÀÓÀ» ¹àÇôµÐ´Ù.

ÀÎÅͳ×Æ®¿öÅ·

¿©·¯ºÐµµ ¸ðµÎ ¸öÀ¸·Î ´À³¥ ¼ö ÀÖÀ» ¸¸Å­ Áö±Ý ÄÄÇ»ÅÍ´Â º»°ÝÀûÀÎ ³×Æ®¿öÅ·ÀÇ ½Ã´ë·Î µ¹ÀÔÇÑ »óÅÂÀÌ´Ù. ¸î ³â Àü¸¸ Çصµ °³Àοë ÄÄÇ»ÅÍÀÇ ¿¬°áÀº Àá½Ã ÆÄÀÏÀ» ÁÖ°í¹Þ´Âµ¥ »ç¿ëÇϱâ À§ÇÏ¿© ÀüÈ­¼±À» ÀÌ¿ëÇÑ ¸ðµ© ¿¬°á¸¸ÀÌ ÀüºÎÀÎ µí ¾Ë°í ÀÖ¾ú°í Àü¿ëȸ¼±¿¡ ÀÇÇÑ Ç×»óÀûÀÎ ¿¬°áÀ̶õ ÀϹÝÀεéÀÌ ¹üÁ¢Çϱâ Èûµç °í°¡ÀÇ À¯´Ð½º/¸ÞÀÎÇÁ·¹ÀÓ ½Ã½ºÅÛ¿¡¼­³ª º¼ ¼ö ÀÖ´Â °ÍÀ̶ó°í »ý°¢ÇÑ ÀûÀÌ ÀÖ¾ú´Ù´Â °ÍÀ» ±â¾ïÇÒ °ÍÀÌ´Ù. ÀÌÁ¦´Â Çб³³ª »ç¹«½Ç¿¡¼­ À̼­³×Æ® ³×Æ®¿öÅ© Ä«µå¸¦ ÅëÇØ ÇÑ ¹æ ³»ºÎ ¶Ç´Â ÇÑ °Ç¹° ³»ºÎÀÇ ¸ðµç ÄÄÇ»Å͵éÀÌ ¿¬°áµÇ¾î ÀÖ´Â °æ¿ì°¡ ¸¹°í ¿©°ÇÀÌ µÇ´Â °æ¿ì¿¡´Â ISP·ÎºÎÅÍ Àü¿ë ÀÎÅÍ³Ý È¸¼±À» ²ø¾î¿Í ÀÎÅͳÝÀ̶ó ´Â ¸Á¸Á´ëÇØ¿Í ¿¬°áÇÏ´Â °æ¿ìµµ Á¾Á¾ º¼ ¼ö ÀÖ´Ù.

ÀÌÁ¦ ÄÄÇ»Å͸¦ ¹è¿î´Ù´Â °ÍÀº ¿¹Àüó·³ Ã¥ Çϳª ³õ°í ¸í·É¾î¸¦ ÀÍÈ÷°í ÇÁ·Î±×·¥ ¸î °³¸¦ ÀÍÈ÷´Â °Í¿¡¼­ ±×Ä¡Áö ¾Ê°í ³×Æ®¿öÅ©¶ó´Â Çʼö °ú¸ñ±îÁö Æ÷°ýÇÏ°Ô µÇ¾ú´Ù.

³×Æ®¿öÅ©´Â µÑ ÀÌ»óÀÇ Á¸À縦 ÀüÁ¦·Î ÇÑ´Ù. µû¶ó¼­ Çϳª Áß½ÉÀÇ »ç°í¿¡¼­ Å»ÇÇÇØ¾ß ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù. °¢ ³ª¶ó »ç¶÷µéÀÌ Àڱ⠳ª¶ó¿¡¼­¸¸ »ê´Ù¸é ±×¸®°í ÃæºÐÈ÷ ÀÚ±ÞÀÚÁ·ÇÒ ¼ö ÀÖ°í ´Ù¸¥ ³ª¶ó¿Í ±³¿ªÇÒ ÇÊ¿ä ¾øÀÌ ÃæºÐÈ÷ Àß »ì ¼ö ÀÖ´Ù¸é ±¹¾î ÀÌ¿ÜÀÇ ¿Ü±¹¾î °ú¸ñÀº ÇÊ¿äÄ¡ ¾ÊÀ» °ÍÀÌ´Ù. ¿À·ÎÁö Àڱ⠳ª¶ó ¾ð¾î¸¸ Àß ÇÏ¸é »ýÈ°¿¡ ºÒÆíÇÔÀÌ ¾ø´Ù. ÇÏÁö¸¸ ÀÏÀ̶õ °Ô ½ÇÁ¦ ±×·¸Áö ¾Ê´Ù. ¾ö¿¬È÷ ±¹°æ¼± ³Ê¸Ó ÀڱⰡ »ç¿ëÇÏ´Â ¾ð¾î¿Í´Â ÀüÇô ´Ù¸¥ ¾ð¾î¸¦ »ç¿ëÇÏ´Â »ç¶÷µéÀÌ ÀÖ°í ±×µéÀº ¿ì¸®¿Í ´Ù¸¥ ÀÚ¿¬ ȯ°æ, ¹®È­Àû ȯ°æ¿¡¼­ »ì°í ÀÖ°í ¿ì¸®¿¡°Ô ¾ø´Â °ÍÀ» °¡Áö°í ÀÖ´Ù.

¿øÇÏ´Â ¹«¾ùÀ» ¾ò±â À§ÇØ ±× ³ª¶ó·Î ³Ñ¾î°¬´Ù°í ÇÏÀÚ. »ó½ÄÀ» °¡Áø »ç¶÷À̶ó¸é ±× ³ª¶ó¿¡ °¡¼­´Â ´ç¿¬È÷ ±× ³ª¶ó ¾ð¾î¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù. ±×µéÀÌ ¿©·¯ºÐÀÇ ¾ð¾î¸¦ »ç¿ëÇϸ®¶ó°í »ý°¢ÇÒ ¼ö Àִ°¡? ¶Ç´Â µÎ ³ª¶ó¿¡¼­ °øÅëÀûÀ¸·Î »ç¿ëµÇ´Â ¾ð¾î¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù. ¹Ù·Î ³×Æ®¿öÅ·ÀÇ ¼¼°è°¡ ±×·¯ÇÏ´Ù. ÀϹÝÀûÀ¸·Î °¢ ¿î¿µ ü°èµéÀº ÀڽŸ¸ÀÇ ¾à¼Óü°è¸¦ °¡Áö°í ÀÖ´Ù. ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® »çÀÇ Á¦Ç°µéÀÎ À©µµ Æ÷ ¿öÅ©±×·ì 3.11, À©µµ 95, À©µµ NT´Â ±×µé ¼­·Î °£ÀÇ ¾à¼Óü°è¸¦ °¡Áö°í À־ ¿øÇÏ´Â ¸Þ½ÃÁö¸¦ ÁÖ°í¹ÞÀ» ¼ö ÀÖµµ·Ï °í¾ÈµÇ¾î ÀÖ´Ù. ±âÁ¸ÀÇ ·£ ȯ°æ¿¡¼­ ¸¹ÀÌ »ç¿ëµÇ°í ÀÖ´Â ³ëº§ ³×Æ®¿þ¾î´Â ¶ÇÇÑ ±×µé Á¦Ç°¿¡¼­¸¸ »ç¿ëµÇ´Â °íÀ¯ÀÇ ¾à¼Óü°è¸¦ °¡Áö°í ÀÖ´Ù. ÀÌ·¸°Ô ȸ»ç¸¶´Ù ¼­·Î ´Ù¸¥ ¾à¼Óü°è¸¦ °¡Áö°í ÀÖ´Ù. ±× ȸ»çµé »çÀÌ¿¡ Ưº°ÇÑ ³ë·ÂÀÌ ¾ø´Â ÇÑ ±× ¾à¼Óü°è´Â ¼­·Î °°À»¸® ¾ø°í ºñ½ÁÇÏÁöµµ ¾ÊÀ» °ÍÀÌ´Ù. ¾à¼Óü°è°¡ ¼­·Î ´Ù¸¥ ÄÄÇ»Å͸¦ ¿¬°áÇÏ¿© ¿øÇÏ´Â ¸Þ½ÃÁö¸¦ ÁÖ°í¹Þ´Â´Ù´Â °Íµµ ¾îºÒ¼º¼³ÀÌ´Ù.

¿©·¯ºÐÀÇ ±Í¿¡ ¹ÚÈ÷µµ·Ï µè°í ÀÖ´Â TCP/IP´Â ±× ¸¹Àº ¾à¼Óü°è Áß ÇϳªÀÌ´Ù. ¾à¼Óü°èÀÇ ¹üÀ§¿Í ¼º°ÝÀÌ ´Ù¸£±ä ÇÏÁö¸¸ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® »ç¿¡¼­ »ç¿ëÇÏ°í ÀÖ´Â ¾à¼Óü°è, ÇÁ·ÎÅäÄÝÀº NetBIOS ¶Ç´Â ·£ ¸Å´ÏÀú(LanManager)¶ó°íµµ ºÒ¸®´Â SMB(Session Message Block)ÀÌ´Ù. ³ëº§ »ç¿¡ ÀÇÇØ »ç¿ëµÇ°í ÀÖ´Â ±×µé¸¸ÀÇ ÇÁ·ÎÅäÄÝÀº NCP(Network Control Protocol)À̶ó°í ºÒ¸°´Ù. ¾ÖÇà »ç¿¡¼­´Â ¾ÖÇÃÅäÅ©(AppleTalk)¶ó´Â ÀڽŸ¸ÀÇ ¾à¼Óü°è¸¦ °®´Â´Ù(¿©·¯ºÐÀÌ ÀÚ½ÅÀ» Áß±Þ »ç¿ëÀÚ¶ó°í »ý°¢Çϱ⠿øÇÑ´Ù¸é ½ÇÁ¦·Î ¾²Áö´Â ¾Ê´Â´Ù ÇÒÁö¶óµµ ÀÌ ±âȸ¿¡ ÀÌ·± ÇÁ·ÎÅäÄÝÀÌ ÀÖ´Ù´Â »ç½Ç¸¸Àº ±â¾ïÇصα⠹ٶõ´Ù). ½ã¸¶ÀÌÅ©·Î¾¾½ºÅÛÁî »ç¿¡¼­ óÀ½ °³¹ßµÈ ³×Æ®¿öÅ© ÆÄÀÏ ½Ã½ºÅÛÀÎ NFS(Network File System)´Â Áö±Ý °ÅÀÇ ¸ðµç À¯´Ð½º ½Ã½ºÅÛ¿¡¼­ ä¿ëµÇ°í ÀÖ´Â ÇÁ·ÎÅäÄÝÀÌ´Ù. ´ÜÁö TCP/IP´Â ¹°·Ð À¯´Ð½º ±â¹ÝÀÇ ÄÄÇ»Å͵鿡 ÀÇÇؼ­ »ç¿ëµÇ´Â °³º°ÀûÀÎ ÇÁ·ÎÅäÄÝÀ̱ä ÇßÁö¸¸ Á» ´õ ±¤¹üÀ§ÇÏ°Ô »ç¿ëµÉ ¼ö ÀÖµµ·Ï °í¾ÈµÇ¾ú°í óÀ½ºÎÅÍ ±×·± »ý°¢À» ¿°µÎ¿¡ µÎ°í ¸¸µé¾îÁø °ÍÀ̸ç Áö±Ý ÇöÀç ¾î¶² ÄÄÇ»Å͸¦ ¸··ÐÇÏ°í ÀÎÅͳÝÀ̶ó°í ÇÏ´Â Àü¼¼°èÀû ³×Æ®¿öÅ©¿¡ ¿¬°áÇÏ°íÀÚ ÇÏ´Â ÄÄÇ»ÅͶó¸é ´ç¿¬È÷ µû¶ó¾ß ÇÒ Ç¥ÁØÀÌ µÇ¾î ÀÖ´Ù´Â Á¡¿¡¼­ ´Ù¸¥ ÇÁ·ÎÅäÄÝ°ú ±× Á߿伺À» ´Þ¸® ÇÒ »ÓÀÌ´Ù.

ÇÑ ¹ø ÂëÀº ÀÌ·± »ý°¢À» °®°Ô µÈ´Ù. ¿Ö ÀÌ·¸°Ô ¸¹Àº ÇÁ·ÎÅäÄÝÀÌ Á¸ÀçÇÏ´Â °ÍÀϱî? ´ë´äÀº °£´ÜÇÏ´Ù. »ç¶÷µéÀÇ »ý°¢¿¡ ¸¸ÀåÀÏÄ¡¶õ ÀÖÀ» ¼ö ¾ø±â ¶§¹®ÀÌ´Ù. ¿ì¼± ±â¼úÀûÀÎ ¸é¿¡ À־ ±âÁ¸ÀÇ ¾î¶² ÇÁ·ÎÅäÄÝ¿¡ ºÎÁ·ÇÑ Á¡ÀÌ ÀÖ´Ù¸é ±×¸®°í ±×°ÍÀ» ´Ü¼øÈ÷ °³¼±ÇÏ´Â °Í¸¸À¸·Î´Â ÇØ°áÇÒ ¼ö ¾ø´Ù°í ÆÇ´ÜÇÒ ¶§´Â ÀüÇô ´Ù¸¥ ±âÃÊ À§¿¡ °Ç¼³ÇÏ·Á°í Çϱ⠶§¹®ÀÌ´Ù. ÀÌ·¸°Ô Çؼ­ ¼­·Î °³³äµµ ¿ÏÀüÈ÷ ´Ù¸£°í ÀüÇô ȣȯÀÇ ¿©Áö°¡ ¾ø´Â ÇÁ·ÎÅäÄݵéÀÌ »ý°Ü³­´Ù. µÎ ¹ø° ÀÌÀ¯µµ ¶ÇÇÑ Áß¿äÇÑ ÀÌÀ¯·Î¼­ °¢ ȸ»çÀÇ Á¤Ä¡ÀûÀÎ ÀÔÀåÀ» µé ¼ö ÀÖ´Ù. öÀúÇÏ°Ô ÀÚ±â °í°´ÀÇ ¹ß¸ñÀ» ¹­¾îµÎ±â À§ÇÑ ¹æÆíÀ¸·Î ÇöÀç ÃæºÐÈ÷ ÁÁÀº ÇÁ·ÎÅäÄÝÀÌ ÀÖÀ½¿¡µµ ºÒ±¸ÇÏ°í ÀϺη¯¶óµµ ÀüÇô ´Ù¸¥ ÇÁ·ÎÅäÄÝÀ» °í¾ÈÇÏ´Â °ÍÀÌ´Ù. ¾µ¸¸ÇÑ ÇÁ·ÎÅäÄÝÀÌ À־ »ó´ë¹æ ȸ»çÀÇ ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÑ´Ù¸é °æÀï »ó´ë¸¦ ÀÎÁ¤ÇÏ°Ô µÇ´Â °á°úÀ̹ǷΠÀϺη¯¶óµµ ȣȯµÇÁö ¾Ê´Â ÀڽŸ¸ÀÇ ÇÁ·ÎÅäÄÝÀ» ¸¸µç´Ù. ÇÁ·ÎÅäÄÝÀ̶õ ÇϳªÀÇ ¾ð¾îÀÌ°í ÀÚ½ÅÀÇ Á¤Ã¼¼ºÀ» È®¸³ÇØÁÖ´Â °ÍÀ̹ǷΠ´õ¿í ´õ Áß¿äÇÏ°Ô ´À²¸Áø´Ù.

°¢ ȸ»çµéÀº Á¤Ä¡ÀûÀÎ ÀÌÀ¯·Î ÀÎÇØ °íÁý½º·´°Ô ´Ù¸¥ ȸ»ç¿Í´Â ȣȯµÇÁö ¾Ê´Â ÀڽŸ¸ÀÇ ÇÁ·ÎÅäÄÝÀ» °®À¸·Á ÇÑ´Ù. ¸ðµç ȸ»çµéÀº ¸¶À½¼ÓÀ¸·Î ÀÚ½ÅÀÇ ÇÁ·ÎÅäÄÝ ÀÌ Àü¼¼°èÀû Ç¥ÁØÀÌ µÇ±æ ¹Ù¶ö °ÍÀÌ´Ù. ÀÌ·± Àǹ̿¡¼­ TCP/IP¸¦ Á¦¿ÜÇÑ ´Ù¸¥ ÇÁ·ÎÅäÄÝÀº ¼­·Î °£ÀÇ ¿ì¿­À» °¡¸®±â Èûµé´Ù. ±â¼úÀû ÀÌÀ¯º¸´Ù´Â Á¤Ä¡ÀûÀÎ ÀÌÀ¯¿¡¼­ ´Ù¸£°Ô ¸¸µç °ÍÀÏ »ÓÀ̱⠶§¹®ÀÌ´Ù. ³ëº§ »çÀÇ NCP´Â ³ëº§ ³×Æ®¿þ¾î¿¡ °¡Àå ¾Ë¸ÂÀº ÇÁ·ÎÅäÄÝÀÏ °ÍÀÌ¸ç ¾ÖÇà »çÀÇ ¾ÖÇÃÅäÅ©´Â ´ç¿¬È÷ ÀÚ½ÅÀÇ ¿î¿µÃ¼°èÀÎ ½Ã½ºÅÛ 7¿¡ ¾Ë¸ÂÀº °ÍÀÏ Å×¸ç ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® »çÀÇ SMB´Â ¿À·ÎÁö À©µµ Á¦Ç°±º¿¡¸¸ ÇØ´çµÇ´Â ¾ê±âÀÌ´Ù. ±×µéÀÌ ÀÚ½ÅÀÇ ÇÁ·ÎÅäÄÝÀ» °íÁý ÇÏ´Â ÀÌÀ¯´Â ¿©·¯ºÐÀÌ ±Ý¹æ ÀÌÇØÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÇÑ »ç¹«½Ç¿¡¼­ ³ëº§ »ç Á¦Ç°¸¸ ¾²µçÁö ¾Æ´Ï¸é ¾ÖÇà »ç, ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á¦Ç°¸¸ ¾²¶ó°í ¿ì¸®¿¡°Ô °­¿äÇÏ°í ÀÖ´Ù.

¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á¦Ç°°ú ´ëÈ­Çϱâ

À̹ø¿¡ ´Ù·ç°íÀÚ ÇÏ´Â ³»¿ëÀº ¹Ù·Î SMB¶ó´Â ÀÚüÀû ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÏ´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á¦Ç°°úÀÇ Á¤º¸ °øÀ¯ ¹æ¹ýÀÌ´Ù. Áö±Ý ÇöÀç °³Àοë ÄÄÇ»ÅÍ¿¡¼­ °¡Àå ¸¹ÀÌ »ç¿ëµÇ°í ÀÖ´Â ¿î¿µÃ¼°è Á¦Ç°Àº À©µµ 3.1, À©µµ 95 µîÀÇ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á¦Ç°ÀÌ´Ù. ¡®»ç¿ëÀÚ ÆíÀ̼º¡¯ÀÌ ¸¶Ä¡ ÀڽŸ¸ÀÇ Æ®·¹À̵帶ũÀÎ ¾ç ¡®ºñÁÖ¾ó, ½±°Ô½±°Ô¡¯¸¦ ¿ÜÄ¡°í ÀÖ´Â ±×µé Á¦Ç°Àº ±× ¼Ó»çÁ¤ÀÌ ¾î¶°ÇÏµç °£¿¡ °³Àοë ÄÄÇ»ÅÍ µ¥½ºÅ©Å¾ ½ÃÀå¿¡¼­´Â µ¶º¸ÀûÀÎ À§Ä¡¸¦ Â÷ÁöÇÏ°í ÀÖÀ½ÀÌ ºÐ¸íÇÏ´Ù.

¿©·¯ºÐÀÇ Çб³, »ç¹«½Ç¿¡´Â ÀÌ¹Ì ±×·¸°Ô ¸¹Àº ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á¦Ç°µé·Î ¿î¿µµÇ´Â ÄÄÇ»Å͵éÀÌ ÀÖÀ» °ÍÀÌ´Ù. ±× °÷¿¡ ¸®´ª½º°¡ µé¾î¼­°í ÀÖ´Ù. ¿©·¯ºÐµµ ¾Ë´Ù½ÃÇÇ ¸®´ª½º´Â ¸®´ª½º ³ª¸§ÀÇ ÀåÁ¡°ú ¾àÁ¡À» °¡Áö°í ÀÖ´Ù. ¸¹Àº »ç¶÷µéÀº ¸®´ª½º¿¡°Ô¼­ ¸®´ª½º¸¸ÀÇ ÃæºÐÇÑ ÀåÁ¡À» »ì¸®°í ±âÁ¸ÀÇ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á¦Ç°¿¡¼­´Â ±×µé¸¸ÀÇ ÀåÁ¡À» »ì¸®±æ ¿øÇÑ´Ù. µÎ °¡Áö¸¦ ¼­·Î ´Ù¸¥ ¿ëµµ·Î »ç¿ëÇÏ°í Àִµ¥ °£È¤ ¿ì¸®´Â ÆÇÀÌÇÏ°Ô ´Ù¸¥ ±× µÎ ½Ã½ºÅÛ ÀÚ¿øÀ» ¼­·Î °øÀ¯ÇÏ¿© »ç¿ëÇÏ°íÀÚ ÇÒ ¶§°¡ ÀÖ´Ù. ÀÌ·² ¶§´Â ¾î¶»°Ô ÇØ¾ß Çϴ°¡?

¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á¦Ç° Áß ¸®´ª½º¿ÍÀÇ °øÀ¯¸¦ ¸ñÇ¥·Î ÇÏ´Â Á¦Ç°Àº Çϳªµµ ¾ø´Ù. ±×µé¿¡°Ô¼­ ±×·± ÀÏÀ» ±â´ëÇÒ ÇÊ¿ä´Â ¾ø´Ù. ±×µéÀÇ °ü½É¹Û¿¡ ÀÖ´Â ÀÏÀ̸ç Á¶±ÝÀÇ °ü½ÉÀÌ ÀÖ´Ù ÇÏ´õ¶óµµ Á¤Ä¡ÀûÀÎ ÀÔÀåÀ¸·Î ÀÎÇØ ±×·± ÀÏÀº »ó´ç ±â°£ ÀϾÁö ¾ÊÀ» °ÍÀÌ ºÐ¸íÇÏ´Ù. ´ÙÇàÈ÷µµ ¸®´ª½º/À¯´Ð½º ¾È¿¡¼­ ÇØ°áÀÇ ³ë·ÂÀÌ ÀÖ¾î¿Ô°í ±× Áß Çϳª°¡ ¹Ù·Î »ï¹Ù(Samba)¶ó´Â ÆÐÅ°ÁöÀÌ´Ù.

°³³äÀº °£´ÜÇÏ´Ù. »ï¹Ù¶ó´Â ÆÐÅ°Áö´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á¦Ç°ÀÌ »ç¿ëÇÏ°í ÀÖ´Â SMB¶ó´Â ÇÁ·ÎÅäÄÝÀ» ÀÌÇØÇÏ°í ÀÖÀ¸¸ç ¹Ù·Î SMB¶ó´Â ¾ð¾î·Î À̾߱âÇÒ ÁÙ ¾Æ´Â ÇÁ·Î±×·¥µéÀÇ ¸ðÀ½ÀÌ´Ù. ÀûÀýÇÏ°Ô µÎ ÄÄÇ»ÅÍ°¡ ¿¬°áµÇ°í(ÀϹÝÀûÀ¸·Î À̼­³×Æ® ¿¬°á) ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á¦Ç°¿¡¼­ ¸®´ª½º ÂÊÀ¸·Î ¶Ç´Â ±× ¹Ý´ë·Î ¾î¶² ¸Þ½ÃÁö¸¦ Àü´ÞÇÒ ¶§ ¸®´ª½º ÂÊ¿¡ »ï¹Ù¸¦ ¼³Ä¡ÇØµÎ¸é ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á¦Ç° ÀÔÀå¿¡¼­´Â ÀÚ½ÅÀÌ ´ëÈ­ÇÏ°í ÀÖ´Â »ó´ë°¡ ÀÚ»ç Á¦Ç°°ú´Â ÀüÇô »ó°ü¾ø´Â ¸®´ª½º¶ó´Â »ç½ÇÁ¶Â÷ ¾Ë ¸® ¾ø´Ù. ¿µ¾î¸¦ ¾²´Â ³ª¶ó¿¡ °¡¼­ À¯Ã¢ÇÏ°Ô ¿µ¾î¸¦ »ç¿ëÇÏ´Â °Í°ú °°´Ù. ÁÖÀÇÇÒ °ÍÀº ¿©·¯ºÐÀÇ À©µµ Á¦Ç°¿¡ TCP/IP ÇÁ·ÎÅäÄÝ Áö¿øÀÌ µÇ¾î ÀÖ¾î¾ß ÇÑ´Ù´Â Á¡À» µé ¼ö ÀÖ´Ù.

´ÜµµÁ÷ÀÔÀûÀ¸·Î »ï¹Ù¸¦ »ç¿ëÇÏ¸ç ´ÙÀ½°ú °°Àº ÀÏÀÌ °¡´ÉÇÏ´Ù.

  1. ¸®´ª½º µå¶óÀ̺긦 À©µµ ¸Ó½Å°ú °øÀ¯ÇÑ´Ù.
  2. À©µµ µå¶óÀ̺긦 ¸®´ª½º ¸Ó½Å°ú °øÀ¯ÇÑ´Ù.
  3. ¸®´ª½º ÇÁ¸°Å͸¦ À©µµ ¸Ó½Å°ú °øÀ¯ÇÑ´Ù.
  4. À©µµ ÇÁ¸°Å͸¦ ¸®´ª½º ¸Ó½Å°ú °øÀ¯ÇÑ´Ù.

»ï¹Ù¸¦ ±¸ÇÒ ¼ö ÀÖ´Â ¹æ¹ý

»ï¹Ù´Â ´ÙÀ½ FTP »çÀÌÆ®¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù. nimbus.anu.edu.au/pub/tridge/samba/ »ï¹Ù´Â ÇöÀç ¸®´ª½º »ç¿ëÀڵ鿡°Ô ÀÖ¾î Áß¿äÇÑ ÆÐÅ°Áö·Î ÀνĵǾî Àֱ⠶§¹®¿¡ ·¹µåÇÞ, µ¥ºñ¾ÈÀ» Æ÷ÇÔÇÑ Áß¿ä ¹èÆ÷ÆÇ¿¡¼­ ±âº»ÀûÀÎ ÆÐÅ°Áö·Î Á¦°øÇÏ°í ÀÖ´Ù. ¼Ò½ºÀÇ °æ¿ì¿¡´Â ¸®´ª½ºÀÇ ¸ðµç ¼Ò½ºµéÀÌ ±×·¯Çϵí README¸¦ ²Ä²ÄÇÏ°Ô Àо¸é µÈ´Ù. °í½ºÆ®½ºÅ©¸³Æ® ÄÄÆÄÀÏó·³ ¾î·Æ°Å³ª ÇÏÁö´Â ¾Ê´Ù. ÆÐÅ°Áö·Î Á¦°øµÇ´Â °æ¿ì¿¡´Â °¢ ¹èÆ÷ÆÇÀÇ ÆÐŰ¡ ½Ã½ºÅÛ¿¡ ¸Â´Â ¸í·ÉÀ» »ç¿ëÇÏ¿© ¼³Ä¡Çϵµ·Ï ÇÑ´Ù.

»ï¹Ù ÆÐÅ°ÁöÀÇ ±¸¼º¿ä¼Ò

»ï¹Ù ÆÐÅ°Áö´Â »ï¹Ù µ¥¸ó°ú »ï¹Ù Ŭ¶óÀ̾ðÆ®·Î ÀÌ·ïÁ® ÀÖ´Ù. ¿ì¼± »ï¹Ù µ¥¸óÀº ´ÙÀ½°ú °°´Ù.

smbd (SMB µ¥¸ó)
nmbd (Ŭ¶óÀ̾ðÆ®¿¡ ´ëÇÑ NetBIOS ³×ÀÓ¼­¹ö)

À§ µÎ°³ÀÇ ÆÄÀÏÀº ÀϹÝÀûÀ¸·Î /usr/sbin µð·ºÅ͸®¿¡ À§Ä¡ÇÏ¸ç ½Ã½ºÅÛ ½Ãµ¿ ½ºÅ©¸³Æ®(/etc/rc.d ¾Æ·¡) ¶Ç´Â inetd ¼öÆÛ ¼­¹ö¿¡ ÀÇÇØ ½ÇÇàµÈ´Ù. ±× ¿ÜÀÇ »ï¹Ù ¹ÙÀ̳ʸ® ÆÄÀϵ鿡 ´ëÇؼ­ ¾Ë¾Æº¸ÀÚ.

smbclinet (À¯´Ð½º¿ë SMB Ŭ¶óÀ̾ðÆ®)
smbprint (SMB È£½ºÆ®¿¡ ¿¬°áµÈ ÇÁ¸°ÅÍ·Î Ãâ·ÂÇϱâ À§ÇÑ ½ºÅ©¸³Æ®)
smbstatus (ÇöÀç ·ÎÄà SMB È£½ºÆ®ÀÇ ¿¬°á »óȲ Ãâ·Â)
smbrun (SMB È£½ºÆ®¿¡¼­ ÇÁ·Î±×·¥À» ¼öÇàÇϵµ·Ï ÇØÁÖ´Â ½ºÅ©¸³Æ®)

ÀϹÝÀûÀ¸·Î /usr/bin¿¡ À§Ä¡ÇÏ¸ç ±× ¿Ü¿¡ ¸î °¡Áö ÇÁ·Î±×·¥À̳ª ½ºÅ©¸³Æ®°¡ ´õ ÀÖ´Â °æ¿ìµµ ÀÖ´Ù.

»ï¹Ù Àüü ¼³Á¤ ÆÄÀÏÀÇ À§Ä¡´Â /etc µð·ºÅ͸®À̸ç ÆÄÀϸíÀº smb.confÀÌ´Ù. »ç½Ç ¿©·¯ºÐÀÌ »ï¹Ù¸¦ Á¦´ë·Î »ç¿ëÇÒ ¼ö Àִ°¡ ¾ø´Â°¡´Â ¹Ù·Î smb.conf¶ó´Â ÆÄÀÏ À» ¾î¶»°Ô Àß ÆíÁýÇϴ°¡¿¡ ´Þ·ÁÀÖ´Ù Çصµ °ú¾ðÀÌ ¾Æ´Ï´Ù.

»ï¹Ù ¼³Á¤ ÆÄÀÏ smb.conf µé¿©´Ùº¸±â

¸®´ª½º¿¡¼­ »ï¹Ù ¼³Á¤Àº /etc/smb.conf¶ó´Â ÆÄÀÏ Çϳª¿¡¼­ ÀÌ·ïÁø´Ù. ÀÌ ÆÄÀÏ¿¡ ¿ÜºÎ ¼¼°è¿Í ¾î¶² ÀÚ¿øÀ» °øÀ¯ÇÒ °ÍÀÎÁö ±×¸®°í °øÀ¯ÇÏ´Â ÀÚ¿ø¿¡ ´ëÇؼ­ ¾î¶°ÇÑ Á¦ÇÑÀ» °¡ÇÒ °ÍÀÎÁö Á¤ÀÇÇÑ´Ù. ¼¼ºÎ »çÇ׿¡ óÀ½ºÎÅÍ ÁýÂøÇÒ ÇÊ¿ä´Â ¾ø´Ù. Áß¿äÇÑ ¼³Á¤À» ¸ÕÀú ¸¶Ä¡°í õõÈ÷ ¼¼ºÎÀûÀ¸·Î ³»¿ëÀ¸·Î µé¾î°¡´Â ÀÚ¼¼°¡ ÇÊ¿äÇÏ´Ù. »ìÆ캸¸é ¾Ë°ÚÁö¸¸ [¼½¼Ç À̸§] µÚ¿¡´Â ¡®À̸§ = °ª¡¯ÀÇ Çü½ÄÀ¸·Î Á¤ÀÇ°¡ ÀÌ·ïÁø´Ù. ¶ÇÇÑ À¯´Ð½ºÀÇ ÀϹÝÀûÀÎ ±ÔÄ¢°ú´Â ¼³Á¤ ÆÄÀÏ¿¡¼­´Â ´ë¼Ò¹®ÀÚ¸¦ °¡¸®Áö ¾Ê´Â´Ù. ±× ÀÌÀ¯´Â ¾ÆÁÖ ºÐ¸íÇÏ´Ù. ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® À©µµ ¸Ó½ÅµéÀÌ ´ë¼Ò¹®ÀÚ¸¦ Á¦´ë·Î °¡¸®Áö ¾Ê±â ¶§¹®ÀÌ´Ù. Á¤¸®¸¦ Çغ¸ÀÚ.

  • Á¤ÀÇ´Â ¡®À̸§ = °ª¡¯ÀÇ Çü½ÄÀ» Áö´Ñ´Ù.
  • ´ë, ¼Ò¹®ÀÚ´Â °¡¸®Áö ¾Ê´Â´Ù.
  • ¼¼¹ÌÄÝ·Ð(;)À¸·Î ½ÃÀÛÇϰųª ºóÁÙÀº ¹«½ÃÇÑ´Ù.
  • À¯´Ð½º °ü·Ê´ë·Î ÁÙ ³¡¿¡ ¿ª½½·¡½Ã ¹®ÀÚ(\)¸¦ »ç¿ëÇÏ¸ç ´ÙÀ½ ÁÙ°ú À̾îÁø´Ù.
  • ´ë°ýÈ£·Î ¹­ÀÎ °¢ ¼½¼ÇÀº °¢°¢ÀÇ ¼­ºñ½º¸¦ ÀǹÌÇÑ´Ù.
  • ¼­ºñ½º¿¡´Â ÆÄÀÏ ¿µ¿ª ¼­ºñ½º¿Í ÇÁ¸°Æà ¼­ºñ½º, µÎ °¡Áö°¡ ÀÖ´Ù.

ÀÚ, °¢ [¼½¼Ç]ÀÇ Á¤ÀÇ ¹æ¹ýÀº ¾î¶»°Ô ÇÏ´ÂÁö Â÷±ÙÂ÷±Ù ¾Ë¾Æº¸µµ·Ï ÇÏÀÚ. ¿ì¼± ÆÄÀÏ ¿µ¿ª ¼­ºñ½º¿¡ ´ëÇؼ­ ¾Ë¾Æº»´Ù.

[foo]
  path = /home/bar
  writable = true

À§¿¡¼­´Â foo¶ó´Â ¼­ºñ½º¸¦ Á¤ÀÇÇÏ°í ÀÖ´Ù. °æ·Î¸íÀº /home/barÀÌ°í ¾²±â °¡´É À¸·Î ¼­ºñ½ºÇÏ°í ÀÖ´Ù(writable = true ¼³Á¤). ´ÙÀ½ ÇÁ¸°Æà ¼­ºñ½º¿¡ ´ëÇÑ Á¤ÀÇÀÌ´Ù. ¼­ºñ½º¸íÀº aprinter·Î Á¤ÀǵǾî ÀÖ´Ù.

[aprinter]
   path = /usr/spool/public
   read only = true
   printable = true
   public = true

ÀÌ ¼­ºñ½º´Â Àб⸸ Çã¿ëÇϸç ÇÁ¸°Æÿ¡ °ü·ÃµÈ ¼­ºñ½ºÀÌ´Ù. ¿À·ÎÁö ½ºÇ®(Spool) ÆÄÀÏ¿¡ ´ëÇÑ ÆÄÀÏ ¿­±â/¾²±â/´Ý±â¸¦ ÅëÇÑ ¾²±â ±ÇÇÑÀÌ ºÎ¿©µÈ´Ù.

»ï¹Ù ¼³Á¤ ÆÄÀÏÀº ´ë°ýÈ£·Î µÑ·¯½ÎÀÎ ¸î °¡Áö ¼½¼ÇÀ̸§À¸·Î ½ÃÀÛÇÑ´Ù. ¿ì¼± ÀüüÀûÀÎ ¼³Á¤¿¡ °ü°èµÇ´Â [global] ¼½¼ÇÀ» º¸ÀÚ.

[global]
  printing = bsd
  printcap name = /etc/printcap
  load printers = yes
; Uncomment this if you want a guest account
; guest account = pcguest
  log file = /var/log/samba
  lock directory = /var/lock/samba
  share modes = yes

ÀÌ ¼½¼Ç¿¡¼­ Á¤ÀÇÇÏ°í ÀÖ´Â ³»¿ëÀº ¼­¹ö Àüü¿¡ °ü·ÃµÈ °ÍÀ̸ç ÀÌÇÏ ´Ù¸¥ ¼½¼Ç¿¡¼­ ¸í½ÃÇÏÁö ¾ÊÀº ³»¿ë¿¡ ´ëÇÑ ±âº» ¼³Á¤°ªÀ» Á¦°øÇÑ´Ù. Áߺ¹µÇ´Â ¼³Á¤ÀÌ ÀÖ´Ù¸é ¹Ù·Î [global] ¼½¼Ç¿¡ Àû´Â´Ù.

±× ´ÙÀ½Àº Ȩ µð·ºÅ͸® ¼­ºñ½º¸¦ Á¦°øÇÏ´Â °Í¿¡ °ü·ÃµÈ ¼³Á¤À» Á¤ÀÇÇÏ´Â [homes] ¼½¼ÇÀÌ´Ù.

[homes]
  comment = Home Directories
  browseable = no
  read only = no
  create mode = 0750

Ŭ¶óÀ̾ðÆ®·Î ÇÏ¿©±Ý ÀÚ½ÅÀÇ È¨ µð·ºÅ͸®¸¦ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ¿¬°áÇØÁÖ´Â ¼­ºñ½º¸¦ Á¤ÀÇÇÑ´Ù. Á¢¼Ó ¿äûÀÌ ÀÖÀ» ¶§ ¼­¹ö´Â ¿ì¼± Á¤ÀǵǾî ÀÖ´Â ¼­ºñ½º¸íÀ» °Ë»öÇÑ´Ù. ¸¸¾à ÇØ´ç ¼­ºñ½º¸íÀÌ ¹ß°ßµÇ¸é ¹°·Ð ±×°ÍÀ» »ç¿ëÇÑ´Ù. ÇÏÁö¸¸ ¹ß°ßµÇÁö ¾Ê¾ÒÀ» ¶§¿¡´Â ¼­ºñ½º¸íÀ¸·Î »ç¿ëÀÚ¸íÀ» »ç¿ëÇÏ°í ¾Ë¸ÂÀº Æнº¿öµå¸¦ ÀÔ·ÂÇϸé [homes] ¼½¼Ç¿¡ ÀÖ´Â ³»¿ë¿¡ ÀÇ°ÅÇÏ¿© ¼­ºñ½º¸¦ Á¦°øÇÑ´Ù. ¿©·¯ ¸íÀÇ »ç¿ëÀÚ°¡ ÀÖÀ» ¶§ °¢ »ç¿ëÀÚ À̸§À¸·Î ¼­ºñ½º Á¤ÀǸ¦ ÇÒ ÇÊ¿ä¾øÀÌ °£´ÜÈ÷ [homes] ¼½¼Ç¸¸ Çϳª Á¤ÀÇÇصθé Æí¸®ÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÏ°í ÀÖ´Ù. create mode´Â ÆÄÀÏÀÌ »ý¼ºµÉ ¶§ ±âº»À¸·Î °¡Áö°Ô µÉ Çã°¡±ÇÀ» ÀǹÌÇÑ´Ù. ¿©·¯ºÐÀÌ ¿øÇÏ´Â °ªÀ¸·Î ¹Ù²Ù´Â °ÍÀÌ °¡´ÉÇÏ´Ù. ¸¶Áö¸·À¸·Î [printers] ¼½¼ÇÀÌ ÀÖ´Ù.

[printers]
  comment = All Printers
  browseable = no
  printable = yes
  public = no
  writable = no
  create mode = 0700

[homes] ¼½¼Ç°ú °°´Ù°í »ý°¢ÇÏ¸é µÈ´Ù. ´ÜÁö ÆÄÀÏ ¿µ¿ª ¼­ºñ½º°¡ ¾Æ´Ñ ÇÁ¸°Æà ¼­ºñ½º¿¡ °ü·ÃµÈ ³»¿ëÀÏ »ÓÀÌ´Ù. ¹Ù·Î ÀÌ [printers] ¼½¼ÇÀÌ Á¸ÀçÇϸé /etc/printcap¿¡ Á¤ÀǵǾî ÀÖ´Â ÇÁ¸°Å͸¦ »ç¿ëÇÒ ¼ö ÀÖ°Ô µÈ´Ù. ÁÖÀÇÇÒ °ÍÀº ÇÁ¸°ÆÃÀ» °¡´ÉÄÉ ÇÏ·Á¸é ²À printable = yes¶ó´Â ¼³Á¤À» Æ÷ÇÔÇÏ°í ÀÖ¾î¾ß ÇÑ´Ù´Â »ç½ÇÀÌ´Ù.

À§ ¼¼ °¡Áö ¼½¼ÇÀÌ smb.conf¿¡¼­ °¡Àå Áß¿äÇÏ°í Ưº°ÇÑ Àǹ̸¦ °®´Â ¼½¼ÇÀÌ´Ù. ¿©·¯ºÐÀÇ ¹èÆ÷ÆÇ¿¡ µé¾îÀÖ´Â »ùÇà smb.conf ÆÄÀÏÀÌ ¾Æ¹«¸® º¹ÀâÇÏ´Ù ÇÒ Áö¶óµµ ¿©·¯ºÐÀº ¿ì¼± ÀÌ 3 °¡Áö ÆÄÀÏ¿¡ ´ëÇؼ­ Ãæ½ÇÇÏ°Ô ÀÍÈ÷°í ³­ ´ÙÀ½ ³ª¸ÓÁö¸¦ ó¸®Ç϶ó.

¿©·¯ºÐÀÌ ¸¸µç smb.conf ¼³Á¤ ÆÄÀÏ¿¡ ¾î¶² ÀÌ»óÀÌ ¾ø´ÂÁö »ìÆ캸±â À§Çؼ­´Â testparm ¸í·ÉÀ» »ç¿ëÇÑ´Ù.

# testparm
Load smb config files from /etc/smb.conf
Processing section "[homes]"
Processing section "[printers]"
No path in service printers - using /tmp
Processing section "[public]"
Loaded services file OK.
Press enter to see a dump of your service definitions

<¿£ÅÍ>Å°¸¦ Ä¡¸é ±× µÚ·Î °¢°¢ÀÇ ¼­ºñ½º Á¤ÀDZ¸¹®¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ °á°ú°¡ Ãâ·Â µÈ´Ù.

¸®´ª½º ¹Ú½º¿¡ »ï¹Ù ¼­¹ö ¶ç¿ì±â

»ï¹Ù ÆÐÅ°Áö°¡ ÀÖ´Â °ÍÀ» È®ÀÎÇÑ ÈÄ ÀÌÁ¦ »ï¹Ù ¼­¹ö¸¦ ¸®´ª½º¿¡ ¶ç¿öº¼ Â÷·ÊÀÌ´Ù. À¥ ¼­¹ö¿Í ¸¶Âù°¡Áö·Î »ï¹Ù ¼­¹ö¸¦ ¶ç¿ï ¼ö ÀÖ´Â ¹æ¹ýÀº µÎ °¡ÁöÀÌ´Ù.

´Üµ¶ ¼­¹ö·Î ¶ç¿ì±â

»ï¹Ù ¼­¹ö(smbd)¿Í netbios ³×ÀÓ¼­¹ö(nmbd)¸¦ ´Üµ¶ µ¥¸óÀ¸·Î ¶ç¿ì´Â ¹æ¹ýÀº Á÷°üÀûÀÌ´Ù. smbd¿Í nmbd¸¦ -D ¿É¼ÇÀ» ÁÖ°í ¶ç¿ì±â¸¸ ÇÏ¸é µÈ´Ù. ´ëºÎºÐÀÇ ¸®´ª½º ¹èÆ÷ÆÇ¿¡¼­´Â »ï¹Ù ÆÐÅ°Áö¸¦ Á¦°øÇÏ°í ÀÖ°í ½Ã½ºÅÛ ÃʱâÈ­½Ã¿¡ ÀÚµ¿À¸·Î »ï¹Ù µ¥¸óÀ» ¶ç¿ìµµ·Ï µÇ¾îÀÖ´Â °æ¿ì°¡ ¸¹´Ù. ·¹µåÇÞ ½Ã½ºÅÛÀÇ °æ¿ì¸¦ º¸¸é »ï¹Ù ÆÐÅ°Áö¸¦ ¼³Ä¡Çϸé /etc/rc.d/init.d µð·ºÅ͸®¿¡ smb¶ó´Â »ï¹Ù µ¥¸ó ½ÃÀÛ/ Á¾·á ½ºÅ©¸³Æ®°¡ ¼³Ä¡µÊÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù.

ÀϹÝÀûÀ¸·Î ½Ã½ºÅÛ ÃʱâÈ­½Ã¿¡ ÀÚµ¿À¸·Î ½ÇÇàµÇÁö¸¸ ¼öµ¿À¸·Î ½ÃÀÛ/Á¾·á½ÃÅ°°í ÀÚ ÇÒ ¶§´Â ´ÙÀ½Ã³·³ ÇÑ´Ù.

# cd /etc/rc.d/init.d
# ./smb stop
# ./smb start

½ÃÀÛÀº °æ¿ì¿¡´Â ½ºÅ©¸³Æ®¿¡ start¸¦, Á¾·áÀÇ °æ¿ì¿¡´Â stopÀ» Àû¾îÁØ´Ù.

inetd ¼öÆÛ ¼­¹ö¸¦ ÅëÇØ °£Á¢ÀûÀ¸·Î ¶ç¿ì±â

´Üµ¶ µ¥¸óÀ¸·Î ¶ç¿ì´Â °Íº¸´Ù´Â ¹ÝÀÀ½Ã°£ÀÌ ¾à°£ ±æ°Ô ´À²¸ÁúÁö ¸ð¸£Áö¸¸ »ç½Ç ¿äÁòÀÇ ¾öû³ª°Ô ºü¸¥ ÄÄÇ»Æà ȯ°æ¿¡¼­ ±×·¸°Ô ´«¿¡ ¶î ¸¸Å­Àº ¾Æ´Ñ µí ÇÏ´Ù. inetd ¼öÆÛ ¼­¹ö¿¡°Ô ¼­¹ö ½ÇÇàÀ» ÀÏÀÓÇÏ´Â ¹æ½ÄÀÌ´Ù. ÀÌ·¸°Ô Çϸé SMB ¼­ºñ½º¸¦ »ç¿ëÇÏÁö ¾Ê´Â °æ¿ì¿¡ SMB °ü·Ã ¼­¹öµéÀÌ ÇÁ·Î¼¼½º·Î ¶° ÀÖÁö ¾Ê°Ô µÇ¹Ç·Î ÀÚ¿øÀÇ Àý¾à È¿°ú¸¦ ³º´Â´Ù. SMB ¼­ºñ½º ¿äûÀÌ ÀÖÀ» ¶§¸¸ inetd¿¡ ÀÇÇÏ¿© ÀÚµ¿À¸·Î µ¥¸óÀÌ ÀÛµ¿ÇÑ´Ù.

inetd¿¡ ¼­¹ö µ¥¸óÀ» µî·ÏÇÏ´Â ¸ðµç ÀýÂ÷°¡ ±×·¯Çϵí /etc/services ÆÄÀÏ¿¡ ¼­ºñ½º Á¤ÀÇ ±¸¹®À» Àû¾îÁÖ°í /etc/inetd.conf ÆÄÀÏ¿¡ °ü·Ã ¼­ºñ½º¿¡ ÇØ´çÇÏ´Â µ¥¸ó ½ÇÇà ¸í·ÉÀ» Àû¾îÁØ´Ù.

/etc/services ÆÄÀÏ¿¡ ´ÙÀ½ ³»¿ëÀÌ ÀÖ´ÂÁö È®ÀÎÇÏ°í ¾øÀ¸¸é ¸Ç µÚ¿¡ Ãß°¡ÇÑ´Ù.

netbios-ns   137/tcp     nbns
netbios-ns   137/udp     nbns
netbios-dgm   138/tcp     nbdgm
netbios-dgm   138/udp     nbdgm
netbios-ssn   139/tcp     nbssn

/etc/inetd.conf ÆÄÀÏ¿¡ ´ÙÀ½ ³»¿ëÀÌ ÀÖ´ÂÁö È®ÀÎÇÏ°í ¾øÀ¸¸é ¸Ç µÚ¿¡ Ãß°¡ÇÑ´Ù.

netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd
netbios-ns dgram udp wait root /usr/sbin/nmbd nmbd

ÁÖÀÇÇÒ »çÇ×À¸·Î 1. ´Üµ¶ ¼­¹ö ½ÇÇà ¹æ¹ý°ú 2. inetd ¼öÆÛ ¼­¹ö¿¡ ÀÏÀÓÇϱ⠹æ¹ýÀ» µ¿½Ã¿¡ »ç¿ëÇÒ ¼ö´Â ¾ø´Ù´Â Á¡À» µé°í ½Í´Ù. ·¹µåÇÞ ¹èÆ÷ÆÇ »ç¿ëÀÚ¶ó¸é X À©µµ¿¡¼­ Á¦¾îÆÇÀ» ¿­°í ½ÇÇà ·¹º§ ÆíÁý±â¸¦ ¿¬ ´ÙÀ½ ½ÇÇà ·¹º§ 3(ÀϹÝÀûÀÎ ½ÇÇà·¹º§)¿¡¼­ SMB °ü·Ã ½ÇÇà ½ºÅ©¸³Æ®¸¦ »èÁ¦ÇÑ´Ù.

½ÇÇà ·¹º§ 3 ¹øÀÇ ½ÃÀÛ(Start) â¿¡¼­ smb¸¦ ¼±ÅÃÇÑ ÈÄ Á¦°Å(Remove) ¹öÆ°À» ´©¸¥´Ù. ÀÚÁÖ SMB ¼­ºñ½º¸¦ »ç¿ëÇÏÁö ¾Ê´Â »ç¶÷µé¿¡°Ô ±ÇÇÏ°í ½ÍÀº ¹æ¹ýÀÌ´Ù.

À©µµ ¸Ó½Å¿¡°Ô ¸®´ª½º µå¶óÀÌºê º¸¿©ÁÖ±â

±×³É ¸ðµç »ç¶÷µé¿¡°Ô ¸®´ª½º µð·ºÅ͸® ±¸Á¶ Áß ÀϺθ¦ °øÀ¯½ÃÄÑÁÖ±â À§Çؼ­´Â ´ÙÀ½°ú °°Àº ¼³Á¤À» smb.conf¿¡ ¼³Á¤ÇÑ´Ù.

[public]
   comment = Public Stuff
   path = /home/public
   public = yes
   writable = yes
   printable = yes

Á¤»óÀûÀ¸·Î smbd¿Í nmbd¸¦ -D ¿É¼Ç°ú ÇÔ²² ½ÇÇàÇÏ¿© µ¥¸ó »óÅ·Π¶ß°Ô Çسõ °í ³ª¼­ ³×Æ®¿öÅ©·Î ¿¬°áµÈ Ŭ¶óÀ̾ðÆ® À©µµ 95³ª À©µµ NT ÂÊÀ¸·Î °¡¼­ ³×Æ® ¿öÅ© µå¶óÀÌºê ¿¬°áÀ» ÇÏ¸é µÈ´Ù. µå¶óÀÌºê ¸íÀ» Àû¾îÁÙ ¶§´Â »ï¹Ù°¡ ¼³Ä¡µÈ À¯´Ð½º È£½ºÆ®ÀÇ È£½ºÆ®¸í°ú ¼­ºñ½º¸íÀ» ´ÙÀ½°ú °°ÀÌ Àû¾îÁØ´Ù.

\\freeyong\yong

µµ¸ÞÀÎ ¸íÀ» ¾²Áö ¾Ê´Â´Ù´Â »ç½Ç¿¡ À¯ÀÇÇϱ⠹ٶõ´Ù. ¼­ºñ½º¸íÀº »ï¹Ù ¼­¹öÀÇ /etc/smb.conf¿¡ Àû¾îÁØ À̸§ ¶Ç´Â °£´ÜÈ÷ ÀÚ½ÅÀÇ À¯´Ð½º È£½ºÆ® °èÁ¤¸íÀ» Àû ¾îÁÖ¸é µÈ´Ù. ¿ª½½·¡½Ã¸¦ µÎ ¹ø ÀûÀº ´ÙÀ½ È£½ºÆ®¸í ±×¸®°í ¿ª½½·¡½Ã ÇÑ ¹ø, ¸Ç ¸¶Áö¸·¿¡ ¼­ºñ½º¸íÀ» Àû´Â´Ù. ¿¹¸¦ µé¾î °ø¿ë µð·ºÅ͸®·Î ÁöÁ¤ÇÑ [public] ¼­ºñ½º ¼½¼ÇÀ» Á¢±ÙÇϱâ À§Çؼ­´Â ´ÙÀ½°ú °°ÀÌ Àû´Â´Ù.

\\freeyong\public

¸®´ª½º¿¡¼­ »ï¹Ù ¼­¹ö¸¦ ¼³Ä¡ÇÏ°í ³ª¼­ °ú¿¬ »ï¹Ù ¼­¹ö°¡ Á¦´ë·Î ÀÛµ¿ÇÏ´ÂÁö´Â À©µµ 95¿Í À©µµ NT ¸Ó½Å¿¡¼­ ¿¬°áÇÏÁö ¾Ê¾Æµµ Á÷Á¢ È®ÀÎ °¡´ÉÇÏ´Ù. ¿Ö³ÄÇÏ¸é ¸®´ª½º »ï¹Ù ÆÐÅ°Áö¿¡ ¼­¹ö¿Í Ŭ¶óÀ̾ðÆ®°¡ ¸ðµÎ µé¾îÀֱ⠶§¹®ÀÌ´Ù. »ï¹Ù ¼­¹ö¸¦ ½ÇÇàÇÑ ÈÄ ¼­¹ö°¡ ¼³Ä¡µÈ ¸®´ª½º¿¡¼­ ´ÙÀ½°ú °°ÀÌ Çغ¸ÀÚ. yongÀ̶ó´Â ÀÏ¹Ý »ç¿ëÀÚ°¡ ´ÙÀ½°ú °°ÀÌ Çß´Ù°í Ä¡ÀÚ.

$ smbclient \\\\freeyong\\yong

¶Ç´Â

$ smbclient '\\localhost\yong'

¾ÏÈ£°¡ ÇÊ¿äÇÑ °æ¿ì¿¡´Â ¾ÏÈ£¸¦ ¹°¾î¿Ã °ÍÀÌ´Ù. ¾ÏÈ£°¡ ¾ø´Â °æ¿ì¿¡´Â ±×³É ¿£ÅÍÅ°¸¦ Ä¡¸é µÈ´Ù.

ÁÖÀÇÇØ¾ß ÇÒ »çÇ×À» ÇÑ °¡Áö ÁöÀûÇÏÀÚ. \\\\freeyong\\yongÀ̶ó°í ÀûÀº °ÍÀº ¹º°¡ ÀÌ»óÇÏÁö ¾ÊÀº°¡? ȤÀÚ ¿ÀÀÚ°¡ ¾Æ´Ñ°¡? ±×·¸Áö ¾Ê´Ù. À¯´Ð½º ¼Ð¿¡¼­ ¿ª½½·¡½¬ ¹®ÀÚ´Â µ¶Æ¯ÇÑ Àǹ̸¦ °®±â ¶§¹®¿¡ ¾î¶² ÇÁ·Î±×·¥¿¡°Ô ¿ª½½·¡½Ã ¹®ÀÚ µÎ °³¸¦ Àü´ÞÇÏ°íÀÚ ÇÒ ¶§´Â ¼Ð¿¡¼­ À§¿Í°°ÀÌ ³× ¹øÀ» Àû¾î ÁÖ¾î¾ß ÇÑ´Ù. C ÇÁ·Î±×·¡¹Ö printf ¹®¿¡¼­ ¿ª½½·¡½Ã ¹®ÀÚ¸¦ Ãâ·ÂÇϱâ À§Çؼ­´Â ¾î¶»°Ô Àû¾îÁÖ¾î¾ß ÇÏ´ÂÁö ¾Æ´Â »ç¶÷Àº ±Ý¹æ ÀÌÇØÇÒ °ÍÀÌ´Ù. ¶Ç´Â ¼ÐÀÇ ¹®ÀÚ Çؼ®À» °­Á¦·Î ¸·´Â ÀÛÀº µû¿ÈÇ¥·Î ¹­¾îÁÖ¸é µÈ´Ù. ÀÌ ±âȸ¿¡ Ã¥À» ã¾Æ¼­ ¿ªµû¿ÈÇ¥(backquoute, `), ÀÛÀº µû¿ÈÇ¥('), Å« µû¿ÈÇ¥(")°¡ ¼Ð¿¡¼­ ¾î¶² ´Ù¸¥ Àǹ̸¦ °®´ÂÁö Á¶»çÇغ¸±â ¹Ù¶õ´Ù. Áß±ÞÀÚ¶ó¸é ÀÌ°Í¿¡ ´ëÇؼ­ ÃæºÐÈ÷ ¼÷ÁöÇÏ°í ÀÖ¾î¾ß ÇÑ´Ù.

smb: \> ÇÁ·ÒÇÁÆ®°¡ ³ª¿À¸é h¶ó°í Ãļ­ ¾î¶² ¸í·ÉÀÌ ÀÖ´ÂÁö È®ÀÎÇغ¸±â ¹Ù¶õ´Ù. ftp¿¡¼­ »ç¿ëÇÏ´Â ¸í·É°ú °ÅÀÇ Èí»çÇÏ´Ù. ³¡³¾ ¶§´Â q¸¦ ´©¸¥´Ù. ÀÌÁ¦ À©µµ ¸Ó½Å°ú ¸®´ª½º ¸Ó½ÅÀÌ ¿¬°áµÇ¾î ÀÖ´Â °æ¿ì µð½ºÄÏÀ» µé°í ¹æ ¾È¿¡¼­ µ¹¾Æ´Ù´Ï°Å³ª ¶Ç´Â ¸®´ª½º ¸Ó½ÅÀ¸·Î ftpÇØ µé¾î°¡¼­ ÆÄÀÏÀ» °¡Á®¿Â´ÙµçÁö ÇÏ´Â ÀÏÀº ¾øÀ» °ÍÀÌ´Ù. ¹°·Ð ÃÖÈÄÀÇ ¼ö´ÜÀº ftpÀÏ ¼ö ÀÖ´Ù. ÇÏÁö¸¸ ¹®Á¦´Â ¸®´ª½º°¡ ¼­¹ö¸¦ ÇÏ°í ¸®´ª½ºÀÇ µå¶óÀ̺긦 °øÀ¯ÇÏ´Â °ÍÀ̶ó¸é ¸ð¸£Áö¸¸ ¸®´ª½ºÃ³·³ ¹èÆ÷ÆÇ¿¡ ÀÚ¿¬½º·´°Ô ftp ¼­¹ö°¡ Á¦°øµÇÁö ¾Ê´Â À©µµ 95³ª À©µµ NT ¸Ó½ÅÀÇ °æ¿ì¿¡´Â ¹Ý´ëÀÇ °æ¿ì Áï ¸®´ª½º ¸Ó½Å¿¡¼­ À©µµ ¸Ó½ÅÀÇ ÆÄÀÏÀ» °¡Á®¿À´Â ÀÏÀÌ ¿©°£ ±ÍÂúÀº °ÍÀÌ ¾Æ´Ï´Ù. ±×·¸´Ù°í ¾µ µ¥ ¾øÀÌ À©µµ 95/NT¿ë ÅÚ³Ý ¼­¹ö³ª FTP ¼­¹ö¸¦ ±¸ÀÔÇÑ´Ù´Â °ÍÀº Á¤¸» ºÒÇÊ¿äÇÑ ÀÏÀÌÁö ¾ÊÀº°¡?

¸®´ª½º ¹Ú½º¿¡°Ô À©µµ µå¶óÀÌºê º¸¿©ÁÖ±â

À̹ø¿¡´Â ¹Ý´ëÀÇ °æ¿ì¸¦ »ý°¢Çغ¸ÀÚ. ¸®´ª½º ¹Ú½º°¡ Ŭ¶óÀ̾ðÆ®ÀÇ ÀÔÀåÀÌ°í À©µµ ¸Ó½ÅÀÇ µå¶óÀ̺꿡 ÀÖ´Â ÆÄÀÏÀ» °¡Á®¿À°íÀÚ ÇÑ´Ù. Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¥À¸·Î´Â À§¿¡¼­µµ »ç¿ëÇÑ ¹Ù ÀÖ´Â smbclient°¡ ÀÖ´Ù.

$ smbclient -L freeyong

-L ¿É¼Ç ´ÙÀ½¿¡ À©µµ ¸Ó½ÅÀÇ È£½ºÆ®¸í(Á¤È®È÷´Â ·£ ¸Å´ÏÀú ¸í)À» Àû¾îÁÖ¸é ±× ÂÊ ¼­¹ö¿¡¼­ ¿©·¯ºÐ¿¡°Ô Á¦°øÇÏ´Â ¼­ºñ½º ¸íÀ» ¸ðµÎ º¸¿©ÁÙ °ÍÀÌ´Ù.

[yong@freeyong yong]$ smbclient -L freeyong
Added interface ip=127.0.0.1 bcast=127.255.255.255 nmask=255.0.0.0
Server time is Fri Apr 18 05:59:01 1997
Timezone is UTC+9.0
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 1.9.16p9]

Server=[freeyong]     User=[yong]     Workgroup=[WORKGROUP]
Domain=[WORKGROUP]

    Sharename   Type     Comment
    ---------   ----     -------
    IPC$        IPC      IPC Service (Samba 1.9.16p9)
    lp          Printer 
    public      Disk     Public Stuff
    tmp         Disk     Temporary file space
    yong        Disk     Home Directories

This machine has a browse list:

    Server         Comment
    ---------      -------
    FREEYONG       Samba 1.9.16p9

This machine has a workgroup list:

    Workgroup      Master
    ---------      -------
    WORKGROUP      FREEYONG

À§ Ãâ·Â °á°ú´Â ÆíÀÇ»ó ¸®´ª½º¿¡¼­ »ï¹Ù ¼­¹ö¸¦ ¿î¿µÇÏ°í »ï¹Ù Ŭ¶óÀ̾ðÆ®·Î È®ÀÎÇÑ °ÍÀÌ´Ù. ÀÚ À§¿¡¼­ ¼­ºñ½º¸íÀ» È®ÀÎÇßÀ¸¸ç ÀÌÁ¦ ¼­ºñ½º¸¦ »ç¿ëÇغ¸ÀÚ.

$ smbclient \\\\¼­¹öÈ£½ºÆ®¸í\\¼­ºñ½º¸í ¾ÏÈ£

¸¶Ä¡ FTP ¼¼¼Ç µé¾î°£ °Í°ú °°Àº À¯»çÇÑ ¸í·ÉÇà ÀÎÅÍÆäÀ̽º°¡ ³ª¿Ã °ÍÀÌ´Ù.

ŰŸ »çÇ×

Ä¿³Î ¼³Á¤¿¡¼­ ÆÄÀϽýºÅÛ(FileSystem)-SMB ÆÄÀÏ ½Ã½ºÅÛ Áö¿øÀ» Ä¿³Î ¾È¿¡ ³»ÀåÇϵ簡 ¾Æ´Ï¸é ¸ðµâ·Î ÄÄÆÄÀÏÇÑ´Ù. À©µµ 95¸¦ »ç¿ëÇÏ´Â °æ¿ì¿¡´Â SMB À©µµ 95 ¹ö±× ÆÐÄ¡ ¶ÇÇÑ ¼³Á¤Çϵµ·Ï ÇÏÀÚ. Á¤È®È÷ ¸»ÇØ ÀÌ°ÍÀº ¸®´ª½º¸¦ Ŭ¶óÀ̾ðÆ®·Î »ç¿ëÇÒ ¶§ »ç¿ëÇÏ´Â °ÍÀÌ´Ù. »ï¹Ù ¼­¹ö¸¦ ¼³Ä¡ÇÏ¿© ¸®´ª½º ¹Ú½º¸¦ ¼­¹ö·Î¸¸ »ç¿ëÇÏ°íÀÚ ÇÏ´Â »ç¶÷µé¿¡°Ô´Â ÇÊ¿äÇÏÁö ¾ÊÀº ³»¿ëÀÌ´Ù.

À©µµ 95 ¼­¹öÀÇ °æ¿ì µð·ºÅ͸® ¸ñ·ÏÀ» º¸¿©Áִµ¥ ¹ö±×°¡ ÀÖ´Ù´Â »ç½ÇÀÌ ¹àÇôÁ³´Ù. ¾à°£ÀÇ ¼Óµµ ÀúÇϸ¦ °¨¼öÇÏ°í¶óµµ ¾ÈÁ¤ÀûÀÎ µð·ºÅ͸® ¼­ºñ½º¸¦ ¹Þ°íÀÚ ÇÑ´Ù¸é SMB À©µµ 95 ¹ö±× ÆÐÄ¡ ¿É¼ÇÀ» Äѵεµ·Ï ÇÏÀÚ. Ä¿³Î¿¡¼­ Áö¿øÇÏ´Â SMB Ŭ¶óÀ̾ðÆ® Áö¿ø ¼­ºñ½º¸¦ ¹Þ°íÀÚ ÇÒ ¶§´Â Ưº°ÇÑ ¸¶¿îÆ® ÇÁ·Î±×·¥À» °¡Á®¿Í¾ß ÇÑ´Ù. À§Ä¡´Â sunsite.unc.edu:/pub/Linux/system/filesystems/smbfsÀ¸·Î smbfs-2.0.1.tgz¸¦ °¡Á®¿Í¼­ ÄÄÆÄÀÏÇÏ¿© »ç¿ëÇÑ´Ù. Ä¿³Î ¹öÀüÀº 2.0.29 ÀÌ»óÀ» »ç¿ëÇϵµ·Ï Ç϶ó. make , make install ÈÄ¿¡´Â smbmount, smbumount¶ó´Â Ưº°ÇÑ ¸¶¿îÆ® ÇÁ·Î±×·¥ÀÌ ¼³Ä¡µÈ´Ù.

À§¿¡¼­ °è¼Ó ¿¹·Î º¸¿©ÁØ °Í°ú °°ÀÌ ¸®´ª½º ÀÚü¿¡ »ï¹Ù ¼­¹ö¸¦ ¶ç¿ì°í ¸®´ª½º ¾È¿¡¼­ Ŭ¶óÀ̾ðÆ®¸¦ µ¹·Á¼­ È®ÀÎÇØ º¸´Â °Íµµ ÁÁ´Ù. ±×·¡¾ß¸¸ À©µµ 95/NT·Î ¿¬°áÇÒ ¶§ ¹®Á¦°¡ »ý±â´Â °æ¿ì °ú¿¬ ¼­¹öÀÇ ¹®Á¦ÀÎÁö ¾Æ´Ï¸é ÄÉÀ̺íÀÇ ¹®Á¦ÀÎÁö À©µµ 95/NT ¼³Á¤ÀÇ ¹®Á¦ÀÎÁö ½±°Ô ¹®Á¦¸¦ ÆľÇÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù.

2.4 ³×Æ®¿öÅ© ±âº» º¸¾È ¼³Á¤

ÀÎÅͳÝÀº »óÈ£ ½Å·Ú¸¦ ±â¹ÝÀ¸·Î Çü¼ºµÈ Àü Áö±¸Àû ³×Æ®¿öÅ©ÀÌ´Ù. ¼ö¸¹Àº °Å´ë BBS ȸ»çµé, ƯÈ÷ ¹Ì±¹ÀÇ ÄÄǪ¼­ºê(CompuServe) ¶Ç´Â AOL°ú °°Àº ȸ»çµéÀÌ ÀÖ¾ú´Ù°í´Â Çϳª ±×µéÀÇ ¿µÇâ·ÂÀº ±â²¯ÇØ¾ß Àü Áö±¸ÀÇ ÀϺÎÀÎ ¹Ì±¹ ³»¿¡ ¸Ó¹°·¶À» »ÓÀÌ´Ù. ÀÎÅͳÝÀº óÀ½ºÎÅÍ ºñ¿µ¸®ÀûÀÎ ¸ñÀûÀ¸·Î °ü¸®ÀÚµéÀÇ »óÈ£ ÇùÁ¶ ¾Æ·¡ ¼öÆòÀûÀÎ °ü°è¸¦ À¯ÁöÇØ °¡¸é¼­ ±Þ¼Óµµ·Î ÀüÆÄµÇ¾î ³ª°¬°í ƯÈ÷ ¿©·¯ºÐµµ ¾Ë´Ù½ÃÇÇ ¿ùµå ¿ÍÀ̵å À¥À̶ó´Â ¸Åü¸¦ ÅëÇØ ÀϹÝÀο¡°Ô ´Ù°¡¿Â »óÅÂÀÌ´Ù.

ÀÎÅͳÝÀ» Á¢ÇÏ´Â »ç¶÷µéÀÇ ¼ýÀÚ°¡ Áõ°¡ÇÒ ¼ö·Ï ÀÎÅͳÝÀ» ÅëÇØ ÇýÅÃÀ» ´©¸®´Â »ç¶÷µéÀÌ ¸¹¾ÆÁö´Â ¹Ý¸é ¿ª½Ã ¹«½ÃÇÒ ¼ö ¾øÀ» ¸¸Å­ÀÇ ÀϺΠ»ç¶÷µéÀÌ ÇÇÇظ¦ ´çÇÏ°í ÀÖ´Ù. ¿©·¯ºÐÀÌ ÀÚÁÖ ½Å¹®, TV ´º½º¿¡¼­ ÀÐÀ» ¼ö ÀÖ´Â Å©·¡Å·(Cracking) »ç°Çµµ ÀÖÁö¸¸ ±×·± ±½Á÷ÇÑ »ç°Çº¸´Ù ¸î ¹è·Î Àڱ׸¶ÇÑ °³ÀεéÀÇ ÇÇÇØ»ç·Ê°¡ ¹ß»ýÇÏ°í ÀÖ´Â °ÍÀº ½±°Ô ¿¹»óÇÒ ¼ö ÀÖ´Ù.

Àå³­²Ù·¯±âµé°ú ¹üÁËÀÚµéÀÇ ½É¸®°¡ ¾î¶°ÇÑÁö´Â ¸ð¸£°ÚÀ¸³ª ºÐ¸íÇÑ »ç½ÇÀº ±×µé¿¡°Ô ¼³±³ÁýÀ̳ª öÇÐÃ¥À» °¡Á®Áشٰí Çؼ­ ¸¶À½À» °íÃĸԴ´ٴ º¸Àåµµ ¾øÀ¸¸ç ¼±µµ È°µ¿°ú´Â º°µµ·Î ¿©·¯ºÐ ÀÚ½ÅÀ» ½º½º·Î ¹æ¾îÇØ¾ß ÇÏ´Â ÀÏÀº ¾î¶°ÇÑ °æ¿ì¿¡µµ ¼ÒȦÈ÷ ÇÒ ¼ö ¾øÀ» °ÍÀÌ´Ù.

°æÂûÀÌ ÀÖ´Ù°í Çؼ­ °­µµ¿Í »ìÀÎÀÌ ¾ø´Â °ÍÀº ¾Æ´Ï´Ù. °¨½Ã±â°è°¡ ÀÖ´Ù°í Çؼ­ µµµÏÀÌ µéÁö ¾Ê´Â °Í Àº ¾Æ´Ï´Ù. ÇÏÁö¸¸ ÀÌ·± ±âº»ÀûÀÎ ¹æÃ¥¸¶Àú ¼¼¿ìÁö ¾Ê´Â´Ù¸é ¹üÁË ÇàÀ§°¡ ³Ê¹« ½¬¿öÁöÁö ¾Ê°Ú´Â°¡?

Àü¹®ÀûÀÎ ÁÖÁ¦·Î µé¾î°¡±â¿¡ ¾Õ¼­ ÀÌ·± À̾߱⸦ ÇÏ´Â ÀÌÀ¯´Â ¡®³×Æ®¿öÅ© º¸¾È" À̶ó´Â ÁÖÁ¦¿¡ ´ëÇÏ¿© À̼ºÀûÀÎ ÀÚ¼¼¸¦ °®ÀÚ´Â ÀǵµÀÌ´Ù. º¸¾È¿¡ ´ëÇÑ ¾ç±Ø´ÜÀÇ »ý°¢, Áï º¸¾È¿¡ ¼ÒȦÈ÷ ÇÏ´Â ¹æ¸¸ÇÑ Åµµ ±×¸®°í º¸¾È¿¡ ´ëÇÏ¿© ±Øµµ·Î ½Å°æÁúÀûÀ¸·Î ´ëÀÀÇϴ ŵµ ¸ðµÎ °³Àΰú ´ÜüÀÇ ÀÌÀÍ¿¡ µæÀÌ µÇÁö ¾Ê´Â´Ù. º¸¾ÈÀÌ ÇÊ¿ä ¾ø´Â °÷¿¡¼­ º¸¾È¿¡ ´ëÇØ ºÒÇÊ¿äÇÑ ½Å°æÀ» ¾´´Ù´Â °ÍÀº ¿ì½º¿î ÀÏÀÌ¸ç º¸¾ÈÀÌ ÇÊ¿äÇÑ °÷¿¡¼­ °ü¸®ÀÚ°¡ ¾Æ¹« »ý°¢ ¾øÀÌ Á¹°í¸¸ ÀÖ´Â °ÍÀº À§Çèõ¸¸ÇÑ ÀÏÀÌ´Ù.

¸®´ª½º ±âº» º¸¾È ¼³Á¤

°æÂû ¾÷¹«´Â ¸Å¿ì Èûµç ÀÏÀÌ´Ù. °íµµÀÇ ÈÆ·ÃÀÌ ÇÊ¿äÇÏ¸ç ¸¶À½°¡Áü ¶ÇÇÑ Áß¿äÇÏ´Ù´Â »ç½ÇÀ» Àß ¾Ë°í ÀÖÀ» °ÍÀÌ´Ù. ³×Æ®¿öÅ© º¸¾È ¹®Á¦ ¶ÇÇÑ ¸¶Âù°¡ÁöÀÌ´Ù. º¸¾È ±â¼ú ¼öÁØÀº ¼­·Î ¸¹Àº Â÷À̸¦ º¸ÀÌ¸ç ¹«¾ùº¸´Ùµµ °­Á¶ÇÏ°í ½ÍÀº °ÍÀº ¡®¹è¿ìÁö ¾ÊÀ¸¸é ¾ÈµÈ´Ù¡¯´Â »ç½ÇÀÌ´Ù. ¸¹Àº »ç¶÷µéÀÌ ¼­¹ö ¿î¿µÃ¼°è¿¡ ´ëÇÏ¿© º¸¾È °ü¸®¸¶Àúµµ Æí¸®ÇßÀ¸¸é ÇÏ´Â ¹Ù·¥À» °®´Âµ¥ º¸¾ÈÀÇ ¹®Á¦´Â ¾ÖÃʺÎÅÍ Æí¸®ÇÔÀÇ ±âÁØÀ¸·Î ÇØ°áÇÒ ¼ö ÀÖ´Â ¹®Á¦°¡ ¾Æ´Ï¶ó´Â »ç½ÇÀ» ºÐ¸íÈ÷ ÇÏ°Ú´Ù. ´Ù¸¥ ¹®Á¦´Â ¸ð¸£°ÚÀ¸³ª º¸¾È ¹®Á¦¿¡ °üÇÏ¿© Æí¸®ÇÑ µµ±¸¸¦ ã´Â ³×Æ®¿öÅ© °ü¸®ÀÚ°¡ ÀÖ´Ù¸é ±â¾÷À̳ª ´ÜüÀÇ °æ¿ì ´çÀå ÇØ°íÇØ¾ß ÇÑ´Ù°í ¸»ÇÏ°í ½Í´Ù. ±×´Â ¹«¼úÀ̳ª »ç°Ý¼úÀ» ¹è¿ìÁö ¾Ê°Ú´Ù´Â °æÂû°ü°ú °°´Ù. ³»±Ù °æ°üÀÌ ¾Æ´Ï¶ó¸é ¾îÂî ÀÌ·± °æÂû°üÀ» ¹ÏÀ» ¼ö Àְڴ°¡?

³×Æ®¿öÅ© º¸¾È ¹®Á¦¿¡ ÀÖ¾î ÀÏÀ» ¾î·Æ°Ô ¸¸µå´Â ÀÏÀÌ ÀÖ´Ù¸é ±× Æ¯¼º »ó ³×Æ®¿öÅ© º¸¾ÈÀº Ç×»ó ¡®¹æ¾î¡¯¶ó´Â »ç½Ç¿¡ ÀÖ´Ù. ¡®¹üÁË¿ÍÀÇ ÀüÀï ¼±Æ÷¡¯°°Àº ÀÏÀº ¾ø´Ù. °ø°ÝÀÌ ÃÖ¼±ÀÇ ¹æ¾î¶ó´Â ¸ÚÁø ¸»µµ ÅëÇÏÁö ¾Ê´Â´Ù. °ø°ÝÇØ ¿Ô´Ù°í Çؼ­ ÀÌ ÂÊ¿¡¼­ ¹Ý°ÝÇÒ ¼ö ÀÖ´Â °Íµµ ¾Æ´Ï´Ù. ¿ì¸®´Â ÇÑ ´ëµµ ¶§¸®Áö ¸øÇÏ°í ¸·±â¸¸ ÇØ¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. ÀÌ·¸°Ô »ý°¢Çغ¸¸é Á¶±ÝÀº ¾ï¿ïÇÑ ÀÏÀÓ¿¡ Ʋ¸²¾ø´Ù. ÇÇÇظ¦ ´çÇÏ°í ³ª¼­ ¹üÀÎÀ» Àâ°í ó¹úÇÒ ¼öµµ ÀÖ°ÚÁö¸¸ ÀÌ¹Ì ÀÏÀº ¹ú¾îÁö°í ³­ ´ÙÀ½ÀÌ´Ù. ±â¾÷ÀÇ °æ¿ì ÀÚ»çÀÇ ±â¹ÐÀÌ ³ëÃâµÇ¾î ÀÌ¹Ì È¸»ç°¡ À§Å·οî Áö°æ¿¡ ºüÁö°í ³ª¼­ ¹«ÀÏǬÀÇ ÀþÀºÀ̸¦ ±¸¼ÓÇÑµé ¹«½¼ ¼Ò¿ë Àְڴ°¡?

º¸¾È ¹®Á¦¿¡ ´ëÇÑ À̾߱⸦ ÇÒ ¶§¸¶´Ù »óÈ£ ½Å·Ú¸¦ ±â¹ÝÀ¸·Î Çü¼ºµÈ ÀÎÅͳÝÀ» ¾Ç¿ëÇÏ´Â »ç¶÷µéÀÌ ÀÖ´Ù´Â ¾ö¿¬ÇÑ »ç½Ç¿¡ È­°¡ ³¯ ¶§°¡ ¸¹´Ù. ÀÌ ±ÛÀ» Àаí ÀÖ ´Â »ç¶÷À̶ó¸é Á¦¹ß ³²¿¡°Ô ÇÇÇØÁÖ´Â ÀÏÀº »ý°¢ÇÏÁö ¸»¾ÒÀ¸¸é ÁÁ°Ú´Ù. ¼¼»ó¿¡ ´Â ³²¿¡°Ô ÇÇÇظ¦ ÁÖ´Â ÀÏ ÀÌ¿Ü¿¡µµ Àç¹ÌÀÖ´Â ÀϵéÀÌ ¾ó¸¶µçÁö ÀÖ´Ù°í »ý°¢ÇÑ´Ù.

±âº» ±ÔÄ¢

ÇÊ¿ä ¾ø´Â ¼­¹ö´Â ½ÇÇàµÇÁö ¸øÇϵµ·Ï ¿øõ ºÀ¼âÇÑ´Ù!

¿©±â¼­ ¼³¸íÇÏ´Â ¹Ù´Â À¯´Ð½º/¸®´ª½º¿¡ °øÅëµÇ´Â »çÇ×ÀÌ´Ù. ³×Æ®¿öÅ© ¼­¹öµéÀº Å©°Ô 2 °¡Áö ¹æ½ÄÀ¸·Î ½ÇÇàµÇ´Âµ¥ Çϳª´Â inetd ¼öÆÛ ¼­¹ö¿¡ ÀÇÇØ ÀÚµ¿ °ü¸®µÇ´Â ¹æ½ÄÀÌ¸ç ³ª¸ÓÁö Çϳª´Â À¯´Ð½ºÀÇ ¿©Å¸ ÇÁ·Î¼¼½º¿Í ¸¶Âù°¡Áö·Î Á÷Á¢ ½ÇÇà½ÃÅ°´Â ¹æ½ÄÀÌ´Ù. ÈÄÀÚÀÇ °æ¿ì¿¡´Â ºÎÆà °úÁ¤À» ¸é¹ÐÈ÷ »ìÆ캸°í ÇÊ¿ä ¾ø´Â ¼­¹öµéÀÌ ÀÛµ¿ÇÏÁö ¾Êµµ·Ï ½Ã½ºÅÛ ÃʱâÈ­ ÆÄÀÏÀ» ¼öÁ¤ÇÏ¸é µÈ´Ù. º¸¾È ¹®Á¦¿¡ °üÇÏ¿© ±Øµµ·Î ¿¹¹ÎÇÑ »ç¶÷Àº °£´ÜÈ÷ ±× ¼­¹ö¸¦ ½Ã½ºÅÛ¿¡¼­ »èÁ¦ÇÏ¸é ±×¸¸ÀÌ´Ù. ¸®´ª½ºÀÇ °æ¿ì ±×¸®°í ·¹µåÇÞ, µ¥ºñ¾È µîÀÇ ¹èÆ÷ÆÇ¿¡¼­´Â ¼­¹ö ¼³Ä¡/»èÁ¦°¡ ÀÚÀ¯·Î¿ì¹Ç·Î ±¦ÇÑ Çϵåµð½ºÅ© °ø°£À» Â÷ÁöÇÏ°Ô ÇÒ ÇÊ¿ä ¾øÀÌ »èÁ¦ÇÏ´Â °ÍÀÌ ÁÁ´Ù°í º»´Ù. ¿øÇÒ ¶§´Â ¾ðÁ¦µçÁö ½Ã½ºÅÛ ¿î¿µ µµÁß ¼³Ä¡ÇÏ°í ±× Áï½Ã °¡µ¿ °¡´ÉÇϱ⠶§¹®ÀÌ´Ù. ¿ì¸®°¡ ³õÄ¡±â ½¬¿î ºÎºÐÀÌ ¹Ù·Î inetd ¼öÆÛ ¼­¹ö¿¡ ÀÇÇØ °ü¸®µÇ´Â ¼­¹öµéÀÌ´Ù. ¿ì¸®°¡ ¸ð¸£´Â »çÀÌ¿¡ º¸¾È¿¡ Ãë¾àÇÑ ¾î¶² ¼­¹öµéÀÌ ¸¶±¸ ½ÇÇàµÉ ¼ö ÀÖ´Ù.

/etc/inetd.conf û¼ÒÇϱâ

°¢ ÇàÀº ÇϳªÀÇ ¼­ºñ½º¸¦ Á¤ÀÇÇÑ´Ù. Çü½ÄÀº ´ÙÀ½°ú °°´Ù.

<¼­ºñ½º¸í> <¼ÒÄÏ Å¸ÀÔ> <ÇÁ·ÎÅäÄÝ> <Ç÷¡±×> <»ç¿ëÀÚ> <¼­¹ö °æ·Î> <Àü´Þ Àμö>

#
# These are standard services.
#
ftp  stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd
gopher stream tcp nowait root /usr/sbin/tcpd gn

ftp, telnet µîÀÇ ¼­ºñ½º´Â ¾ÆÁÖ ±âº»ÀûÀÎ ¼­ºñ½ºÀÌ´Ù. ÇÏÁö¸¸ ¸¶Áö¸· ÁÙ¿¡ ÀÖ´Â °íÆÛ(gohper) ¼­ºñ½º´Â À¥ÀÇ µîÀåÀ¸·Î ÀÎÇØ ¿äÁò º° Àα⵵ ¾ø¾î ´ëºÎºÐ »ç¿ëÇÏÁö ¾ÊÀ» °ÍÀ̶ó°í º»´Ù. Àß ¸ð¸¥´Ù¸é ¿©·¯ºÐÀº ÀÌ°ÍÀ» »ç¿ëÇÏ°í ÀÖÁö ¾Ê´Â °ÍÀÌ¸ç ¼­ºñ½º¸¦ Á¦°øÇÒ ´É·Âµµ µÇÁö ¾ÊÀ¸¹Ç·Î ÁÙ ¸Ç ¾Õ¿¡ ¼¥(#) ¹®ÀÚ¸¦ ³Ö¾î ÁÖ¼® ó¸®Çعö¸®±â ¹Ù¶õ´Ù.

#
# Shell, login, exec and talk are BSD protocols.
#
#shell  stream tcp nowait root /usr/sbin/tcpd in.rshd
#login  stream tcp nowait root /usr/sbin/tcpd in.rlogind
#exec  stream tcp nowait root /usr/sbin/tcpd in.rexecd
talk   dgram  udp wait  root /usr/sbin/tcpd in.talkd

À§¿¡¼­ ³ª¿­ÇÑ ¼­ºñ½ºµéÀº ¾ÆÁÖ ²ûÂïÇÑ(?) ¼­ºñ½ºµéÀÌ´Ù. Æнº¿öµå ¾øÀÌ ¿ø°Ý ·Î±×ÀÎÇϰųª ¿ø°Ý¿¡¼­ ¼­¹ö »ó¿¡ ÇÁ·Î±×·¥À» ½ÇÇà½Ãų ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇϱ⠶§¹®ÀÌ´Ù. ÀÌ·± ¼­ºñ½º¿¡ ÀÇÇØ °ø°Ý´çÇÏ¸é ¹üÀεµ ¸ø Àâ´Â´Ù. shell, login, exec µîÀº °³ÀÎ¿ë ¼­¹ö°¡ ¾Æ´Ñ ÀÌ»ó À§¿¡¼­Ã³·³ ÁÖ¼®Ã³¸®Çϱ⠹ٶõ´Ù.

#
# Finger, systat and netstat give out user information    
# which may be valuable to potential "system crackers."
# Many sites choose to disable
# some or all of these services to improve security.
#
# cfinger is for GNU finger, which is currently not
# in use in RHS Linux
#
# finger stream tcp nowait root  /usr/sbin/tcpd in.fingerd
#cfinger stream tcp nowait root  /usr/sbin/tcpd in.cfingerd
#systat stream  tcp nowait guest  /usr/sbin/tcpd /bin/ps -auwwx
#netstat stream tcp nowait guest  /usr/sbin/tcpd /bin/netstat

ÀÌ¹Ì inetd.conf ¼³Á¤ ÆÄÀÏ¿¡ Àß Àû¾î³õ°í ÀÖ´Â ³»¿ëÀÌ´Ù. ¿©±â¿¡ ÀÖ´Â ¼­ºñ½ºµéÀº ¿ÜºÎ¿¡°Ô ¿©·¯ºÐ ¼­¹ö, »ç¿ëÀÚ¿¡ °üÇÑ Á¤º¸¸¦ ´©ÃâÇÑ´Ù. finger, systat, netstatÀº ÁÖ¼® ó¸®ÇÒ °ÍÀΰ¡ ¸» °ÍÀΰ¡? fingerÀÇ ¿¹¸¦ µé¾îº¸ÀÚ.

[yong@freeyong src3]$ finger @localhost
[localhost]
Login Name     Tty Idle Login Time  Office Office Phone
root root     *4  1:18 May  12 12:20
yong Lee Man Yong *1  1:18 May  12 12:20
yong Lee Man Yong *2  1:18 May  12 12:20

[yong@freeyong src3]$ finger @linux.cs.helsinki.fi
[melkki.cs.Helsinki.FI]
----------------------------------------------------  University
of Helsinki - Department of Computer Science
  Local time is Mon May 12 07:45:27 EET DST 1997

  Latest Linux Kernel versions (from ftp.cs.Helsinki.FI)
    v2.0 (stable):   2.0.30
    v2.1 (development): 2.1.36
-------------------------------------------------------
Login Name    Tty Idle Login Time Office Office Phone
ahalme Allan Halme p8 7:22 May 12 00:22 [ hi-hat.in.helsin ]

À§¿¡¼­ º¸´Ù½ÃÇÇ µµ´ëü ¾î¶² »ç¶÷µéÀÌ ·ÎÄà ȣ½ºÆ®¿¡¼­ ÀÛ¾÷ÇÏ°í ÀÖ´ÂÁö ¾ÆÁÖ ºÐ¸íÇÏ°Ô Á¤º¸¸¦ ´©ÃâÇÏ°í ÀÖ´Ù. ´ÙÀ½Àº Çï½ÌÅ° ´ëÇÐ ¼­¹ö¿¡¼­ ¾î¶² »ç¶÷ÀÌ ÀÛ¾÷ÇÏ°í ÀÖ´ÂÁö º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¸®´ª½º ¹èÆ÷ÆǵéÀº ´ëºÎºÐ finger¸¦ ÇÒ ¼ö ÀÖµµ·Ï Çصξú´Âµ¥ ÀÌ´Â º¸¾È¿¡ °ü½É ¾ø±â ¶§¹®ÀÌ ¾Æ´Ï´Ù. ¸®´ª½º´Â »óÈ£ ½Å·Ú¿¡ ÀÇÇØ °³¹ßµÇ´Â ¿î¿µÃ¼°èÀ̱⠶§¹®ÀÌ´Ù. ÇÏÁö¸¸ Áß¿äÇÑ ÀÓ¹«¸¦ ¼öÇàÇÏ°í ħÀÔÀÚ¸¦ ¸·¾Æ¾ß ÇÏ´Â °ø°³ ¼­¹öµéÀº À̸¦ ¸·¾Æ¾ß ÇÑ´Ù. finger¸¦ ¸·Àº È£½ºÆ®ÀÎ °æ¿ì¿¡´Â ´ÙÀ½°ú °°Àº ¸Þ½ÃÁö°¡ ³ª¿Â´Ù.

[yong@freeyong src3]$ finger @localhost
[localhost]
finger: connect: Connection refused

¾î¶»°Ô º¸¸é finger¿Í °°ÀÌ Áñ°Å¿î Á¤º¸¸¦ Á¦°øÇÏ´Â ¼­ºñ½º¸¦ ¸î¸î ¾ÇÀǸ¦ °¡Áø Àΰ£µé ¶§¹®¿¡ ¾²Áö ¸øÇÑ´Ù´Â °ÍÀº ºÒÇàÇÑ ÀÏÀÌ ¾Æ´Ò ¼ö ¾ø´Ù. ÀÏ´Ü ÀÌ Á¤µµ¸¸ ºÀ¼âÇصµ ¿©·¯ºÐÀÇ ½Ã½ºÅÛÀ» °¡Áö°í ³î°í ½Í¾îÇÏ´Â »ç¶÷µé¿¡°Ô ºÒÄè°¨À» ¾È°ÜÁÙ °ÍÀÌ´Ù. ¶Ç´Â µµÀüÀÇ¿åÀ» ´õ¿í ºÎÃßÅ°´Â °ÍÀϱî?

/etc/ftpusers

ÀÌ ÆÄÀÏÀº À̸§ÀÌ ÀǹÌÇÏ´Â ¹Ù¿Í´Â ´Þ¸® ÀÌ ÆÄÀÏ ¾È¿¡ ³ª¿­ÇÑ »ç¿ëÀÚµéÀº ftp ¼­ºñ½º¸¦ »ç¿ëÇÒ ¼ö ¾øµµ·Ï Çϴµ¥ ±× ¸ñÀûÀÌ ÀÖ´Ù.

root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody

ÆÄÀÏ ³»¿ëÀ» »ìÆ캸¸é Àß ¾Ë°ÚÁö¸¸ ³ª¿­µÈ »ç¿ëÀÚµéÀº ÀϹÝÀûÀÎ »ç¿ëÀÚµéÀÌ ¾Æ´Ï°í ½Ã½ºÅÛ ¿î¿µ¿¡ ÇÊ¿äÇÑ Æ¯¼öÇÑ ¸ñÀûÀÇ »ç¿ëÀÚ IDµéÀÌ´Ù. À̵éÀº ftp ·Î±×ÀÎ ¸»°íµµ telnet °°Àº °ÍÀ¸·Îµµ Àý´ë µé¾î¿Í¼­´Â ¾ÈµÇ´Â »ç¿ëÀÚµéÀÌ´Ù. ÁÖ¸ñÇÒ ¸¸ÇÑ °ÍÀ¸·Î´Â ¸Ç ù ÁÙÀÇ root¸¦ µé ¼ö Àִµ¥ root »ç¿ëÀÚ·Î ftpÇÏ´Â ÀÏÀº ±Øµµ·Î À§ÇèÇÑ ÀÏÀ̱⠶§¹®ÀÌ´Ù. root°¡ ÆÄÀÏ Àü¼Û ÇÁ·ÎÅäÄÝÀÎ ftp·Î µé¾î¿Í¼­ Áß¿äÇÑ ÆÄÀÏÀ» ¸ù¶¥ °¡Á®°£´Ù°Å³ª Áß¿ä ÆÄÀÏÀ» Áö¿î´ÙµçÁö ¶Ç´Â Áß¿äÇÑ ¼­¹ö¸¦ Æ®·ÎÀÌ ¸ñ¸¶¿Í ±³Ã¼ÇÑ´ÙµçÁö ÇÒ ¶§´Â ¾î¶»°Ô Çϰڴ°¡?

/etc/securetty

ÀϹÝÀûÀ¸·Î root´Â ÀÚ½ÅÀÌ °ü¸®ÇÏ´Â ¼­¹ö ÄÜ¼Ö ¾Õ¿¡ ¾É¾Æ¼­ ÀÛ¾÷ÇØ¾ß ÇÑ´Ù. root°¡ Àü¼¼°è ¾îµð¿¡¼­µç Á¢¼ÓÇÒ ¼ö ÀÖµµ·Ï Çصдٸé ÀÌ´Â Å©·¡Ä¿µé¿¡°Ô ¿©·¯ºÐÀÇ ½Ã½ºÅÛÀ» Á¦¹°·Î °®´Ù¹ÙÄ¡´Â ÀÏ°ú ´Ù¸¦ ¹Ù ¾ø´Ù.

tty1
tty2
tty3
tty4
tty5
tty6
tty7
tty8

±âº» ¼³Á¤Ä¡´Â ¸®´ª½º °¡»ó ÄÜ¼Ö 8 °³ÀÏ °ÍÀÌ´Ù. ±Øµµ·Î ¿¹¹ÎÇÑ »ç¶÷µéÀº tty1 Çϳª¸¸ ³²°ÜµÎ±âµµ ÇÑ´Ù. Áö³­ 9 ¿ù ¹èÆ÷µÇ¾ú´ø ¾ËÂ¥ ½½·¢¿þ¾î 3.1Àº ¹Ù·Î ÀÌ ÆÄÀÏ¿¡ Ä¿´Ù¶õ ¹®Á¦¸¦ °®°í ÀÖ´Ù. ÄÜ¼Ö »Ó ¾Æ´Ï¶ó ¿ÜºÎ¿¡¼­ ÅÚ³Ý ·Î±×ÀÎÇÒ ¼ö ÀÖµµ·Ï À߸ø ¼³Á¤µÇ¾î Àֱ⠶§¹®ÀÌ´Ù. ¸¸¾à ¿©·¯ºÐÀÌ ¾ËÂ¥ ½½·¢¿þ¾î 3.1 »ç¿ëÀÚ¶ó¸é ÀÌ ÆÄÀÏÀ» Áö±Ý Áï½Ã Á¡°ËÇغ¸±â ¹Ù¶õ´Ù. ±× ¿ÜÀÇ ¹öÀü¿¡´Â ÀÌ·± ¹®Á¦°¡ ¾ø´Ù. ¸¹Àº »ç¶÷µéÀÌ ¿ÜºÎ¿¡¼­ root·Î ·Î±×ÀÎÇÒ ¼ö ¾ø´Ù¸é À߸øµÈ °Í ¾Æ´Ï³Ä°í È£¼ÒÇÏ´Â »ç¶÷µéÀÌ Á¾Á¾ ÀÖ´Ù. À߸øµÈ °ÍÀÌ ¾Æ´Ï°í Áö±ØÈ÷ Á¤»óÀûÀÎ ¼³Á¤ÀÌ´Ù. ±»ÀÌ ¿ø°ÝÁö¿¡¼­ Á¢¼ÓÇÏ¿© root ÀÛ¾÷À» ÇÏ°í ½Í´Ù¸é ÀÏ¹Ý °èÁ¤À¸·Î ·Î±×ÀÎÇÑ ÈÄ su ¸í·ÉÀ» »ç¿ëÇ϶ó.

tcpd È£½ºÆ® Á¢±Ù Á¦ÇÑ ¸ÞÄ¿´ÏÁò

À§¿¡¼­ º» inetd.conf ¼³Á¤ ÆÄÀÏÀ» ÇÑ ¹ø ÀÚ¼¼È÷ »ìÆ캸¸é ´ÙÀ½°ú °°Àº ÁÙÀ» ¹ß °ßÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd

ÅÚ³Ý ¼­ºñ½º¿¡ ´ëÇÑ ½ÇÁ¦ ¼­¹ö ÇÁ·Î±×·¥Àº in.telnetdÀÌ´Ù. ±×·±µ¥ ¼³Á¤ ÆÄÀÏ Çü½ÄÀÇ ¼­¹ö ÀÚ¸®¿¡´Â in.telnetd°¡ ÀÖ´Â °ÍÀÌ ¾Æ´Ï¶ó /usr/sbin/tcpd¶ó´Â ÇÁ·Î±×·¥ÀÌ ³õ¿© ÀÖ´Ù. ftp³ª ´Ù¸¥ ¼³Á¤À» º¸¾Æµµ tcpd°¡ ÀÚ¸®¸¦ Â÷ÁöÇÏ°í ÀÖ´Ù´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù.

¹Ù·Î tcpd´Â ±× µÚ¿¡ ÀûÀº ¼­¹ö¿¡ ´ëÇÏ¿© ·Î±×ÀÎ, Á¢±Ù Á¦ÇÑ ¸ÞÄ¿´ÏÁòÀ» Á¦°øÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. inetd¿¡ ÀÇÇØ ½ÇÇàµÉ ¶§¸¶´Ù tcpd´Â 2 °³ÀÇ ¼³Á¤ ÆÄÀÏÀ» ÀÐÀº ´ÙÀ½ ±× ¾È¿¡ Á¤ÀǵǾî ÀÖ´Â ±ÔÄ¢¿¡ ÀÇ°ÅÇÏ¿© ¼­ºñ½º¿¡ ´ëÇÑ Á¢±Ù Çã¶ô, °ÅºÎ ¿©ºÎ¸¦ °áÁ¤ÇÑ´Ù.

¼³Á¤ ÆÄÀÏÀ» Àд ¼ø¼­´Â /etc/hosts.allow ´ÙÀ½ /etc/ho sts.deny ÀÌ´Ù. ¿©·¯ºÐÀÌ ¸í½ÉÇØ¾ß ÇÒ »çÇ×Àº tcpd´Â ¼³Á¤ ÆÄÀÏÀ» ÀÐÀ¸¸é¼­ ¸Ç óÀ½ ºÎÇյǴ ±ÔÄ¢À» ¸¸³ª¸é °Å±â¼­ ¸ØÃá´Ù´Â »ç½ÇÀÌ´Ù. ¾î¶² °ÍÀ» ÁÖÀÇÇØ¾ß ÇÏ´ÂÁö¿¡ ´ëÇؼ­´Â °¢ ¼³Á¤ ÆÄÀÏ¿¡ ´ëÇÑ ¼³¸íÀ» ÇÒ ¶§ ¾ð±ÞÇϱâ·Î ÇÏ°Ú´Ù. ¸¸¾à ºÎÇյǴ ±ÔÄ¢À» ¹ß°ßÇÏÁö ¸øÇϸé Çã¶ôÀ¸·Î °£ÁÖÇÑ´Ù.

/etc/hosts.allow

ÀÌ ÆÄÀÏÀº Çã¿ë ±ÔÄ¢À» Á¤ÀÇÇÑ´Ù. ¼³Á¤ Çü½ÄÀº ¸Å¿ì °£´ÜÇÏ´Ù.

<¼­ºñ½º ¸ñ·Ï>: <È£½ºÆ® ¸ñ·Ï> [: ¸í·É]

<¼­ºñ½º ¸ñ·Ï>Àº ±ÔÄ¢À» Àû¿ëÇÒ ¼­ºñ½ºÀÇ ¸ñ·ÏÀ¸·Î¼­ °¢°¢ÀÇ Ç׸ñÀº ÄÞ¸¶(,)·Î ±¸ºÐÇÏ¿© ³ª¿­ÇÑ´Ù. ¼­¹ö¸íÀ¸·Î´Â ftpd, telnetd, fingerd µîÀ» µé ¼ö ÀÖ´Ù. <È£½ºÆ® ¸ñ·Ï>Àº È£½ºÆ®¸íÀ» ³ª¿­ÇÑ °ÍÀε¥ ¿ª½Ã ÄÞ¸¶·Î ±¸ºÐÇÑ´Ù. È£½ºÆ®¸í ÀÌ¿Ü¿¡µµ IP ÁÖ¼Ò¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ È£½ºÆ®¸í°ú IP ÁÖ¼Ò¿¡ ´ëÇÏ¿© ¿ÍÀϵå Ä«µå ¹®ÀÚ¸¦ »ç¿ëÇÏ´Â °ÍÀÌ °¡´ÉÇÏ´Ù.

¿¹¸¦ µé¾î gw.vk2ktj.ampr.org¿Í °°ÀÌ ÇϳªÀÇ È£½ºÆ®¸¦ ÁöÁ¤ÇÏ´Â ¹æ¹ýµµ ÀÖ°í .uts.edu.au¿Í °°ÀÌ È£½ºÆ®¸íÀÌ Àú·¸°Ô ³¡³ª´Â ¸ðµç È£½ºÆ®¿¡ ´ëÇÏ¿© ÀÏ°ý ÁöÁ¤ÇÏ´Â °Íµµ °¡´ÉÇÏ´Ù. ¸¸¾à 44.À̶ó°í Ç¥ÇöÇϸé ÀÌ ¼ýÀÚ·Î ½ÃÀÛÇÏ´Â ¸ðµç IPÁÖ¼Ò¸¦ °¡Áø È£½ºÆ®¸¦ °¡¸®Å°´Â °ÍÀÌ´Ù.

ÀÌ¿Ü¿¡´Â Ưº°ÇÑ ½Éº¼ÀÌ Àִµ¥ ALLÀº ±ÛÀÚ ±×´ë·Î ÀÎÅÍ³Ý »óÀÇ ¸ðµç È£½ºÆ®¸¦ ÀǹÌÇϸç LOCALÀº µµÆ®(.) ¹®ÀÚ¸¦ Æ÷ÇÔÇÏÁö ¾Ê´Â ¸ðµç È£½ºÆ®¸íÀ» °¡¸®Å°´Âµ¥ Áï ¿©·¯ºÐÀÇ È£½ºÆ® ¸Ó½Å°ú °°Àº µµ¸ÞÀο¡ ¼ÓÇÑ ¸ðµç È£½ºÆ®µéÀ» °¡¸®Å²´Ù. PARANOID´Â ¸¹ÀÌ »ç¿ëµÇÁö ¾ÊÁö¸¸ ÁÖ¼Ò À§Á¶ÀÚµéÀ» °æ°èÇϱâ À§ÇÏ¿© ÁÖ¼Ò¿Í È£½ºÆ®¸íÀÌ ÀÏÄ¡ÇÏÁö ¾Ê´Â È£½ºÆ®¸¦ °¡¸®Å³ ¶§ »ç¿ëÇÑ´Ù. ¸¶Áö¸·À¸·Î EXCEPT´Â ¿µ¾î ¶æ ±×´ë·Î Àüü È£½ºÆ®¿¡¼­ ¾î¶² È£½ºÆ®¸¦ Á¦¿ÜÇÒ ¶§ »ç¿ëµÇ´Â Å°¿öµåÀÌ´Ù.

<¸í·É> ºÎºÐÀº ÀϹÝÀûÀ¸·Î Àû¾îÁÖÁö ¾Ê´Âµ¥ Àû¾îÁشٸé tcpd¿¡ ÀÇÇØ ±× ±ÔÄ¢ÀÌ Àû¿ëµÉ ¶§¸¶´Ù ÁÖ¾îÁø ¸í·ÉÀ» ¼öÇàÇϵµ·Ï Çϵµ·Ï µÇ¾î ÀÖ´Ù. ¸í·ÉÀº ¿ÏÀüÇÑ Æнº¸íÀ¸·Î Àû¾îÁÖ¾î¾ß ÇÑ´Ù. º¸Åë ´©°¡ È£½ºÆ®¿¡ Á¢¼ÓÇÏ·Á°í ½ÃµµÇÏ´ÂÁö È®ÀÎÇÏ´Â ¸í·É, ƯÁ¤ÀÎ Á¢¼ÓÇÒ ¶§ ½Ã½ºÅÛ °ü¸®ÀÚ¿¡°Ô ÀÚµ¿À¸·Î ¸ÞÀÏÀ̳ª °æ°í ¸Þ½ÃÁö¸¦ º¸³»µµ·Ï ÇÏ´Â ¸í·ÉÀ» Àû´Â´Ù.

# /etc/hosts.allow
#
# ¸ÞÀÏÀ» ¸ðµç »ç¶÷¿¡°Ô Çã¿ë
in.smtpd: ALL
# telnet°ú ftp´Â °°Àº µµ¸ÞÀο¡ ¼ÓÇÑ »ç¶÷°ú Áý¿¡ ÀÖ´Â º»ÀÎÀÇ È£½ºÆ®
# ¿¡¸¸ Çã¿ë
telnetd, ftpd: LOCAL, myhost.athome.org.au
# finger¸¦ Çã¿ëÇ쵂 ´©°¡ ¿äûÇß´ÂÁö ±â·ÏÀ» ³²±ä´Ù.
fingerd: ALL: (finger @%h | mail -s "finger from %h" root)

/etc/hosts.deny

ÀÌ ÆÄÀÏÀº ¼­ºñ½º °ÅºÎ¿¡ ´ëÇÑ ÆÄÀÏÀÌ´Ù. ÀϹÝÀûÀ¸·Î ALL: ALLÀ̶ó´Â ÁÙ Çϳª¸¦ ³Ö¾î¼­ /etc/hosts.allow¿¡¼­ Çã°¡µÇÁö ¾Ê´Â ¸ðµç °Í¿¡ ´ëÇÏ¿© ±âº»ÀûÀ¸·Î °ÅºÎ Á¤Ã¥À» »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ´Ù°í º»´Ù. /etc/hosts.deny¿¡¼­ ±âº» Á¤Ã¥À¸·Î ¸ðµç ¼­ºñ½º¿¡ ´ëÇÏ¿© ±×¸®°í ¸ðµç »ç¿ëÀÚ¿¡ ´ëÇÏ¿© °ÅºÎ¸¦ Çسõ´Â ÀÌÀ¯´Â tcpd°¡ /etc/hosts.allow¿Í /etc/hosts .deny¿¡¼­ ¾î¶°ÇÑ ¾Ë¸ÂÀº ±ÔÄ¢µµ ¹ß°ßÇÏÁö ¸øÇÒ ¶§´Â Çã°¡ÇÑ´Ù´Â Á¤Ã¥À» °¡Áö°í Àֱ⠶§¹®ÀÌ´Ù. ±âº»ÀûÀÎ °ÅºÎ Á¤Ã¥ ´ÙÀ½¿¡ /etc/hosts.allow¿¡ Çϳª¾¿ Çã°¡ÇÏ´Â °ÍÀÌ ¿Ã¹Ù¸¥ ÀýÂ÷¶ó°í º»´Ù.

ÁÖÀÇÇÒ °ÍÀº Àý´ë /etc/hosts.allow¿¡ ALL: ALL°ú °°Àº ¹«ÁöÇÑ ¼³Á¤Àº ÇÏÁö ¸»¾Æ´Þ¶ó´Â °ÍÀÌ´Ù. ±×¸®°í tcpdÀÇ ±ÔÄ¢ Á¡°Ë Ư¼º »ó Ư¼öÇÑ ±ÔÄ¢À» ¾Õ¿¡ µÎ°í ÀϹÝÀûÀÎ ±ÔÄ¢À» µÚ¿¡ µÐ´Ù. ¼ø¼­°¡ Áß¿äÇϱ⠶§¹®ÀÌ´Ù. ¿©·¯ºÐÀÌ tcpd ¼³Á¤¸¸ ÀßÇصξ ÈǸ¢ÇÑ °ü¸®ÀÚ¶ó´Â Æò°¡¸¦ ¹ÞÀ» ¼ö ÀÖÀ¸¸ç Å©·¡Ä¿ ÀÔÀå¿¡¼­´Â ¾ÆÁÖ ½Å°æ ¾²ÀÌ´Â ¼­¹ö Ãà¿¡ µé°ÍÀÌ´Ù. ÀÎÅÍ³Ý »ó¿¡ ¼ö¸¹Àº ¼­¹ö Áß ¶Õ±â Èûµç ¿©·¯ºÐÀÇ ¼­¹ö ÁÖÀ§¿¡¼­ ´õ ÀÌ»ó ¹èȸÇÏ·Á µéÁö ¾ÊÀ» °ÍÀÌ´Ù.

°íÁúÀûÀÎ ¼¾µå¸ÞÀÏ ¹®Á¦, RPC ¹®Á¦

Å©·¡Ä¿µéÀÇ ³×Æ®¿öÅ© Áö½Ä ¼öÁØÀÌ ³ô´Ù´Â »ý°¢À» ¹ö·Á¾ß ÇÑ´Ù. ±×µéÀº »ç½Ç ¿©·¯ºÐº¸´Ù ´õ ¾Æ´Â °Íµµ º°·Î ¾ø´Ù. ´ëºÎºÐÀÇ Å©·¡Ä¿µéÀº CERT¿Í °°ÀÌ º¸¾È ¹®Á¦¿¡ ´ëÇÑ Á¤±âÀûÀÎ ¹ßÇ¥ »çÀÌÆ®¿¡ °¡¼­ ÀÌ¹Ì ¾Ë·ÁÁø º¸¾È ¹®Á¦¸¦ ¾Ë¾Æº¸°í °ÔÀ¸¸¥ °ü¸®ÀÚ¸¦ µÎ°í ÀÖ´Â ¼­¹öµé¿¡°Ô Ä¡±Ù´ö°Å¸°´Ù. ÀÌ¹Ì º¸¾È »óÀÇ ¹ö±×°¡ ÀÖ´Ù°í ¹ßÇ¥µÈ ¹öÀü¿¡ ´ëÇؼ­´Â Áï½Ã »õ·Î¿î ¼¾µå¸ÞÀÏ ¹öÀüÀ» »ç¿ëÇϵçÁö ¾Æ´Ï¸é µ¥ºñ¾È ¹èÆ÷ÆÇó·³ smailÀ̶ó´Â °£´ÜÇÑ ¸ÞÀÏ ¼­¹ö¸¦ »ç¿ëÇÏ´Â °Íµµ ÁÁ´Ù.

NFS¿Í Sun RPC ¼­ºñ½º¸¦ Á¦°øÇÏ´Â °æ¿ì¿¡µµ °¢º°ÇÑ ÁÖÀǸ¦ ±â¿ï¿©¾ß ÇÑ´Ù. ÀÌ ¼­ºñ½º¸¦ ¾Ç¿ëÇÒ ¼ö ÀÖÀ»¸¸ÇÑ ¼ÒÁö°¡ ¸¹±â ¶§¹®ÀÌ´Ù. NFSÀÇ °æ¿ì¿¡´Â ¸¶¿îÆ® Çã¿ë ´ë»ó¿¡ ´ëÇÑ ÁÖÀÇ ±íÀº ¼³Á¤ÀÌ ÇÊ¿äÇÏ´Ù. Àб⸸ Çã¿ëÇØ¾ß ÇÒ »ç¶÷¿¡°Ô Àбâ/¾²±â¸¦ Çã¿ëÇÑ´ÙµçÁö ÇÏ´Â ÀÏÀº Àý´ë À־ ¾ÈµÈ´Ù.

2.5 ¸®´ª½º, ÇϳªÀÇ ¿Ïº®ÇÑ ¹æÈ­º® ¼ÒÇÁÆ®¿þ¾î

¸®´ª½º ÀÎÅͳÝ/ÀÎÆ®¶ó³Ý ¼­¹ö È°¿ë ºÐ¾ß¿¡ ÀÖ¾î ¸®´ª½º Ä¿³Î°ú °£´ÜÇÑ °ü¸® µµ±¸ Çϳª¸¸À¸·Îµµ ¾ÆÁÖ ÈǸ¢ÇÑ ¹æÈ­º® ±â´ÉÀ» Çس¾ ¼ö ÀÖ´Ù´Â »ç½Ç¿¡ ¸¹Àº »ç¶÷µéÀÌ ³î¶ó¿öÇÏ°í ÀÖ´Ù. ¾ÆÁ÷Àº ½ÇÇèÀûÀÎ ¼öÁØÀÇ ÄÚµå¶ó°í ÇÏÁö¸¸ ¸®´ª½º¿¡¼­ ½ÇÇèÀûÀÌÁö ¾ÊÀº °ÍÀÌ ¾ó¸¶³ª ÀÖ¾ú´ø°¡? ±×¸®°í ¸®´ª½º¿¡¼­ ¸»ÇÏ´Â ½ÇÇèÀû ÄÚµå´Â ¿©·¯ºÐÀÌ ÀÌ¹Ì ¾Ë°í ÀÖ´Â »ó¿ë ¼ÒÇÁÆ®¿þ¾îÀÇ º£Å¸ ¹öÀü°ú´Â ¼º°ÝÀÌ ´Ù¸£´Ù. ¶ÇÇÑ ½ÇÇèÀû ÄÚµå¶ó ÇÒÁö¶óµµ ¿©·¯ºÐÀÇ ½ÇÁ¦ Æò°¡¿¡ µû¶ó ¾µ¸¸ÇÑ °ÍÀ¸·Î ÆǸíµÇ¸é ÁÁÀº ÀÏÀÌ°í ¸¸¾à ±×·¸Áö ¸øÇÏ´Ù¸é äÅÃÇÏÁö ¾ÊÀ¸¸é ±×¸¸ÀÌ´Ù.

¹æÈ­º®(Firewall)À̶õ ¹«¾ùÀΰ¡?

¹æÈ­º®À̶ó ÇÔÀº ÀÚµ¿Â÷ ºÐ¾ßÀÇ ¿ë¾î¿´´Ù°í ÇÑ´Ù. ¹æÈ­º®Àº ÀÚµ¿Â÷ ¿£Áø°ú ½Â°´ »çÀÌÀÇ Â÷Æó¸· ¿ªÇÒÀ» ÇØÁÖ´Â ÀåÄ¡¸¦ °¡¸®Å²´Ù. ÀÚµ¿Â÷ ¿£Áø¿¡ ºÒÀÌ ºÙ´Â »óȲÀÌ ¹ú¾îÁ®µµ È­Àç·ÎºÎÅÍ ½Â°´À» º¸È£Çϱâ À§Çؼ­ °í¾ÈµÇ¾ú´Ù. ÀÌ ¿ë¾î°¡ ±×´ë·Î ³×Æ®¿öÅ© ºÐ¾ß·Î ¿Í¼­ ÄÄÇ»ÅÍ ³×Æ®¿öÅ© °ü·ÃÀÇ Àǹ̸¦ °¡Áö°Ô µÇ¾ú´Âµ¥ ¿©±â¼­ÀÇ ¹æÈ­º®À̶õ »çÀûÀÎ ³×Æ®¿öÅ©¸¦ ÀϹÝÀûÀ¸·Î ÀÎÅͳݰú °°Àº °ø°øÀÇ ³×Æ®¿öÅ©·ÎºÎÅÍ º¸È£ÇÏ´Â ÀåÄ¡¸¦ ÅëƲ¾î ¸»ÇÑ´Ù.

¾ÕÀ¸·Î ¹æÈ­º® ¿ªÇÒÀ» Çس»´Â ÄÄÇ»Å͸¦ ±×³É °£´ÜÈ÷ ¹æÈ­º®À̶ó°í ºÎ¸¥´Ù. ÀÌ ¹æÈ­º®Àº ¿©·¯ºÐÀÌ º¸È£ÇÏ°íÀÚ ÇÏ´Â ÀÎÆ®¶ó³Ý°ú °°Àº »çÀûÀÎ ³×Æ®¿öÅ©¿Í ÀÎÅÍ³Ý µÑ ´Ù Á¢±ÙÇÒ ¼ö Àִ Ưº°ÇÑ À§Ä¡¿¡ ³õÀÎ ÄÄÇ»ÅÍÀÌ´Ù. °£´ÜÈ÷ ¸»ÇØ ÀÎÆ®¶ó³ÝÀº ÀÎÅͳÝÀ» Á¢±ÙÇÒ ¼ö ¾øÀ¸¸ç ¶ÇÇÑ ÀÎÅͳÝÀº ¿©·¯ºÐÀÇ ÀÎÅͳÝÀ» Á¢±ÙÇÒ ¼ö ¾øµµ·Ï ÇÏ´Â °ÍÀÌ´Ù. ÀÌ·¸°Ô ÀÎÆ®¶ó³Ý°ú ÀÎÅͳÝÀÇ ¿¬°á ºÎºÐ¿¡¼­ ¹æÈ­º®ÀÌ Â÷´ÜÇÏ°í ÀÖÀ¸¹Ç·Î ¸¸¾à ÀÎÆ®¶ó³Ý¿¡ ÀÖ´Â ¾î¶² »ç¶÷ÀÌ ÀÎÅͳÝÀ» »ç¿ëÇÏ°íÀÚ ÇÑ´Ù¸é ¿ì¼±Àº ¹æÈ­º®¿¡ ÅÚ³ÝÀ¸·Î ·Î±×ÀÎÇÑ ÈÄ ±× °÷¿¡¼­ ÀÎÅͳÝÀ» »ç¿ëÇØ¾ß ÇÑ´Ù. º¸Åë °¡Àå °£´ÜÇÑ ÇüÅÂÀÇ ¹æÈ­º®Àº ÀÌÁß ³×Æ®¿öÅ©·Î¼­ ¼­·Î ´Ù¸¥ ³×Æ®¿öÅ© µÎ °³¿¡ ´ëÇÏ¿© °¢°¢ ¿¬°áµÇ¾î ÀÖ´Ù. À̼­³×Æ® Ä«µå¸¦ 2°³ ´Þ°í Àְųª Çϳª´Â À̼­³×Æ®, Çϳª´Â ÀüÈ­¼±À̳ª Àü¿ë¼±À» ÅëÇÑ PPP Á¢¼ÓÀÎ °æ¿ì°¡ ¸¹´Ù.

Áغñ »çÇ×

  • Ä¿³Î ÄÄÆÄÀÏÀ» ÇØ¾ß ÇϹǷΠĿ³Î ¼Ò½º°¡ ÇʼöÀûÀÌ´Ù. °¢ ¹èÆ÷ÆÇ¿¡´Â Ä¿³Î ¼Ò½º°¡ ±âº»ÀûÀ¸·Î Æ÷ÇԵǾî ÀÖ´Ù(Ä¿³Î ¹öÀü 2.0.0 ÀÌ»ó).
  • ipfwadm À̶ó´Â ³×Æ®¿öÅ© °ü¸® µµ±¸°¡ ÀÖ¾î¾ß ÇÑ´Ù. ÃֽŠ¹èÆ÷ÆÇ¿¡´Â ¸ðµÎ Æ÷ÇԵǾî ÀÖ´Ù. ¸¸¾à ¿©·¯ºÐÀÇ ¹èÆ÷ÆÇ¿¡¼­ ãÀ» ¼ö ¾ø´Ù¸é ftp.xos.nl/pub/linux/ipfwadm¿¡ °¡¼­ ipfwadm-2.3.0. tar.gz ÆÄÀÏÀ» ¹Þ¾Æ ¿Í¼­ °£´ÜÈ÷ make ±×¸®°í make install °úÁ¤¸¸À¸·Î ½±°Ô ¼³Ä¡ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

¸®´ª½º ³×Æ®¿öÅ· ÄÚµå·Î ÇÒ ¼ö ÀÖ´Â ÀÏÀº?

¿ì¼± IP ¹æÈ­º®À» ±¸ÃàÇÒ ¼ö ÀÖ´Ù. IP ¹æÈ­º®À̶ó ÇÔÀº ¿©·¯ºÐÀÌ Á¤ÇÏ´Â ±ÔÄ¢ (¾î¶² È£½ºÆ® ¶Ç´Â ³×Æ®¿öÅ©·ÎºÎÅÍ ¿À´Â ¶Ç´Â °¡´Â ÆÐŶÀ» Â÷´ÜÇÒ °ÍÀΰ¡? ¾î ¶² ¼­ºñ½º¿¡ °üÇÑ ÆÐŶÀ» Â÷´ÜÇÒ °ÍÀΰ¡?)¿¡ µû¶ó ÆÐŶÀ» Çã°¡Çϰųª °ÅºÎÇÒ ¼ö ÀÖ´Â ±â´ÉÀÌ´Ù. ÀÌ·¸°Ô ¾Æ¿¹ ÆÐŶ ¼öÁØ¿¡¼­ºÎÅÍ Â÷´ÜÇÔÀ¸·Î½á ±âÁ¸ÀÇ °¢ ¼­ ¹ö ¼ÒÇÁÆ®¿þ¾î ÀÚüÀÇ º¸¾È ±â´Éº¸´Ù ÈξÀ ³ôÀº ¼öÁØÀÇ º¸¾È ´ëÃ¥ÀÌ ¸¶·ÃµÉ ¼ö ÀÖ°Ô µÇ¾ú´Ù. ÀÌ¹Ì Ä¿´Ù¶õ ¾÷üµé¿¡¼­´Â ¸ðµÎ ¹æÈ­º® Çϵå¿þ¾î³ª ¼ÒÇÁÆ®¿þ¾î¸¦ »ç¿ëÇÏ°í ÀÖ´Ù.

¸®´ª½º´Â ÀÌ ¹æÈ­º® ±â´ÉÀ» Ä¿³Î ³×Æ®¿öÅ· ¼öÁØ¿¡¼­ ó¸®ÇÏ°í ÀÖ´Ù. ÀÌ´Â ¿©·¯ºÐÀÌ °í°¡ÀÇ ¶ó¿ìÅÍ Àåºñ³ª ¹æÈ­º® Àü¹® ¼ÒÇÁÆ®¿þ¾î¸¦ ±¸ÀÔÇÏÁö ¾Ê°í ´Ü¼øÈ÷ ¸®´ª½º¸¦ ¼³Ä¡ÇÏ´Â °Í Çϳª¸¸À¸·Îµµ °ÔÀÌÆ®¿þÀÌ, ¶ó¿ìÅÍ ¿ªÇÒÀÇ Çس¾ ¼ö ÀÖ°Ô µÇ¾ú´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. µ· ¸¹Àº ȸ»çµéÀº ÀÏ´Ü Á¦Ä¡°í¶óµµ Çб³³ª ºñ¿µ¸® »çȸ´ÜüµéÀº ÃæºÐÈ÷ ¸®´ª½ºÀÇ ÀÌ ±â´ÉÀ¸·ÎºÎÅÍ ÇýÅÃÀ» ¹ÞÀ» Áغñ°¡ µÇ¾î ÀÖ´Ù°í ÇÒ ¼ö ÀÖ´Ù.

»óȲÀº ÀϹÝÀûÀ¸·Î ´ÙÀ½°ú °°´Ù. ÇϳªÀÇ À̼­³×Æ® ¶Ç´Â ±âŸ ¹æ½ÄÀÇ ÀÎÆ®¶ó³ÝÀÌ ±¸ÃàµÇ¾î ÀÖ´Â »óÅÂÀÌ´Ù. ±×¸®°í ±× ÀÎÆ®¶ó³Ý°ú ÀÎÅͳÝÀÇ Á¢ÃË ÁöÁ¡¿¡ ¸®´ª½º¸¦ žÀçÇÑ °ÔÀÌÆ®¿þÀÌ ¸Ó½ÅÀÌ ³õ¿© ÀÖ´Ù. ÀÎÆ®¶ó³ÝÀÌ ÀÎÅͳݰú ¿¬°áÇϸ鼭 Á¦ÀÏ Áß¿äÇÑ ¸éÀÌ ¹Ù·Î ÀÎÅͳÝÀÇ ÀÚ¿øÀ» dzºÎÈ÷ È°¿ëÇϸ鼭µµ ÀÎÆ®¶ó³ÝÀÇ Á¤º¸°¡ ¿ÜºÎ·Î À¯ÃâµÇÁö ¾Ê°í ÀÎÅͳÝÀÇ ÀáÀçÀûÀÎ °ø°Ý¿¡ ´ëÇÑ ºÒ¾ÈÀ» ÇؼÒÇÏ´Â °Í ÀÌ´Ù. ¹Ù·Î ¸®´ª½º°¡ ÀÎÅͳݰú ÀÎÆ®¶ó³ÝÀÇ Áß°£¿¡ ³õ¿© ÆÐŶ ÇÊÅ͸µ(Filtering) ÀÛ¾÷À» Çس¿À¸·Î½á ¹®Á¦¸¦ ÇØ°áÇÏ°Ô µÉ °ÍÀÌ´Ù.

±× ´ÙÀ½ ÇÒ ¼ö ÀÖ´Â ÀϷδ IP ±³Åë·®¿¡ ´ëÇÑ ºÐ¼®(IP Acco unting) ±×¸®°í ÇϳªÀÇ °ø½ÄÀûÀÎ ÀÎÅÍ³Ý IP¸¦ ÀÎÆ®¶ó³ÝÀÇ ¿©·¯ ÄÄÇ»Å͵éÀÌ °øÀ¯ÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â IP ¸Å½ºÄ¿·¹µù(IP Masquerading) ±â´ÉÀ» µé ¼ö ÀÖ´Ù. IP ºÐ¼® ±â´ÉÀ» °°ÀÌ È°¿ëÇÏ¸é °ü¸®ÀÚÀÇ ÀÔÀå¿¡¼­ ¾ê±âÄ¡ ¾ÊÀº ¹æÈ­º® º¸¾È ±¸¸ÛÀ» ¹ß°ßÇÏ´Â °ÍÀÌ °¡´ÉÇÏ´Ù.

IP ¹æÈ­º®(IP Firewall)

¿ì¼± Ä¿³Î ÄÄÆÄÀÏÀ» ÇØ¾ß ÇÒ ÇÊ¿ä°¡ ÀÖÀ»Áö ¸ð¸¥´Ù.

Networking options --->
[*] Network firewalls
....
[*] IP: forwarding/gatewaying
....
[*] IP: firewalling
[ ] IP: firewall packet logging

À§¿¡¼­ ³ªÅ¸³½ ¿É¼ÇÀÌ Ä¿³Î ±â´É¿¡ µé¾î ÀÖ¾î¾ß¸¸ °¡´ÉÇÏ´Ù. ¸¸¾à ¾ÕÀ¸·Î ¼öÇàÇÏ´Â ¸í·ÉÀÌ Á¦´ë·Î ½ÇÇàµÇÁö ¾ÊÀ» ¶§´Â Ä¿³Î ÄÄÆÄÀÏ °úÁ¤À» ÀçÂ÷ È®ÀÎÇغ¸±â ¹Ù¶õ´Ù. ³ëÆĽÉÀÌÁö¸¸ Á¤¸»·Î ¸¹Àº »ç¶÷µéÀÌ Ä¿³ÎÀ» ÄÄÆÄÀÏÇصΰí Á¦ À§Ä¡¿¡ Ä¿³ÎÀ» º¹»çÇÏ°í lilo¸¦ ´Ù½Ã ½ÇÇà½ÃÅ°Áö ¾Ê´Â °æ¿ì°¡ Çã´ÙÇÏ´Ù. ·¹µåÇÞ ¹èÆ÷ÆÇÀÇ °æ¿ì lilo.conf°¡ °¡¸®Å°°í ÀÖ´Â Ä¿³ÎÀÇ À§Ä¡´Â / µð·ºÅ͸®°¡ ¾Æ´Ï¶ó /boot µð·ºÅ͸®ÀÌ´Ù. Ä¿³Î ÄÄÆÄÀÏ °úÁ¤Áß make zlilo´Â Ä¿³ÎÀ» /boot À§Ä¡°¡ ¾Æ´Ñ / À§Ä¡¿¡ º¹»çÇÏ°í lilo¸¦ ½ÇÇà½ÃÅ°¹Ç·Î °¢º°È÷ ÁÖÀÇÇ϶ó.

IP ÆÐŶ ÇÊÅ͸µ ¹æÈ­º®

¹æÈ­º®À» ±¸ÃàÇϴµ¥´Â Å©°Ô 2 °¡Áö ¹æ¹ýÀÌ ÀÖ´Ù°í ÇÑ´Ù. Çϳª´Â Áö±ÝºÎÅÍ ¼³¸íÇÏ°íÀÚ ÇÏ´Â ÆÐŶ ÇÊÅ͸µ ¹æÈ­º®(IP Packet Filtering Firewall)ÀÌ°í ³ª¸ÓÁö Çϳª´Â ÇÁ·Ï½Ã(Proxy, ´ë¸®ÀÎ) ¼­¹ö ¹æ¹ýÀÌ ÀÖ´Ù. ÆÐŶ ÇÊÅ͸µÀ̶ó´Â ¸»ÀÌ ÀǹÌÇϵí ÀÌ·± ÇüÅÂÀÇ ¹æÈ­º®Àº ÆÐŶÀ» ¿©·¯ºÐÀÌ Á¤Çϴ ƯÁ¤ ±ÔÄ¢¿¡ µû¶ó °É·¯³»´Â ¹æ½ÄÀÌ´Ù. ¾î¶² ÆÐŶÀº ±×³É °ÅºÎÇعö¸± ¼ö ÀÖ°í ¾î¶² ÆÐŶ¿¡ ´ëÇؼ­´Â Çã°¡ÇÒ ¼ö ÀÖ´Ù. ¿©±â¼­ Áß¿äÇÑ °ÍÀº ¹Ù·Î ±× ¾î¶² ÆÐŶÀ̶ó´Â ±âÁØÀÌ ¾î¶»°Ô ¼º¸³µÇ´Â°¡ÇÏ´Â °ÍÀÌ´Ù. ÆÐŶ ³»ºÎ¿¡´Â ÆÐŶÀ» º¸³½ ¹ß½ÅÁöÀÇ ÁÖ¼Ò, ÆÐŶÀÌ µµÂøÇÏ°íÀÚ ÇÏ´Â ¸ñÀûÁö ÁÖ¼Ò, ÆÐŶÀÌ µµÂøÇÏ°íÀÚ ÇÏ´Â ¸ñÀûÁöÀÇ Æ÷Æ®(Port) ±×¸®°í TCP/UDP µîÀÇ ÆÐŶ ÇüÅ µî¿¡ ´ëÇÑ Á¤º¸°¡ ±âÀԵǾî ÀÖ´Ù. IP ÆÐŶ ÇÊÅ͸µ ¹æÈ­º®Àº ¹Ù·Î ÆÐŶÀÇ ³»ºÎ¸¦ Á¶»çÇÑ´Ù.

IP ÆÐŶ ÇÊÅ͸µ ±ÔÄ¢

¹ß½ÅÁö/¸ñÀûÁö ÁÖ¼Ò

±× ÆÐŶÀÌ ¾îµð·ÎºÎÅÍ ¿À´ÂÁö ±×¸®°í ¾î´À °÷À¸·Î °¡·Á ÇÏ´ÂÁö Á¡°ËÇÏ¿© °áÁ¤ÇÑ´Ù. ¸î¸î Áö¿ª¿¡ Áö»ç¸¦ µÎ°í Àִ ȸ»ç°¡ ÀÖ´Ù°í ÇÏÀÚ. °¢ Áö¿ª¿¡´Â ÀÎÆ®¶ó³ÝÀÌ ±¸ÃàµÇ¾î ÀÖ°í ±× ÀÎÆ®¶ó³ÝÀº ÀÎÅͳÝÀ» ÅëÇØ ¿¬°áµÇ¾î ÀÖ´Ù. °¢ ÀÎÆ®¶ó³ÝÀº ÀÎÅͳÝÀÇ ¿¬°á ÁöÁ¡¿¡ ¸®´ª½º ¹æÈ­º®À» ¼³Ä¡ÇÏ°í °¢°¢ÀÇ ÀÎÆ®¶ó³Ý ÁÖ¼Ò¸¸ Çã¿ëÇϵµ·Ï ¼³Á¤ÇÏ°í ³ª¸ÓÁö ÁÖ¼Ò¿¡¼­ ¿À´Â ÆÐŶÀº °ÅºÎÇعö¸°´Ù.

ÇÁ·ÎÅäÄÝÀÇ Á¾·ù

TCP, UDP, IGMP

IP ¿É¼Ç

IP ÆÐŶ¿¡ ¸î °¡Áö »çÀûÀÎ ³×Æ®¿öÅ©¿¡°Ô´Â À§ÇèÇÑ ¿É¼ÇµéÀÌ ÀÖ´Ù. ±× Áß Çϳª´Â ´Â ¼Ò½º ¶ó¿ìÆ®(source route) ¿É¼ÇÀε¥ ÀÌ ÆÐŶÀÌ ¿©·¯ºÐÀÇ ³×Æ®¿öÅ©¿¡ µ¹¾Æ´Ù´Ï¸é ¿ÜºÎ¿¡¼­ ¿©·¯ºÐÀÇ ³×Æ®¿öÅ©°¡ ¾î¶»°Ô ±¸ÃàµÇ¾î ÀÖ´ÂÁö ÆľÇÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. ÀϹÝÀûÀ¸·Î ÀÌ·± ÆÐŶÀº °ÅºÎÇØ¾ß ÇÑ´Ù. ¿ÜºÎ¿¡¼­ ¿©·¯ºÐÀÇ ³×Æ®¿öÅ© ±¸¼ºÀ» ¾Ë ÇÊ¿ä°¡ ¾øÁö ¾ÊÀº°¡?

¹ß½ÅÁö/¸ñÀûÁö Æ÷Æ® ¹øÈ£

TCP/UDP Çì´õ ºÎºÐ¿¡´Â Æ÷Æ® ¹øÈ£°¡ ±âÀԵǾî ÀÖ´Ù. TCP/IP ³×Æ®¿öÅ©¿¡¼­´Â ¹Ù·Î Æ÷Æ® ¹øÈ£¸¦ °¡Áö°í ¼­ºñ½º¸¦ ±¸ºÐÇÑ´Ù. ¾î¶² È£½ºÆ®¿¡ µµÂøÇÑ °°Àº ÆÐŶÀ̶ó ÇÒ Áö¶óµµ 23¹ø Æ÷Æ®¸¦ ÇâÇØ ´Þ·Á¿Â ÆÐŶÀº ÅÚ³Ý ¼­ºñ½º¿¡ °ü°èµÈ ÆÐŶÀ̸ç 25¹ø Æ÷Æ®´Â ¸ÞÀÏ ¼­ºñ½º¿¡ °ü·ÃµÈ °ÍÀÌ´Ù. ¿©·¯ºÐÀÌ Àß ¾Ë°í ÀÖ´Â À¥ ¼­ºñ½º´Â ÀϹÝÀûÀ¸·Î 80¹ø Æ÷Æ®¸¦ »ç¿ëÇÑ´Ù. ƯÁ¤ Æ÷Æ® ¹øÈ£°¡ ±âÀÔµÈ ÆÐŶÀ» ÇÊÅ͸µ ÇÔÀ¸·Î½á ¿©·¯ºÐÀº ¾ÆÁÖ ½±°Ô ¼­ºñ½º Á¦ÇÑÀ» ÇÒ ¼ö ÀÖ´Ù. °¨ÀÌ Àß ¿ÀÁö ¾ÊÀ¸¸é /etc/services ÆÄÀÏÀ» °õ°õÀÌ »ìÆ캸±â ¹Ù¶õ´Ù. °¢ ¼­ºñ½º¿¡ °üÇÏ¿© ±×°ÍÀÌ TCP¸¦ »ç¿ëÇÏ´ÂÁö UDP¸¦ »ç¿ëÇÏ´ÂÁö ±×¸®°í »ç¿ëÇÏ´Â Æ÷Æ®´Â ¹«¾ùÀÎÁö ÀûÇô ÀÖ´Ù.

TCP Ç÷¡±×

¿¬°áÁöÇâ(Connection-Oriented) ¹æ½ÄÀÇ TCP ÆÐŶ¿¡´Â ¿¬°á È®¸³À» À§ÇÑ ACK/SYN µîÀÇ ºñÆ®°¡ ÀÖ´Ù. ÀÌ°ÍÀ» ÇÊÅ͸µÇÏ¸é ¿ÜºÎ¿¡¼­´Â ¿©·¯ºÐÀÇ ÀÎÆ®¶ó³Ý¿¡ Á¢¼ÓÇÒ ¼öÁ¶Â÷ ¾øµµ·Ï ÇÒ ¼ö ÀÖÀ¸¸ç ¿À·ÎÁö ³»ºÎ¿¡¼­ ¿ÜºÎ·ÎÀÇ Á¢¼Ó¸¸ Çã°¡ÇÒ ¼ö ÀÖ´Ù. ¿Ö³ÄÇÏ¸é ¿¬°á È®¸³À» ¿äûÇÏ´Â ÆÐŶÀ» ¸ðµÎ Á¦°ÅÇعö¸®±â ¶§¹®ÀÌ´Ù.

ICMP ¸Þ½ÃÁö À¯Çü

ICMP ÆÐŶ¿¡´Â ICMP ¸Þ½ÃÁöÀÇ À¯Çü¿¡ ´ëÇÑ Á¤º¸°¡ ´ã°ÜÀÖ´Ù. ÀÌ ¸Þ½ÃÁöÀÇ À¯ÇüÀ» °É·¯³¾ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î ¾î¶² È£½ºÆ®°¡ »ì¾ÆÀÖ´ÂÁö È®ÀÎÇغ¸´Â ping ¸í·É¿¡¼­ ¹ß½ÅµÇ´Â ¹ÝÇâ ¿äû(Echo Request) ÆÐŶÀ» °ÅºÎÇÏ°Ô µÇ¸é ¿ÜºÎ ħÀÔÀÚ ÀÔÀå¿¡¼­´Â µµ´ëü È£½ºÆ® ÄÄÇ»ÅÍ°¡ ÄÑÁ® ÀÖ´ÂÁö ²¨Á® ÀÖ´ÂÁö Á÷Á¢ º¸Áö ¾Ê°í¼­´Â È®ÀÎÇÒ ±æÀÌ °ÅÀÇ ¾ø´Ù.

ÆÐŶ¿¡ µç ÀÚ·á, ³×Æ®¿öÅ© ÀåÄ¡, ÆÐŶÀÇ ³¯Â¥/½Ã°£

ÀÌ·¯ÇÑ Á¤º¸¿¡ ÀÇ°ÅÇÏ¿© ¿©·¯ºÐÀº ÆÇ´ÜÀ» ³»·Á¾ß ÇÑ´Ù. ¸®´ª½º Ä¿³Î¿¡¼­ Áö¿øÇÏ´Â ÇÊÅ͸µ Á¤Ã¥(Policy)Àº ´ÙÀ½ 3 °¡ÁöÀÌ´Ù.

  • Çã°¡(Accept)
  • ºÎÀÎ(Deny)
  • °ÅÀý(Reject)

¿©±â¼­ ¼³¸íÀÌ ÇÊ¿äÇÑ ºÎºÐÀº ¹Ù·Î ºÎÀΰú °ÅÀýÀÇ Â÷ÀÌÀÏ °ÍÀÌ´Ù. ºÎÀÎÀº ±ÔÄ¢¿¡ ÀÇ°ÅÇÏ¿© ÇÊÅ͸¦ Åë°úÇÒ ¼ö ¾ø´Â ÆÐŶÀ» ¾Æ¹« ¼Ò¸® ¾øÀÌ ¹ö¸®´Âµ¥ ¹ÝÇØ °ÅÀýÀº ÇÊÅ͸¦ Åë°úÇÒ ¼ö ¾ø´Â ÆÐŶÀ» ¹ö¸®¸é¼­ ÆÐŶÀ» º¸³½ Ãø¿¡ ¸ñÀûÁö¿¡ µµ´ÞÇÒ ¼ö ¾øÀ½ ¸Þ½ÃÁö(ICMP Destination Unreachable)¸¦ Ä£ÀýÇÏ°Ô º¸³»ÁØ´Ù. ÀÌ·¸°Ô ÇÏ¸é ¹ß½ÅÁö Ãø¿¡¼­ ¾Æ¹«·± ÀÌÀ¯µµ ¸ð¸¥ ü ÇÑ ¾øÀÌ ±â´Ù¸®´Â ÀÏÀº ¾ø°Ô µÈ´Ù. ºÎÀÎ ¹æ¹ý°ú °ÅÀý ¹æ¹ý¿¡ ´ëÇؼ­´Â ¿©·¯ºÐÀÇ ¸¶À½¿¡ ´Þ·È´Ù.

ipfwadm ¸í·É »ç¿ë¹ý

³×Æ®¿öÅ© º¸¾È¿¡ °üÇÑ °ÅÀÇ ¸ðµç ¼³Á¤À» ÀÌ ¸í·É Çϳª·Î ÇØ°áÇÑ´Ù. µû¶ó¼­ ¿©·¯ºÐÀÌ ´É·Â ÀÖ´Â ¸®´ª½º ³×Æ®¿öÅ© °ü¸®ÀÚ°¡ µÇ·Á¸é »ç¿ë¹ý¿¡ ´É¼÷ÇØ¾ß ÇÑ´Ù. ¿©·¯ºÐµµ ¿¹»óÇÏ°ÚÁö¸¸ ÇϳªÀÇ ¸í·É¿¡¼­ ¸¹Àº °ÍÀ» ÇØ°áÇϱ⠶§¹®¿¡ ¾à°£ ¸¹Àº ¿É¼ÇµéÀ» °¡Áö°í ÀÖ´Ù. ÇÏÁö¸¸ ±×·¸°Ô óÀ½ºÎÅÍ ¾î·Á¿ö ÇÒ ÇÊ¿ä´Â ¾ø´Ù. ¾î¶² ¾î·Á¿î ÀÏÀÌµç °³³ä¸¸ Àß Àâ°í µé¾î°¡¸é Àΰ£ÀÌ ¸¸µç ÀÌ»ó ÀÌÇØÇÒ ¼ö ¾ø´Â °ÍÀº ¾ø´Ù°í Àڽſ¡°Ô Àå´ãÇغ¸ÀÚ.

»ç¿ëÇü½Ä

ipfwadm -A command parameters [options]
ipfwadm -I command parameters [options]
ipfwadm -O command parameters [options]
ipfwadm -F command parameters [options]
ipfwadm -M [ -l | -s ] [options]

¹üÁÖ

ÃÑ 4°³ÀÇ ¹üÁÖ·Î ³ª´­ ¼ö Àִµ¥ IP ȸ°èºÐ¼®(IP Accou nting), IP ÀÔ·Â ¹æÈ­º® (IP Input Firewall), IP Ãâ·Â ¹æÈ­º®(IP Ouput Firewall) ±×¸®°í ¸¶Áö¸·À¸·Î IP Àü´Þ ¹æÈ­º®(IP Forward Firewall)ÀÌ ±×°ÍÀÌ´Ù. ¿µ¹®ÀÚÀÇ ¾Õ ÀÚ¿Í ipfwadm ¸í·ÉÀÇ -A, -I, -O, -F ¿ÍÀÇ °ü°è¸¦ Àß º¸¾ÆµÎ±â ¹Ù¶õ´Ù.

¸í·É(command)

ipfwadm ¸í·É »ç¿ëÇü½Ä¿¡ ÀÖ¾î ¹üÁÖ¸¦ °í¸¥ ÈÄ ±× ´ÙÀ½ ¸í·ÉÀÌ µû¸¥´Ù.

-p <Á¤Ã¥>

¼±ÅÃÇÑ ¹æÈ­º® À¯Çü¿¡ ´ëÇÑ ±âº» Á¤Ã¥À» ¼³Á¤Çϰųª ¼³Á¤ °ªÀÌ ÀÖÀ» ¶§´Â º¯È­ ½ÃŲ´Ù. <Á¤Ã¥> À§Ä¡¿¡ ¿Ã ¼ö ÀÖ´Â °ªÀº À§¿¡¼­µµ ¼³¸íÇÑ ¹Ù ÀÖ´Â accept, deny, rejectÀÌ´Ù. ¸¸¾à ¾Æ¹«·± ±ÔÄ¢¿¡µµ ÇØ´çµÇÁö ¾Ê´Â ÆÐŶÀÌ ¹ß°ßµÇ¸é ¹Ù·Î ±âº» Á¤Ã¥À» »ç¿ëÇÑ´Ù. -I, -O, -F Ç÷¡±×¿Í °°ÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Ù(policy).

-f

±ÔÄ¢À» ¸ðµÎ Áö¿ö¹ö¸°´Ù(flush).

-l

±ÔÄ¢À» È­¸é¿¡ Ç¥½ÃÇÑ´Ù(list).

-a <Á¤Ã¥>

±ÔÄ¢À» Ãß°¡ÇÑ´Ù(append).

-i <Á¤Ã¥>

±ÔÄ¢À» ¸Ç ¾Õ¿¡ »ðÀÔÇÑ´Ù(insert).

-d <Á¤Ã¥>

±ÔÄ¢À» »èÁ¦ÇÑ´Ù(delete).

Àü´ÞÀμö(parameters)

-P ÇÁ·ÎÅäÄÝ

ÆÐŶ ÇüŸ¦ ¼±ÅÃÇÑ´Ù. tcp, udp, icmp ±×¸®°í ¸ðµç ÆÐŶÀ» °¡¸®Å°´Â allÀ» ¼±Åà ÇÒ ¼ö ÀÖ´Ù. »ý·«Çϸé allÀ̶ó°í °£ÁÖÇÑ´Ù(Protocol).

-S ÁÖ¼Ò[/¸¶½ºÅ©] [Æ÷Æ® ...]

ÁÖ¼Ò¿¡ ¿Ã ¼ö Àִ ǥÇöÀº È£½ºÆ®¸í, ³×Æ®¿öÅ©¸í ±×¸®°í Æò¹üÇÑ IP ÁÖ¼ÒÀÌ´Ù. ³Ý ¸¶½ºÅ©¸¦ Àû¾îÁְųª ¶Ç´Â ±×³É ¼ýÀÚ¸¦ Àû¾îÁÖ´Â °Íµµ °¡´ÉÇѵ¥ ¿¹¸¦ µé¾î 24´Â 255.255.255.0°ú °°´Ù. 24ÀÇ Àǹ̴ ¿©±â¼­ IP ÁÖ¼Ò 32 ºñÆ®¿¡ ´ëÇÏ¿© ¿ÞÂÊ 24°³ ºñÆ®°¡ 1ÀÌ°í ³ª¸ÓÁö´Â 0À̶ó´Â ¸»ÀÌ´Ù. Æ÷Æ®¿¡´Â 23, 25¿Í °°Àº Æ÷Æ® ¹øÈ£¸¦ Àû°Å³ª telnet, smtp °°Àº ¼­ºñ½º¸íĪ ¶Ç´Â ICMP ŸÀÔÀ» Àû´Â´Ù. Æ÷Æ®ÀÇ ¹üÀ§¸¦ Ç¥ÇöÇÒ ¶§´Â 1023:65535¿Í °°ÀÌ Æ÷Æ®:Æ÷Æ®¶ó´Â Çü½ÄÀ» »ç¿ëÇÑ´Ù. »ý·«Çϸé 0.0.0.0/0À̶ó´Â °ªÀ» »ç¿ëÇϴµ¥ ÀÌ´Â ¸ðµç ÁÖ¼Ò¸¦ ¶æÇÑ´Ù(Source).

-D ÁÖ¼Ò[/¸¶½ºÅ©] [Æ÷Æ® ...]

-S¿Í »ç¿ë¹ýÀÌ °°´Ù. ´Ü ICMP Æ÷Æ®´Â ¸í½ÃÇÒ ¼ö ¾ø´Ù(Destination).

±× ¹ÛÀÇ ¿É¼Çµé(Options)

-m

Àü´ÞÇϵµ·Ï Çã°¡µÈ ÆÐŶ¿¡ ´ëÇÏ¿© ¸Å½ºÄ¿·¹À̵ùÀ» ½ÇÇàÇÑ´Ù. ÀÌ ¿É¼ÇÀº Àü´Þ ¹æÈ­º®ÀÇ Çã°¡(accept) ±ÔÄ¢ÇÏ°í¸¸ °°ÀÌ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç Ä¿³Î ÄÄÆÄÀÏ ½Ã ¸Å½ºÄ¿·¹À̵ù Áö¿øÀÌ µé¾îÀÖ¾î¾ß ÇÑ´Ù(masquerade).

ipfwadm ¸í·É »ç¿ë ¿¹

¿¹¸¦ 2 °¡Áö µé¾îº¸°Ú´Ù. ÀÌ µÎ °¡Áö ¿¹´Â °ÅÀÇ ºñ½ÁÇÏ´Ù. ÇÏÁö¸¸ µÎ °¡Áö ¿¹·Î ºÎÅÍ ¼­·Î ´Ù¸¥ ºÐÀ§±â¸¦ ´À³¥ ¼ö ÀÖÀ» °ÍÀ̶ó°í »ý°¢ÇÏ¿© ¿©±â ¼Ò°³ÇÑ´Ù. ù ¹ø° »óȲÀº ÀÎÅͳݰú ¿¬°áµÈ ÀÎÅÍÆäÀ̽º¿¡ 199.1.2.10À̶ó´Â ÁÖ¼Ò¸¦ °®°í ÀÎÆ®¶ó³Ý Ãø°ú´Â 192.168.2.1À̶ó´Â ÁÖ¼Ò¸¦ °®´Â »óȲÀÌ´Ù.

#
# IP ÆÐŶ ȸ°èºÐ¼®°ú Àü´Þ¿¡ °üÇÑ ¼³Á¤
#
#  Àü´Þ(Forwarding)
#
# ±âº»ÀûÀ¸·Î ¸ðµç ¼­ºñ½º¸¦ ºÎÀÎÇÑ´Ù.
ipfwadm -F -p deny
# Àü´Þ, ÀÔ·Â, Ãâ·Â¿¡ ´ëÇÏ¿© ±ÔÄ¢À» ºñ¿î´Ù.
ipfwadm -F -f
ipfwadm -I -f
ipfwadm -O -f
# ÀüÀÚ¿ìÆíÀ» ¿©·¯ºÐÀÇ ¼­¹ö·Î Àü´Þ
ipfwadm -F -a accept -b -P tcp -S 0.0.0.0/0 1024:65535 - D 192.1.2.10 25
# ¿ÜºÎ ÀüÀÚ¿ìÆí ¼­¹ö·ÎÀÇ Á¢¼Ó¿äûÀ» Àü´Þ
ipfwadm -F -a accept -b -P tcp -S 196.1.2.10 25 -D 0.0.0.0/0 1024:65535

# À¥ Á¢¼Ó ¿äûÀ» ¿©·¯ºÐÀÇ À¥ ¼­¹ö·Î Àü´Þ
/sbin/ipfwadm -F -a accept -b -P tcp -S 0.0.0.0 /0 1024:65535 -D 196.1.2.11 80

# ¿ÜºÎ À¥ ¼­¹ö¿¡ ´ëÇÑ ¿äûÀ» Àü´Þ
/sbin/ipfwadm -F -a accept -b -P tcp -S 196.1.2. * 80 -D 0.0.0.0/0 1024:65535

# DNS ÆÐŶÀ» Àü´Þ
/sbin/ipfwadm -F -a accept -b -P udp -S 0.0.0.0 /0 53 -D 196.1.2.0/24

# ÇöÀçÀÇ ºÐ¼® ±ÔÄ¢À» ºñ¿î´Ù
ipfwadm -A -f
# ȸ°è ºÐ¼®(Accounting)
/sbin/ipfwadm -A -f
/sbin/ipfwadm -A out -i -S 196.1.2.0/24 -D 0.0.0.0/0
/sbin/ipfwadm -A out -i -S 0.0.0.0/0 -D 196.1.2.0/24
/sbin/ipfwadm -A in -i -S 196.1.2.0/24 -D 0.0.0.0/0
/sbin/ipfwadm -A in -i -S 0.0.0.0/0 -D 196.1.2.0/24

ÀÎÅͳݰú PPP·Î ¿¬°áµÇ¾î ÀÖ°í ³»ºÎ ³×Æ®¿öÅ©¿Í´Â À̼­³×Æ®·Î ¿¬°áµÇ¾î ÀÖ´Â ¸®´ª½º ¹æÈ­º®ÀÇ ¹æÈ­º® ¼³Á¤ ¿¹ÀÌ´Ù. ÇϳªÀÇ ¼Ð ½ºÅ©¸³Æ®¿¡ ÀúÀåÇØµÎ°í ºÎÆà ÇÒ ¶§¸¶´Ù /etc/rc.d/rc.local°ú °°Àº °÷¿¡¼­ ÇÑ ¹ø¾¿ ½ÇÇàÇØÁÖ¸é ÁÁ´Ù.

#!/bin/sh
# 'Àü´Þ(Forwarding)' ±ÔÄ¢ Å×À̺íÀ» ºñ¿î´Ù.
# Àü´Þ¿¡ ´ëÇÑ ±âº»Á¤Ã¥À» 'Çã°¡(accept)'·Î º¯°æÇÑ´Ù.
#
/sbin/ipfwadm -F -f
/sbin/ipfwadm -F -p accept
#
# .. À̹ø¿¡´Â 'µé¾î¿À´Â' ÆÐŶ¿¡ ´ëÇÏ¿©
#
/sbin/ipfwadm -I -f
/sbin/ipfwadm -I -p accept

# ¿ì¼± PPP ÀÎÅÍÆäÀ̽º¸¦ ºÀ¼âÇÑ´Ù.
# °³ÀÎÀûÀ¸·Î´Â '-a reject -y' ´ë½Å '-a deny'¸¦ »ç¿ëÇÏ°í ½ÍÁö¸¸ ±×
# ·¸°ÔÇϸé ÀÎÅÍÆäÀ̽º Á¢¼Ó ÀÚü°¡ ºÒ°¡´ÉÇÏ°Ô µÈ´Ù.
# -o ´Â °ÅºÎµÈ µ¥ÀÌÅͱ׷¥À» ±â·ÏÇصεµ·Ï ÇÑ´Ù.¼³Á¤ ½Ç¼ö¿¡ ´ëÇÑ ¾î¶² °ø
# °ÝÀÌ ÀÖ¾ú´Â°¡¸¦ ¾Ë ¼ö ÀÖÀ¸³ª µð½ºÅ© °ø°£À» ÇÊ¿ä·Î ÇÑ´Ù.
#
/sbin/ipfwadm -I -a reject -y -o -P tcp -S 0/0 -D
 172.16.174.30/sbin/ipfwadm -I -p accept

# À§Á¶µÈ ÆÐŶÀº ±× Áï½Ã ¹ö¸°´Ù:
# ¸ÖƼij½ºÆ®/¾Ö´Ïij½ºÆ®/ºê·Îµåij½ºÆ® ÁּҷκÎÅÍ ¾î¶°ÇÑ °Íµµ ¿Í¼­´Â ¾È
# µÈ´Ù.
#
/sbin/ipfwadm -F -a deny -o -S 224.0/3 -D 172.16.37.0/24
#
# ·çÇÁ¹é ³×Æ®¿öÅ©ÀÇ ÆÐŶÀº ȸ¼± »óÀ» µ¹¾Æ´Ù´Ï¸é ¾ÈµÈ´Ù.
#
/sbin/ipfwadm -F -a deny -o -S 127.0/8 -D 172.16.37.0/24

# ¿ÜºÎ·ÎºÎÅÍ ¿À´Â SMTP, DNS Á¢¼ÓÀº ¹Þ¾ÆµéÀÌÁö¸¸ ¿À·ÎÁö ¸ÞÀÏ/³×ÀÓ ¼­¹ö
# ¿¡°Ô¸¸ Àü´ÞÇÑ´Ù.
#
/sbin/ipfwadm -F -a accept -P tcp -S 0/0 -D 172.16.37. 19 25 53
#
# DNS´Â TCP »Ó ¾Æ´Ï¶ó UDPµµ »ç¿ëÇÑ´Ù. µû¶ó¼­ ³×ÀÓ ¼­¹ö¿¡ ´ëÇؼ­´Â
# UDPµµ Çã¿ëÇØ¾ß ÇÑ´Ù.
#
/sbin/ipfwadm -F -a accept -P udp -S 0/0 -D 172.16.37. 19 53
#
# ÇÏÁö¸¸ NFS ¶Ç´Â Larry McVoyÀÇ NSF È®Àå ±â´É µî À§ÇèÇÑ Æ÷Æ®·ÎºÎÅÍ
# ³ª¿À´Â ´äº¯Àº Àü´ÞÇÏÁö ¸øÇÏ°Ô ÇÑ´Ù. squid¸¦ ½ÇÇàÇÏ°í ÀÖ´Ù¸é ±× Æ÷Æ®
# ¶ÇÇÑ Ãß°¡Çϱ⠹ٶõ´Ù.
/sbin/ipfwadm -F -a deny -o -P udp -S 0/0 53 -D 172.16.37.0/24 2049 2050

# ±× ¿ÜÀÇ Æ÷Æ®¿¡ ´ëÇؼ­´Â ±¦Âú´Ù.
#
/sbin/ipfwadm -F -a accept -P udp -S 0/0 53 -D 172.16.37.0/24 53 1024:65535

# identd¿¡ ´ëÇÑ Á¢¼Ó ¿äûÀº °ÅÀý(reject)
# ¿ì¸®´Â ¿©±â¼­ 'reject'¸¦ »ç¿ëÇÔÀ¸·Î½á Á¢¼ÓÇϴ ȣ½ºÆ®¿¡°Ô Áï½Ã Á¢¼Ó
# Çصµ ¼Ò¿ë¾ø´Ù´Â ¹ÝÀÀÀ» º¸³»ÁØ´Ù. ±×·¸Áö ¾ÊÀ¸¸é ident°¡ ŸÀӾƿô °É¸®
# ´Â µ¿¾È Áö¿¬ÀÌ »ý±ä´Ù.
#
/sbin/ipfwadm -F -a reject -o -P tcp -S 0/0 -D 172.16.37.0/24 113

# 192.168.64 ±×¸®°í 192.168.65 ³×Æ®¿öÅ©´Â ¿ì¸®°¡ ¹Ï´Â Ä£±¸µéÀ̹ǷÎ
# ¸î °¡Áö ÀϹÝÀûÀÎ ¼­ºñ½º¸¦ Çã°¡ÇÑ´Ù.

#
/sbin/ipfwadm -F -a accept -P tcp -S 192.168.64.0/23 -D 172.16.37.0/24 20:23

# ³»ºÎ¿¡¼­ ¹ß»ýÇÏ´Â ÀÏ¿¡ ´ëÇؼ­´Â Çã°¡ÇÏ°í Åë°ú½ÃŲ´Ù.
#
/sbin/ipfwadm -F -a accept -P tcp -S 172.16.37.0/24 -D 0/0

# ´Ù¸¥ ´ëºÎºÐÀÇ TCP Á¢¼Ó ¿äûÀº °ÅºÎÇÏ°í ±â·ÏÇصдÙ.
# (¸¸¾à ftp°¡ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù¸é 1:1023 À» Ãß°¡Ç϶ó)
#
/sbin/ipfwadm -F -a deny -o -y -P tcp -S 0/0 -D 172.16.37.0/24

# UDPµµ ¸¶Âù°¡ÁöÀÌ´Ù.
#
/sbin/ipfwadm -F -a deny -o -P udp -S 0/0 -D 172.16.37.0/24

»ó´çÈ÷ º¹ÀâÇÑ ¿¹À̱ä ÇÏÁö¸¸ ipfwadm ¸í·ÉÀ» ¾î¶»°Ô »ç¿ëÇÏ´ÂÁö °¨À» ÀâÀ» ¼ö ÀÖÀ» °ÍÀÌ´Ù.

2.6 ³¡³»¸é¼­ : ¸®´ª½º º¸¾ÈÀº ¹ÏÀ» ¼ö ¾ø´Ù?

¿©±â¼­ ¼³¸íÇÑ ÆÐŶ ÇÊÅ͸µ ¹æÈ­º® ¹æ¹ý ¸»°í ÇÁ·Ï½Ã(Proxy) ¼­¹ö ±¸ÃàÀ» ÅëÇÑ ¹æÈ­º® ±¸Çö ¹æ¹ýÀÌ ÀÖ´Ù. ¸®´ª½º¸¦ ÇÁ·Ï½Ã ¼­¹ö·Î »ç¿ëÇϱâ À§ÇÑ ¹æ¹ý ±×¸®°í ¿©±â¿¡ ¼Ò°³µÈ ¸ðµç ³»¿ëÀº NET-3 ÇÏ¿ìÅõ, Firewall ÇÏ¿ìÅõ ¹®¼­¿¡ ÀÚ¼¼È÷ ³ª¿Í ÀÖÀ¸´Ï Àü¹®ÀûÀÎ ¼³Á¤ÀÌ ÇÊ¿äÇÑ »ç¶÷µéÀº ½Ã°£À» ³»¼­¶óµµ ²À Àо±â ¹Ù¶õ´Ù.

¸®´ª½º¿¡ °üÇÑ ¼ö¸¹Àº Á¤º¸´Â ÀÌ¹Ì ÇÏ¿ìÅõ¿¡ ÀÖ´Ù´Â °ÍÀ» ¸í½ÉÇØÁֱ⠹ٶõ´Ù. ¸î¸î ¸®´ª½º¸¦ ±âÇÇÇÏ´Â »ç¶÷µéÀº ¸®´ª½ºÀÇ ¼Ò½º°¡ °ø°³µÇ¾î ÀÖÀ¸¹Ç·Î º¸¾È¿¡ Ãë¾àÇÒ °ÍÀ̶ó°í ´ÜÁ¤ÇÑ´Ù. ¼Ò½º¸¦ °ø°³ÇÏ´Â Á¤Ã¥°ú º¸¾È ¹®Á¦´Â Á÷°áµÇÁö ¾Ê´Â´Ù. ¿©·¯ºÐÀÇ ½Ã½ºÅÛÀ» Àå³­±â ÀÖ´Â ÇØÄ¿µéÀÌ ¸¶À½²¯ ¸ÁÄ¥ ¼ö ÀÖµµ·Ï Çϱâ À§ÇÏ¿© ¼Ò½º¸¦ °ø°³ÇÏ´Â °ÍÀº ¾Æ´Ï´Ù. º¸¾È ¹®Á¦¿¡ ÀÖ¾î ¸¹Àº »ç¶÷µéÀÌ ´ÙÀ½°ú °°ÀÌ ¹Ý·ÐÇÑ´Ù. ÀûÁö ¾ÊÀº »ç¶÷µéÀÌ À©µµ NT´Â ¸®´ª½ºº¸´Ù ´õ ¾ÈÀüÇÏ´Ù°í ¹Ï´Â µí ÇÏ´Ù. ±× ÀÌÀ¯´Â ÇϳªÀÇ È¸»ç°¡ ¼Ò½º¸¦ ¼ÒÀ¯ÇÏ°í °ø°³ÇÏ°í ÀÖÁö ¾Ê±â ¶§¹®ÀÎ °Í °°´Ù. ÇÏÁö¸¸ ±× »ç¶÷µéÀº Ä¿´Ù¶õ Âø°¢À» ÇÏ°í ÀÖ´Ù. ±×µéÀº º¸¾ÈÀÇ ¹®Á¦¸¦ º¸¿©ÁÖÁö ¾ÊÀ¸¸é ¸ð¸¦ °ÍÀÌ´Ù¡¯¶ó°í ´Ü¼øÇÏ°Ô »ý°¢ÇÏ°í ÀÖÀ¸¸ç ½ÇÁ¦·Î ÀϹÝÀεéÀº ±×·¸°Ô »ý°¢ÇÏ°í ÀÖ´Â °Í °°´Ù. À©µµ NTµç ¸®´ª½ºµç º¸¾È ¹®Á¦ÀÇ °áÇÔÀº Ç×»ó µå·¯³ª±â ¸¶·ÃÀÌ´Ù. ±×°ÍÀ» °ø°³¿Í ºñ°ø°³ÀÇ ¹®Á¦°¡ ¾Æ´Ñ ¼ÒÇÁÆ®¿þ¾îÀÇ ¿øÃÊÀû Ư¼º ¶§¹®ÀÌ´Ù. °ø°³ÇÏÁö ¾Ê¾Æ¼­ ¾ÈÀüÇÏ´Ù¸é ´©±¸³ª ±× Á¤Ã¥À» »ç¿ëÇÒ °ÍÀÌ´Ù. ÇÏÁö¸¸ ¼Ò½º ºñ°ø°³´Â »ó¾÷ÀûÀÎ ÀÌÀ¯ÀÌÁö ¿©·¯ºÐÀÇ º¸¾ÈÀ» °í·ÁÇÏ´Â ¸¶À½ÀÇ ¹è·Á¶ó°í Âø°¢ÇÏÁö ¸»±â ¹Ù¶õ´Ù.

¼Ò½º°¡ °ø°³µÇ¾î ÀÖÀ¸¹Ç·Î ¼Ò½º¸¦ º¸°í ¿­½ÉÈ÷ º¸¾È ±¸¸ÛÀ» ã´Â »ç¶÷ÀÌ ÀÖÀ» °ÍÀ̶ó°í ¸»ÇÏ´Â »ç¶÷µµ ÀÖ´Ù. ÇÏÁö¸¸ ÇÊÀÚ°¡ º¸±â¿¡ Å©·¡Ä¿µéÀº ¼Ò½º¸¦ ¿­½ÉÈ÷ º¸´Â Àΰ£µéÀÌ ¾Æ´Ï¶ó°í º»´Ù. ±×·¸°Ô Âø½ÇÇÏ°Ô ¾É¾Æ¼­ ¼Ò½º¸¦ º¸´Â »ç¶÷À̶ó¸é ÇÁ·Î±×·¡¹ÖÀ¸·Î °øÇåÇÒ °¡´É¼ºÀÌ ¸¹´Ù. ¿©·¯ºÐÀÌ ½Å¹®À» ÅëÇØ Á¢ÇÒ ¼ö ÀÖ´Â »ç°íµéÀ» º¸¸é Çϳª°°ÀÌ °¡Àå ½¬¿î ¹æ¹ý, »ó´ë¹æÀÇ Æнº¿öµå ¾Ë¾Æ³»±â °°Àº Áö·çÇÏ°í ºñ»ý»êÀûÀÎ ÀÛ¾÷À» ¸¹ÀÌ ÇÏ°í ÀÖ´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù. ÇÊÀÚ°¡ »ý°¢ Çϱ⿡ ¿©·¯ºÐÀÇ »ó½ÄÀ» ¿µÈ­°¡ ¸ÁÄ¡´Â °Í °°´Ù. ÄÄÇ»ÅÍ ÇØÅ·¿¡ ´ëÇÏ¿© Çϳªµµ ¸ð¸£´Â °¨µ¶µéÀÌ ±×·Á³»´Â ÇØÄ¿µéÀÇ ¸ð½ÀÀº ½Å±â¿¡ °¡±õ´Ù.

¸¸¾à À©µµ NT¿Í ¸®´ª½º¿¡¼­ ¶È°°ÀÌ º¸¾È »óÀÇ ÇãÁ¡ÀÌ ¹ß°ßµÇ¾ú´Ù°í Ä¡ÀÚ. ¸®´ª½º »ç¿ëÀÚ´Â ±× Áï½Ã ¼Ò½º ·¹º§¿¡¼­ÀÇ ÆÐÄ¡°¡ °¡´ÉÇÏ´Ù. ¶ÇÇÑ ¾î´À ´©±¸µç ¹ßÇ¥ÇÑ »ç¶÷ÀÌ ±× Áï½Ã À¯Áî³Ý ´º½º±×·ì ⱸ¸¦ ÅëÇØ ºü¸£°Ô °ø°íÇÒ ¼ö ÀÖ´Ù. À©µµ NT »ç¿ëÀÚ¶ó¸é ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® »ç¿¡¼­ °ø½Ä ¹ßÇ¥°¡ ÀÌ·ïÁö±â Àü±îÁö ¾ËÁö ¸øÇÏ´Â °æ¿ì°¡ ´ëºÎºÐÀÌ´Ù. ±×¸®°í ÆÐÄ¡°¡ ³ª¿À±â¸¦ ±â´Ù¸®¸é¼­ ºÒ¾È¿¡ ¶³²¨³ª ¼­ºñ½º¸¦ Áß´ÜÇÏ´Â ¼ö¹Û¿¡ ¾ø´Ù.

Á¤¸»·Î º¸¾È¿¡ °áº® Áõ¼¼°¡ ÀÖ´Ù¸é ¿©·¯ºÐÀÇ È¸»ç¿¡¼­ ¸î ¸íÀÇ ÇÁ·Î±×·¡¸Ó¸¦ °í¿ëÇÏ¿© ¸®´ª½º ³×Æ®¿öÅ© ¼ÒÇÁÆ®¿þ¾î Áß ¸î °¡Áö Áß¿äÇÑ ºÎºÐÀ» ÀÓÀÇ·Î °íÃļ­ »ç¿ëÇÏ¸é µÇÁö ¾Ê°Ú´Â°¡? ÇÏÁö¸¸ °í¿ëÇÑ ÇÁ·Î±×·¡¸Ó´Â ¶Ç ¾î¶»°Ô ¹Ï´Â°¡? ÀÌ ¸¹Àº ºÒ½ÅÀ» ¸®´ª½º ¹æÈ­º® ±¸ÃàÀ» ÅëÇØ ÇؼÒÇÒ ¼ö ÀÖ´Ù.

3. PnP Çϵå¿þ¾î ÀνĽÃÅ°±â

¼ö¸¹Àº ÈǸ¢ÇÑ ±â´É¿¡µµ ºÒ±¸ÇÏ°í ¸®´ª½º´Â ¾ÆÁ÷µµ Ç÷¯±× ¾Ø Ç÷¹ÀÌ(PnP) Çϵå¿þ¾î¸¦ Á¦´ë·Î Áö¿øÇÏÁö ¸øÇÏ°í ÀÖ´Ù. ¿©·¯ºÐµµ ¾Ë´Ù½ÃÇÇ Ç÷¯±× ¾Ø Ç÷¹ÀÌ´Â IBM ¾ÆÅ°ÅØóÀÇ Çϵå¿þ¾î¿¡¼­ ÁÖº¯±â±â¸¦ ¼³Ä¡ÇÒ ¶§ÀÇ ¾ÆÁÖ °íÁúÀûÀÎ I/O ÁÖ¼Ò, IRQ, DMA ¼³Á¤ ¹®Á¦¿¡¼­ÀÇ ºÒÆíÇÔÀ» ÇؼÒÇϱâ À§Çؼ­ ³ª¿Â °³³äÀ̸ç ÀÌ¹Ì »ó´çÈ÷ ¿À·¡ ÀüºÎÅÍ ÇÊ¿äÇÑ Çʼö ±â´ÉÀ̾ú´Ù.

½ÇÁ¦ PnP Çϵå¿þ¾î ÀνÄ/¼³Á¤ ±â´ÉÀÌ ¾ó¸¶³ª È¿À²ÀûÀΰ¡ÀÇ ¹®Á¦´Â Á¦Ãĵΰí¶óµµ ÄÄÇ»ÅÍ »ê¾÷ÀÇ Å« Èûµé¿¡ ÀÇÇÏ¿© ÀÌ¹Ì Ç¥ÁØÀûÀÎ ±â´ÉÀÌ µÇ¾î¹ö¸° »óÅÂÀ̹ǷΠ¹Ý·ÐÀÇ ¿©Áö¾øÀÌ PnP ±â´ÉÀº ¸®´ª½º Ä¿³ÎÀÇ ÁÖ¿ä ±â´ÉÀ¸·Î ÀÚ¸®Àâ¾Æ¾ß ÇÑ´Ù°í º»´Ù.

¹°·Ð ´ëºÎºÐÀÇ ÀåÄ¡¿¡ ´ëÇÏ¿© Çϵå¿þ¾î ÀνĽÿ¡ Àß Ã£¾Æ³»¾î »ç¿ëÇÏÁö¸¸ Ç¥ÁØÀûÀÎ I/O ÁÖ¼Ò ¶Ç´Â IRQ¸¦ »ç¿ëÇÏÁö ¾Ê´Â °æ¿ì¿¡´Â Á¦´ë·Î ÀνÄÇÏÁö ¸øÇÏ´Â °æ¿ì°¡ ¸¹´Ù. ÁÖº¯ÀåÄ¡¸¦ ¾ó¸¶ °®°í ÀÖÁö ¾ÊÀº »ç¶÷µé¿¡°Ô´Â º° ¹®Á¦µÇÁö ¾ÊÁö¸¸ À̼­³×Æ® Ä«µå¸¦ µÎ °³ ÀνĽÃÄÑ¾ß ÇÑ´ÙµçÁö ÇÒ ¶§´Â °ñÄ¡ ¾ÆÇ ÀÏÀÌ ¾Æ´Ò ¼ö ¾ø´Ù.

´ëºÎºÐÀº ÁÖº¯ÀåÄ¡¿Í °°ÀÌ Æ÷ÀåµÇ¾î ÀÖ´Â PnP ±â´ÉÀ» ²ô´Â µµ½º¿ë ¼ÒÇÁÆ®¿þ¾î¸¦ °¡Áö°í ƯÁ¤ ÁÖ¼Ò¿Í IRQ¸¦ ¸ÂÃç¼­ »ç¿ëÇϱ⵵ ÇÏÁö¸¸ ÇÊÀÚÀÇ °æÇèÀ¸·Î´Â Á¦´ë·Î µÇÁö ¾Ê´Â °æ¿ì°¡ Çã´ÙÇß´Ù. ÀÌ¿¡ ´ëÇÑ ´äÀÌ ÀÖ´Ù. ¾ÆÁ÷ ¸®´ª½º Ä¿³Î¿¡¼­ PnP°¡ Áö¿øµÇÁö´Â ¾ÊÁö¸¸ ISA PnP ÅøÀ̶ó´Â °ÍÀ» »ç¿ëÇÏ¸é °ÅÀÇ ´ëºÎºÐÀÇ ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ´Ù.

3.1 ISA PnP µµ±¸, ¾îµð¼­ ±¸ÇÒ ¼ö Àִ°¡?

±×¸®°í ¿©·¯ºÐÀÌ ÇÁ·Î±×·¥¼¼°è 1¿ùÈ£ ºÎ·ÏÀÎ ¾ËÂ¥ ·¹µåÇÞ 4.0 CD¸¦ °¡Áö°í ÀÖ´Ù¸é ´Ù¸é CD·ÒÀ» ¸¶¿îÆ®ÇÑ ÈÄ ¸¶¿îÆ® µð·ºÅ͸®·ÎºÎÅÍ misc/pnp/utils À§Ä¡¿¡¼­ isapnptools-1.8.tgz ÆÄÀÏÀ» ã¾Æº¼ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÇÊÀÚ°¡ º» ÃֽŠ¼Ò½º´Â 1.9 ¹öÀüÀ̾ú°í ¾ËÂù ¸Ç ÆäÀÌÁöµµ µé¾îÀÖ¾ú´Ù.

3.2 ISA PnP µµ±¸ÀÇ ±¸¼º

/etc/isapnp.conf
/usr/man/man5/isapnp.conf.5
/usr/man/man8/isapnp.8
/usr/sbin/isapnp
/usr/sbin/pnpdump

3.3 ISA PnP µµ±¸ÀÇ »ç¿ë¹ý

¸î °¡Áö °£´ÜÇÑ ±ÔÄ¢¸¸ ÀÍÈ÷¸é µÈ´Ù. ISA PnP µµ±¸ÀÇ »ç¿ë¹ýÀº ´ÙÀ½°ú °°Àº ÀýÂ÷¸¦ °ÅÄ£´Ù.

  1. pnpdump·Î ÇöÀçÀÇ ISA¿ë PnP Çϵå¿þ¾î¿¡ ´ëÇÑ Á¤º¸¸¦ ÀÔ¼öÇÑ´Ù.
  2. /etc/isapnp.conf ÆÄÀÏÀ» º¸¸é¼­ ¼³Á¤ÇÏ°í ½ÍÀº I/O ÁÖ¼Ò, IRQ µîÀ» ¼³Á¤ÇÑ´Ù.
  3. isapnp¸¦ ½ÇÇà½ÃÄÑ PnP Çϵå¿þ¾î¸¦ ¼³Á¤ÇÑ´Ù.
  4. ¸ðµâÀ» ·ÎµùÇÑ´Ù.

¿©±â¼­ ÇÑ °¡Áö Áß¿äÇÏ°Ô Â¤°í ³Ñ¾î°¡¾ß ÇÒ Á¡ÀÌ ÀÖ´Ù. ISA PnP µµ±¸¸¦ »ç¿ëÇÏ¿© ¼³Á¤ÇÒ ¼ö ÀÖ´Â Çϵå¿þ¾î´Â ¸®´ª½º¿¡¼­ ±× ±â´ÉÀ» ¸ðµâ·Î Á¦°øÇÏ´Â °Í¿¡¸¸ À¯È¿ÇÏ´Ù. ÀÌ¹Ì Ä¿³Î ¾ÈÀ¸·Î µé¾î°¡ ¹ö¸° ±â´É¿¡ ´ëÇؼ­´Â ISA PnP µµ±¸¸¦ ¾µ ±âȸ°¡ ÁÖ¾îÁöÁö ¾Ê±â ¶§¹®ÀÌ´Ù. ÇÏÁö¸¸ ¸®´ª½º Ä¿³Î ±â´ÉÀÇ ´ëºÎºÐÀÌ ¸ðµâ·Î µ¶¸³ÇÏ¿© »ç¿ëÇÒ ¼ö Àֱ⿡ ¹®Á¦µÇ´Â °æ¿ì´Â °ÅÀÇ ¾øÀ» °ÍÀÌ´Ù.

3.4 ISA PnP µµ±¸ ÄÄÆÄÀÏÇϱâ

ÇÊÀÚ°¡ ÄÄÆÄÀÏÇÑ È¯°æÀº Ä¿³Î ¹öÀü 2.0.30, C ¶óÀ̺귯¸® 5.4.23, ÄÄÆÄÀÏ·¯´Â gcc 2.7.2.1 ÀÌ´Ù. °£´ÜÈ÷ ¼Ò½º¸¦ Ç®°í make ¸í·ÉÀ» ³»¸®¸é ´ÙÀ½°ú °°Àº ¿¡·¯ ¸Þ½ÃÁö°¡ ³ª¿Â´Ù.

[yong@freeyong isapnptools-1.8]$ make
cc -O2 -Wall -DREALTIME -DNEEDSETSCHEDULER
 -DNEEDNANOSLEEP  -c pnpdump.c -o pnpdump.o
pnpdump.c:36: conflicting types for `nanosleep'
/usr/include/time.h:124: previous declaration
 of `nanosleep'
make: *** [pnpdump.o] Error 1

°³¹ßÀÚÀÇ °³¹ßȯ°æÀÌ ¾î¶²Áö´Â ¸ð¸£°ÚÀ¸³ª Makefile¿¡¼­ PNPFLAGS ºÎºÐ¿¡¼­ -DNEEDNANOSLEEPÀ» »èÁ¦ÇÑ´Ù. ÀÌ ¹æ¹ýÀº README¿¡ ÀûÇôÀÖ´Â ´ë·ÎÀÌ´Ù.

[yong@freeyong isapnptools-1.8]$ make
cc -O2 -Wall -DREALTIME -DNEEDSETSCHEDULER
 -c pnpdump.c -o pnpdump.o
cc  pnpdump.o  -o pnpdump
flex -i -t isapnp.y > isapnp.c
cc -O2 -Wall   -c isapnp.c -o isapnp.o
isapnp.y:934: warning: prototype for `yywrap' follows
isapnp.y:76: warning: non-prototype definition here
isapnp.y:1360: warning: `yyunput' defined but not used
cc  isapnp.o  -o isapnp

make install °úÁ¤Àº ¾øÀ¸¹Ç·Î pnpdump¿Í isapnp ¹ÙÀ̳ʸ®¸¦ /sbin µð·ºÅ͸®¿¡ Á÷Á¢ º¹»çÇÑ´Ù.

3.5 PnP Á¤º¸¸¦ ´ýÇÁÇϱâ

# pnpdump > /etc/isapnp.conf

pnpdump ¸í·ÉÀ» ³»¸®¸é ¿©·¯ºÐÀÇ PnP BIOS¸¦ Á¡°ËÇÏ°í PnP Çϵå¿þ¾î¸¦ ¹ß°ßÇÏ°Ô µÇ¸é ¸®´ÙÀÌ·º¼ÇÀ¸·Î ÁÖ¾îÁø /etc/isapnp.conf ÆÄÀÏ¿¡ °á°ú¸¦ Ãâ·ÂÇÑ´Ù.

3.6 /etc/isapnp.conf ÆÄÀÏ ÆíÁýÇϱâ

¸®´ª½º/À¯´Ð½º¿¡¼­ÀÇ ÀÛ¾÷ÀÌ ´Ù ±×·¯ÇÏ´Ù´Â °ÍÀ» ¾Ë °ÍÀÌ´Ù. ÆíÁý±â¸¦ °¡Áö°í ³­ÇØÇϱâ ¦ÀÌ ¾ø´Â ¼³Á¤ ÆÄÀÏÀ» ¿©·¯ºÐÀÇ »óȲ¿¡ ¾Ë¸Â°Ô ÆíÁýÇÑ´Ù. ÆÄÀÏ Çü½Ä ÀÌ ¾î¶°ÇÑÁö ¾Ë¾Æº¸µµ·Ï ÇÏÀÚ.

# $Id: LinuxdocSgml_2fVarious_5fInfo_2dKLDP,v 1.2 2003/10/03 09:36:33 kss Exp kss $
# This is free software, see the sources for details.
# This software has NO WARRANTY, use at your OWN RISK
#
# For details of this file format, see isapnp.conf(5)
#
# Compiler flags: -DREALTIME -DNEEDSETSCHEDULER -DNEED
# NANOSLEEP
#
# Trying port address 0203
# Trying port address 0207
# Trying port address 020b
# Board 1 has serial identifier 5e 00 19 1c 0b 19 80
# 8c 4a

# (DEBUG)
(READPORT 0x020b)
(ISOLATE)
(IDENTIFY *)

# Card 1: (serial identifier 5e 00 19 1c 0b 19 80 8c 4a)
# RTL8019 Serial No 1645579 [checksum 5e]
# Version 1.0, Vendor version 1.0
# ANSI string -->Plug & Play Ethernet Cardb --
#
# Logical device id RTL8019
#   Device support I/O range check register
#
# Edit the entries below to uncomment out the
# configuration required.
# Note that only the first value of any range is given,
# this may be changed if r
# Don't forget to uncomment the activate (ACT Y)
# when happy

(CONFIGURE RTL8019/1645579 (LD 0
#   Compatible device id PNP80d6
#   Logical device decodes 10 bit IO address lines
#     Minimum IO base address 0x0220
#     Maximum IO base address 0x0380
#     IO base alignment 32 bytes
#     Number of IO addresses required: 32
(IO 0 (BASE 0x0340))
#   IRQ 3, 4, 5, 9, 10, 11, 12 or 15.
#     High true, edge sensitive interrupt
(INT 0 (IRQ 10 (MODE +E)))
(ACT Y)
))
# End tag... Checksum 0x00 (OK)

¼³Á¤ ÆÄÀÏÀÌ »ó´çÈ÷ º¹ÀâÇØ º¸À̱â´Â ÇÏÁö¸¸ ±× ¸ðµç °ÍÀ» ´Ù ÀÌÇØÇÒ ÇÊ¿ä´Â ¾ø´Ù. ÇÊÀÚµµ º¹ÀâÇϱâ ¦ÀÌ ¾ø´Â isapnp.conf ¸Ç ÆäÀÌÁö¸¦ ¸ðµÎ ´Ù ÀоÁö´Â ¾Ê¾Ò´Ù. ¼³Á¤ ÆÄÀÏ¿¡¼­ ¼¥(#) ¹®ÀÚ·Î ½ÃÀÛÇÏ´Â ÁÙÀº ¿©·¯ºÐµµ ¿¹»óÇÏ´Ù½ÃÇÇ ÁÖ¼®¹®ÀÌ´Ù. µû¶ó¼­ À§ÀÇ ¼³Á¤ ÆÄÀÏ¿¡¼­ ½ÇÁ¦·Î »ç¿ëµÇ´Â ºÎºÐÀº ´ÙÀ½°ú °°´Ù.

(READPORT 0x020b)
(ISOLATE)
(IDENTIFY *)
(CONFIGURE RTL8019/1645579 (LD 0
(IO 0 (BASE 0x0340))
(INT 0 (IRQ 10 (MODE +E)))
(ACT Y)
))

óÀ½¿¡´Â (ACT Y)ºÎÅÍ ½ÃÀÛÇؼ­ °ÅÀÇ ¸ðµç °ÍÀÌ ÁÖ¼®¹® 󸮵Ǿî ÀÖÀ» °ÍÀÌ´Ù. ¿©·¯ºÐÀÇ ÀÛ¾÷Àº ÁÖ¼®¹® 󸮵Ǿî ÀÖ´Â °Í Áß¿¡ ¾Ë¸ÂÀº °ÍÀ» ¼±ÅÃÇÏ¿© # ¹®ÀÚ¸¦ Áö¿ö È°¼ºÈ­½ÃÅ°´Â ÀÏ, ÁÖ¼®¹®¿¡ ÀÚ¼¼È÷ ÀûÈù I/O ÁÖ¼Ò, IRQ ¹üÀ§¿¡¼­ ´Ù¸¥ ÁÖº¯±â±â¿Í Ãæµ¹ÇÏÁö ¾Ê´Â ÁÖ¼Ò¿Í IRQ¸¦ ¼±ÅÃÇÏ´Â ÀÏÀÌ´Ù. ÁÖ¼®¹®ÀÌ ¿µ¾î·Î µÇ¾î ÀÖ±â´Â Çϳª ÇÊÀÚ°¡ »ý°¢Çϱ⿡´Â ¸Ç ÆäÀÌÁöº¸´Ùµµ ´õ Áß¿äÇÏ°í ½ÇÀüÀûÀÎ Áö½ÄÀ» ¾Ë·ÁÁØ´Ù.

#     Compatible device id PNP80d6
#     Logical device decodes 10 bit IO address lines
#     Minimum IO base address 0x0220
#     Maximum IO base address 0x0380
#     IO base alignment 32 bytes
#     Number of IO addresses required: 32

À§¿Í °°Àº ¹®ÀåÀ» º¼ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÁöÁ¤ÇÒ ¼ö ÀÖ´Â I/O ÃÖ¼Ò ¹øÁö´Â 0x0220 ÀÌ°í ÃÖ´ë ¹øÁö´Â 0x0380À̶ó°í °¡¸£ÃÄ ÁÖ°í ÀÖ´Ù. ¼³Á¤Çϱâ Àü¿¡ ÀÌ¹Ì ¸®´ª½º°¡ ºÎÆÃµÇ°í ³ª¼­ »ç¿ë ÁßÀÎ I/O ÁÖ¼Ò¸¦ ÇÇÇØ¾ß ÇϹǷΠÇöÀç »ç¿ëÁßÀÎ I/O ÁÖ¼Ò¿¡ ´ëÇÏ¿© ¾Ë¾Æ¾ß ÇÒ °ÍÀÌ´Ù. ÀÌ·² ¶§´Â ¸®´ª½ºÀÇ Àç¹ÌÀÖ´Â ÆÄÀÏ ½Ã½ºÅÛÀÎ /proc ½Ã½ºÅÛÀ» ÀÌ¿ëÇÏÀÚ.

# cd /proc
# cat ioports
0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0070-007f : rtc
0080-009f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : npu
0170-0177 : ide1
01f0-01f7 : ide0
0220-022f : sound blaster
0230-0233 : sbpcd
02f8-02ff : serial(auto)
0376-0376 : ide1
0378-037f : lp
0388-038b : OPL3/OPL2

Áߺ¹µÇ´Â ÁÖ¼Ò¸¸ ÇÇÇؼ­ ¼³Á¤ÇÏ¸é µÈ´Ù.

#     IRQ 3, 4, 5, 9, 10, 11, 12 or 15.
#     High true, edge sensitive interrupt
(INT 0 (IRQ 10 (MODE +E)))

À̹ø¿¡´Â IRQ¸¦ ¼³Á¤ÇÏ´Â ºÎºÐÀÌ´Ù. Ä£ÀýÇÏ°Ô ¼³Á¤ÇÒ ¼ö ÀÖ´Â IRQ·Î´Â 3, 4, 5, 9 µîÀÌ ÀÖ´Ù°í ¾Ë·ÁÁÖ°í ÀÖ´Ù. ¿ª½Ã ÀÌ¹Ì »ç¿ëÁßÀÎ IRQ¸¦ ÁöÁ¤ÇÒ ¼ö´Â ¾øÀ¸¹Ç·Î ÇöÀç »ç¿ëÁßÀÎ IRQ¸¦ Á¡°ËÇغ¸ÀÚ.

# cd /proc
# cat interrupts
 0:  23254768  timer
 1:   312846  keyboard
 2:     0  cascade
 3:  6309207 + serial
 4:     1 + serial
 5:     1  sound blaster
 8:     0 + rtc
11:     60 + aic7xxx
12:   779889  PS/2 Mouse
13:     1  math error
14:  1616870 + ide0
15:   208796 + ide1

ºó IRQ ¹øÈ£¸¦ Á¤Ç϶ó.

3.7 isapnp ¸í·ÉÀ¸·Î PnP ¼³Á¤Çϱâ

°¡Àå ¾î·Á¿î °íºñÀÎ /etc/isapnp.conf ÆÄÀÏ ¼³Á¤À» ¸¶ÃÆ´Ù.

# isapnp /etc/isapnp.conf

ÀÌ·¸°Ô ÇÏ¸é ½Ã½ºÅÛÀÌ Àá±ñ ¸ØÃß´Â ±â»öÀ» º¸ÀÌ°í ³ª¼­ ¼º°øÀûÀ¸·Î PnP ¼³Á¤À» ¸¶Ä¥ °ÍÀÌ´Ù. ¸¸¾à ¿©·¯ºÐÀÌ Á¦°øÇÑ Á¤º¸°¡ ¿Ã¹Ù¸£Áö ¾Ê¾Æ PnP BIOS¿¡ ÀÇÇØ ¼³Á¤ÀÌ °ÅºÎµÇ¸é ¿¡·¯ ¸Þ½ÃÁö°¡ ¶ã °ÍÀÌ´Ù.

3.8 ¿øÇÏ´Â ¸ðµâÀ» ¶ç¿î´Ù

ÇÊÀÚ´Â ´ë¸¸Á¦ PnP NE2000 ȣȯ À̼­³×Æ® Ä«µå¸¦ ÀνĽÃÅ°·Á°í isapnp µµ±¸¸¦ »ç¿ëÇÏ¿´´Ù.

# modprobe ne io=0x340,irq=10

¶Ç´Â Ä¿³Î µ¥¸ó(kerneld)À» »ç¿ëÇÏ´Â °æ¿ì /etc/conf.modules ÆÄÀÏ¿¡ ´ÙÀ½ ÁÙÀ» ÇÑ ÁÙ Ãß°¡ÇÏ¸é µÈ´Ù. ´ÙÀ½Àº ÇÊÀÚÀÇ ¿¹ÀÌ´Ù.

alias scsi_hostadapter aic7xxx
alias eth1   ne
options sbpcd  sbpcd=0x230,1
options ne   io=0x340,irq=10
options wdt   irq=6

ÇÑ ¶§ »ç¿îµåºí·¡½ºÅÍ 32 ±âÁ¾°ú 3Com509bÀÇ ÀÎ½Ä ¹®Á¦°¡ Å©°Ô ´ëµÎµÈ Àû ÀÖ´Ù. »ç¿îµåºí·¡½ºÅÍ ÃֽŠ±âÁ¾µéÀÌ IDE ÀÎÅÍÆäÀ̽º¸¦ ´Þ°í ³ª¿À¸ç ±× IDE ÀÎÅÍÆäÀ̽º°¡ ¿ì¸®µµ ¸ð¸£°Ô IRQ 10 ¶Ç´Â 11¹øÀ» Àå¾ÇÇÏ´Â »ç½ÇÀ» ¸ô¶ú±â ¶§¹®ÀÌ´Ù. ¾È´Ù ÇÒÁö¶óµµ »ç¿îµåºí·¡½ºÅÍÀÇ PnP ±â´É, IDE ÀÎÅÍÆäÀ̽º ±â´ÉÀ» ¸¶ºñ½ÃÅ°´Â °ÍÀÌ Á¦´ë·Î ¸ÔÇôµéÁö ¾Ê´Â °Í °°¾Ò´Ù. ÇÊÀÚµµ ¾ËÂ¥ ·¹µåÇÞ 4.1 Á¦ÀÛ ´ç½Ã ÇÑ ´ëÀÇ Å×½ºÆ® ¸Ó½Å¿¡¼­ »ç¿îµåºí·¡½ºÅÍ 32¸¦ »ç¿ëÇÏ´Â ¹Ù¶÷¿¡ 3Com509b¸¦ Æ÷±âÇÑ ÀûÀÌ ÀÖ¾ú´Ù.

³¡À¸·Î Á¤¸»·Î Èûµç ÀÏÀ» ÇØÁØ Peter Fox¾¾¿¡°Ô °¨»çÇÏ´Â ¸¶À½ °®´Â´Ù. ±×´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® »çÀÇ PnP ½ºÆåÀ» º¸°í Èû°ã°Ô ¸®´ª½º¿ë ÇÁ·Î±×·¥À» ¸¸µé¾ú´Ù°í ÇÑ´Ù. ÇÑ »ç¶÷ÀÇ ³ë·ÂÀ¸·Î Àü¼¼°èÀÇ »ç¶÷µéÀÌ ÇýÅÃÀ» ´©¸± ¼ö ÀÖ´Ù´Â °Í, ±×°Í¸¸Å­ °ªÁø °ÍÀÌ ¾îµð ÀÖÀ»±î? ¿©·¯ºÐµµ ÇÁ·Î±×·¡¸Ó¶ó¸é ±ÝÀüÀû ÀÌÀÍ ÀÌ¿Ü¿¡ ÀÌ·¯ÇÑ ¸í¿¹¸¦ ´©·Áº¸´Â °ÍÀÌ ¾î¶²°¡? ¸®´ª½º¿¡ ±â¿©ÇÒ ¼ö ÀÖ´Â ºÐ¾ß´Â Á¤¸» ¸¹´Ù.

4. ÇÁ·Î±×·¡¹Ö

¾öû³­ Çϵå¿þ¾îÀÇ ¼º´É ¹ßÀüÀ» ¼ÒÇÁÆ®¿þ¾î ±â¼úÀÌ µû¶ó°¡Áö ¸øÇÏ°í ÀÖ´Ù´Â ÁöÀûÀÌ ¸¹´Ù. ´« ±ô¦ÇÒ »çÀÌ¿¡ ÀÌ¹Ì ÆæƼ¾ö ÇÁ·Î 200À» ³Ñ¾î¼­°í ÀÖ°í ¸ÖƼ¹Ìµð¾î °ü·Ã MMX´Ù ¹¹´Ù Çؼ­ ÀÎÅÚ»ç´Â »õ·Î¿î ±¸¸Å ¿å±¸¿¡ Ã浿ÁúÀ» ÇÏ°í ÀÖ´Ù. ÇÊÀÚ°¡ ¿øÇÏµç ¿øÇÏÁö ¾Êµç ¶Ç ÇÑ ¹ø Çϵå¿þ¾î °¥¾ÆÄ¡¿ì±â ÀüÀïÀÌ ÀϾ µí ÇÏ´Ù.

Çϵå¿þ¾îÀû ¹ßÀü Áß¿¡¼­µµ À̹ø¿¡´Â SMP(Symmetrical MultiProcessing) ±×¸®°í º´·Ä ó¸® °³³äÀ» »ç¿ëÇÏ´Â ¾²·¹µå(thread) ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇÑ ¾ê±â¸¦ Àá±ñ Çغ¸°íÀÚ ÇÑ´Ù. À̹ø¿¡ ´Ù·ç´Â ³»¿ëÀº ¼Ò°³ ¼öÁØ ¹Û¿¡ ¾ÈµÈ´Ù´Â °ÍÀ» ¹Ì¸® ÀÏ·¯µÎ°íÀÚ ÇÑ´Ù.

º´·Äó¸® °³³äÀ» »ç¿ëÇϸé ÀÌÀÍÀ» ¾òÀ» ¼ö ÀÖ´Â ºÐ¾ß´Â ¿ª½Ã ÀÎÅÍ³Ý ¼­¹ö¶ó°í ÇÒ ¼ö ÀÖ´Ù. Áö±Ý ÇöÀç´Â À¥ ¼­¹öÀÇ °æ¿ì HTTP ¼­ºñ½º¸¦ ¿ä±¸Çϴ Ŭ¶óÀ̾ðÆ®ÀÇ ¿ä±¸°¡ ÀÖÀ» ¶§¸¶´Ù Àڱ⠽º½º·Î¸¦ º¹Á¦(fork)ÇÏ¿© ±× º¹Á¦ ÇÁ·Î¼¼½º·Î ÇÏ¿©±Ý Ŭ¶óÀ̾ðÆ®¿¡°Ô ¼­ºñ½º¸¦ Á¦°øÇÏ°í ¸ÞÀÎ ÇÁ·Î¼¼½º´Â °è¼ÓÀûÀ¸·Î ƯÁ¤ Æ÷Æ®(ÀϹÝÀûÀ¸·Î À¥ ¼­¹ö´Â 80¹ø Æ÷Æ® ¶Ç´Â 8080¹ø Æ÷Æ®)¿¡ ±Í±â¿ïÀÌ´Â ÇüŸ¦ Áö´Ñ´Ù. ÀÌ¹Ì À¯´Ð½º ½Ã½ºÅÛ¿¡´Â À¥ ¼­¹ö¿Í °°ÀÌ Å¬¶óÀ̾ðÆ®µéÀÇ µ¿½Ã Á¢¼Ó, µ¿½Ã ¼­ºñ½º Á¦°øÀ» ÇØ°áÇÒ ´É·ÂÀ» °¡Áö°í ÀÖ´Ù. ±×·³¿¡µµ ºÒ±¸ÇÏ°í ¾²·¹µå ÇÁ·Î±×·¡¹ÖÀº Á» ´õ ³ª¾Æ°¡·Á°í ÇÑ´Ù. ±â¼úÀûÀÎ ¾ê±â·Î´Â À¯´Ð½ºÀÇ ÇÁ·Î¼¼½º º¹Á¦¿¡ °É¸®´Â ½Ã½ºÅÛÀÇ ºÎÇÏ°¡ ¸¹±â ¶§¹®¿¡ ±×º¸´Ù´Â °³¼±µÈ ÇüÅ Áï ¾²·¹µå (thread)¶ó°í ºÒ¸®¿ì´Â °æ·®±Þ(light-weight) ÇÁ·Î¼¼½º ¸ðµ¨À» »ç¿ëÇÏ¿© ºó¹øÇÑ ¼­¹ö ó¸® ¾÷¹«¿¡ È¿À²¼ºÀ» ±âÇÏÀÚ´Â ³»¿ëÀÌ´Ù. ´õ±º´Ù³ª ATM ±³È¯±â µî ÃÊ °í¼Ó ³×Æ®¿öÅ©°¡ °Ç¼³µÇ¸é ¾à°£ÀÇ ½Ã°£ Â÷À̶ó ÇÒÁö¶óµµ ¼­¹öÀÇ Ã³¸® ´É·ÂÀº Ä¿´Ù¶õ ¹®Á¦·Î ¶°¿À¸£Áö ¾ÊÀ» ¼ö ¾ø´Ù. ATM ±³È¯±â¸¦ ÅëÇؼ­ ½ñ¾ÆÁ® ¿À´Â ÆÐŶÀ» Á¦´ë·Î ó¸®ÇÏÁö ¸øÇÑ´Ù¸é ºñ½Ñ µ· µé¿© °Ç¼³ÇÑ ³×Æ®¿öÅ© Çϵå¿þ¾î°¡ ¹«½¼ ¼Ò¿ë Àְڴ°¡?

¾²·¹µå°¡ »õ·Ó°Ô ¸¸µé¾îÁö´Â °Í°ú ÇÁ·Î¼¼½º°¡ »õ·Ó°Ô ¸¸µé¾îÁø °Í »çÀÌ¿¡´Â ¾à°£ÀÇ Â÷ÀÌ°¡ ÀÖ´Ù°í ÇÑ´Ù. ÇÁ·Î¼¼½º°¡ º¹Á¦µÉ ¶§´Â º¹Á¦¸¦ ÇàÇÏ´Â ºÎ¸ð ÇÁ·Î¼¼½º¿Í »ó´ëÀûÀ¸·Î ÀûÀº ¾çÀÇ Á¤º¸¸¦ °øÀ¯ÇÑ´Ù°í ÇÑ´Ù. ÇÏÁö¸¸ ¾²·¹µåÀÇ °æ¿ì¿¡´Â ¿¹¸¦ µé¾î Àü¿ª º¯¼ö(global variable), Á¤Àû Áö¿ª º¯¼ö(static local variable), ±×¸®°í ¿­·ÁÁø ÆÄÀÏ ±â¼úÀÚ, ÇÁ·Î¼¼½º ID µî ´õ ¸¹Àº Á¤º¸¸¦ °øÀ¯ÇÑ´Ù°í ÇÑ´Ù. ÇÁ·Î¼¼½ºÀÇ °æ¿ì °³º°ÀûÀÎ º¹Á¦¹°À» ¸¸µé¾î³»´Âµ¥ ¾²·¹µå¿¡ ºñÇØ »ó´ëÀûÀ¸·Î ºÎÇÏ°¡ ¸¹ÀÌ °É¸®¸ç ÇÑ ÇÁ·Î¼¼½º¿¡¼­ ´Ù¸¥ ÇÁ·Î¼¼½º·Î Á¦¾î±ÇÀ» ³Ñ±â´Âµ¥ (context switch¶ó°í ÇÑ´Ù) °É¸®´Â ½Ã°£ÀÌ ÇÑ ¾²·¹µå¿¡¼­ ´Ù¸¥ ¾²·¹µå·Î À̵¿ÇÏ´Â ½Ã°£º¸´Ù »ó´ëÀûÀ¸·Î ´õ ¸¹ÀÌ °É¸°´Ù°í ÇÑ´Ù.

À¯Áî³Ý ´º½º±×·ì¿¡ °¡º¸¸é ¾²·¹µå ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇÑ Âù¹ÝÀÌ ¾ù°¥¸®Áö¸¸ ¾îÂî µÇ¾úµç ¾²·¹µå ¹æ½ÄÀÇ ÇÁ·Î±×·¡¹ÖÀº Ç¥ÁØÀûÀÎ ÇÁ·Î±×·¡¹Ö ¶óÀ̺귯¸®ÀÇ À§Ä¡·Î µé¾î¿À±â ½ÃÀÛÇß´Ù. ¸®´ª½º Ä¿³ÎÀº 2.0 ¹öÀüÀÌ µÇ¸é¼­ºÎÅÍ ¸ÖƼ-¾²·¹µå ÇÁ·Î¼¼½º¸¦ ´Ù·ê ¼ö ÀÖ°Ô µÇ¾ú°í µû¶ó¼­ ¾²·¹µå ÇÁ·Î±×·¡¹Ö¿¡ ±æÀ» ¿­¾îÁÖ°í ÀÖ´Ù.

4.1 ¾²·¹µå ÇÁ·Î±×·¡¹ÖÀ» Çϱâ À§ÇØ ÇÊ¿äÇÑ °ÍÀº?

¸®´ª½º C ¶óÀ̺귯¸® ¹öÀü 5.x ´ëÀÇ ¶óÀ̺귯¸®¿¡¼­´Â »ç¿ëÀÚ ·¹º§ (User-Level)ÀÇ ¾²·¹µå ¶óÀ̺귯¸®°¡ µé¾îÀÖÀ¸³ª ±×·¸°Ô ¾µ¸¸ ÇÑ °ÍÀº ¾Æ´Ï¶ó ´Â ¸»µéÀÌ ¸¹´Ù. ¸î ¹ø ½ÃÇèÇغ» °á°ú ±¸ÇöµÇÁö ¾ÊÀº °Íµéµµ ¸î °¡Áö À־ ¾Æ¿¹ ÄÄÆÄÀÏ ÀÚü°¡ ¾ÈµÇ´Â °æ¿ìµµ Çã´ÙÇß´Ù.

¿©·¯ºÐÀÌ ±¸ÇØ¾ß ÇÒ °ÍÀº Xavier Leroy¾¾ÀÇ Ä¿³Î ¼öÁØ(Kernel-Level) ¾²·¹µå ¶óÀ̺귯¸®ÀÌ´Ù. Ä¿³Î ¼öÁØÀÇ ¾²·¹µå¶õ ¸®´©½º¾¾°¡ Ä¿³Î ¹öÀü 2.0 ÀÌÇÏ¿¡¼­ Á¦°øÇÏ°í ÀÖ´Â clone()À̶ó°í ÇÏ´Â »õ·Î¿î ±â´É¿¡ ÀÇ°ÅÇÑ ¾²·¹µå¸¦ ¸»ÇÑ´Ù. ÇöÀç ¼Ò°³ ¼öÁØ¿¡ ±×Ä¡´Â ÀÌ ±Û¿¡¼­ »ç¿ëÀÚ ·¹º§ÀÇ ¾²·¹µå¿Í Ä¿³Î ¼öÁØÀÇ ¾²·¹µå´Â Å©°Ô ±¸ºÐÇÒ ÇÊ¿ä ¾øÀ¸¸ç API´Â °°À¸¹Ç·Î »ó°üÇÏÁö ¾Ê¾Æµµ ÁÁ´Ù.

¼Ò½º¸¦ ±¸ÇÏ¿© ¼öµ¿À¸·Î ¼³Ä¡ÇØ¾ß Çϴµ¥ ±× À§Ä¡´Â ´ÙÀ½°ú °°´Ù. pauillac.inria.fr/~xleroy/linuxthreads/ ·¹µåÇÞ ¹èÆ÷ÆÇ »ç¿ëÀÚ´Â ¼Õ½±°Ô Ä¿³Î ¾²·¹µå ¶óÀ̺귯¸®¸¦ ¼³Ä¡ÇÒ ¼ö ÀÖ´Ù. ·¹µåÇÞ ¹èÆ÷ÆÇ ¹öÀü 4.1¿¡ ÆÐÅ°Áö°¡ Ãß°¡µÇ¾î Àֱ⠶§¹®ÀÌ´Ù. ¿©·¯ºÐÀÌ ¼³Ä¡ÇØ¾ß ÇÒ ÆÐÅ°Áö¸íÀº linuxthreads, linuxthreads-devel ÀÌ·¸°Ô 2 °³ÀÇ ÆÐÅ°ÁöÀÌ´Ù. ¸¶Âù°¡Áö·Î Leroy¾¾ÀÇ Ä¿³Î ¾²·¹µå ¶óÀ̺귯¸®ÀÌ´Ù.

´ÙÀ½ ¿¹Á¦¸¦ ÄÄÆÄÀÏÇغ¸ÀÚ. (ÀÌ ¼Ò½º´Â ¸®´ª½º Àú³Î 97³â 2¿ùÈ£ ISSUE 34È£, Martin McCarthy¾¾ÀÇ ¿ø°í¿¡¼­ Listing 6.¿¡¼­ ÀοëÇÑ °ÍÀÔ´Ï´Ù)

{{{{#define _REENTRANT
#include <stdio.h>
#include <pthread.h>

#define MATSIZE     4

/* ÇÔ¼ö ¿øÇü */
void* matMult ( void* );

/* Àü¿ª Çà·Ä ÀÚ·á */

int mat2[MATSIZE][MATSIZE] =
  {  {1, 2, 3, 4 },
     {4, 5, 6, 7 },
     {7, 8, 9, 10 },
    {10, 11, 12, 13 } };
int mat1[MATSIZE][MATSIZE] =
  {  { 9, 8, 7, 6 },
    { 6, 5, 4, 3 },
    { 3, 2, 1, 0 },
    { 0, -1, -2, -3 } };
int result[MATSIZE][MATSIZE];

int
main( void )
{
    pthread_t thr[MATSIZE];

    int i, j;

    for ( i = 0 ; i < MATSIZE ; ++i )    {
        pthread_create ( &thr[i], NULL, matMult, (void*)i );
    }
    for ( i = 0 ; i < MATSIZE ; ++i )    {
        pthread_join ( thr[i], NULL);
    }
/* ¼Ò½º ´ÙÀ½¿¡ °è¼Ó */
/* ¼Ò½º ¾Õ¿¡¼­ À̾îÁü */

    for ( i = 0 ; i < MATSIZE ; ++i )    {
        printf ("|");
        for ( j = 0 ; j < MATSIZE ; ++j )
            printf ("%3d ", mat1[i][j] );
        printf ("|%c|", ( i==MATSIZE/2 ? 'x' : ' ') );
        for ( j = 0 ; j < MATSIZE ; ++j )
            printf ("%3d ", mat2[i][j] );
        printf ("|%c|", ( i==MATSIZE/2 ? '=' : ' ') );
        for ( j = 0 ; j < MATSIZE ; ++j )
            printf ("%3d ", result[i][j]);
        printf ("|\n");
    }

    return 0;
}

void*
matMult ( void* col )
{
    int i, j;
    int val;

    for ( i = 0 ; i < MATSIZE ; ++i )
    {
        result[i][(int)col] = 0;
        for ( j = 0 ; j < MATSIZE ; ++j )
            result[i][(int)col] += mat1[i][j] *
                mat2[j][(int)col];
    }

    return NULL;
}

¾Æ·¡´Â ½ÇÇà °á°ú¸¦ º¸¿©ÁØ´Ù.

$ gcc thread_ex1.c -o thr_ex1 -lpthread
$ ./thr_ex1
| 9  8  7  6 |   | 1  2  3  4  |   | 150 180 210 240 |
| 6  5  4  3 |   | 4  5  6  7  |   |  84 102 120 138 |
| 3  2  1  0 | x | 7  8  9 10  | = |  18 24 30 36    |
| 0 -1 -2 -3 |   | 10 11 12 13 |   | -48 -54 -60 -66 |

¾²·¹µå ÇÁ·Î±×·¡¹Ö ¹æ½ÄÀ¸·Î Çà·ÄÀ» °è»êÇÑ ¿¹ÀÌ´Ù. »ç½Ç ¾²·¹µå ÇÁ·Î±×·¡¹ÖÀ» ¹è¿ì±â ¾î·Æ´Ù±â º¸´Ù´Â ¾îµð¿¡ È°¿ëÇÒ °ÍÀΰ¡¸¦ ã´Â °ÍÀÌ ´õ ¾î·Æ´Ù°í ¸»ÇÒ ¼ö ÀÖÀ» °Í °°´Ù. ¾²·¹µåÀÇ È°¿ë ¿µ¿ªÀº ¾Õ¼­ ¾ê±âÇÑ ´ÙÁß Å¬¶óÀ̾ðÆ® Áö¿ø ¼­¹ö ÇÁ·Î±×·¡¹Ö ±×¸®°í ¿©±â¼­ º¸´Â °Íó·³ Çà·Ä ¿¬»ê ±×¸®°í µÒ°ú °°ÀÌ µ¶¸³ÀûÀ¸·Î ¿òÁ÷ÀÌ´Â ÀûµéÀÌ ¸¹ÀÌ µîÀåÇØ¾ß ÇÏ´Â °ÔÀÓÀ» µé ¼ö ÀÖ´Ù. °¡±î¿î ¿¹·Î´Â Áö³­´Þ¿¡ ¼Ò°³Çß´ø MPEG Layer3 µðÄÚ´õ/Ç÷¹À̾îÀÎ splay°¡ ¹Ù·Î pthread ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ°í ÀÖ´Ù.

Çà·Ä ¿¬»ê¿¡ ´ëÇؼ­ ¾Ë¾Æº¸ÀÚ. À§¿¡¼­´Â 4x4 Á¤¹æÇà·Ä 2 °³ÀÇ Çà·Ä °öÀ» ó¸®ÇÏ´Â °úÁ¤À» º¸¿©ÁÖ°í ÀÖ´Ù. ¿©·¯ºÐÀÌ °íµîÇб³ ¼öÇÐÀ» ¸¶ÃÆ´Ù¸é Çà·Ä °öÀÌ ¾î¶² ½ÄÀ¸·Î ÀÌ·ïÁö´ÂÁö ±× ±ÔÄ¢À» ¾Ë°í ÀÖÀ» °ÍÀÌ´Ù. ¾Õ Çà·ÄÀÇ m ¹ø° Çà°ú µÚ Çà·ÄÀÇ n ¹ø° ¿­À» °è»êÇÏ¿© °á°ú Çà·ÄÀÇ m Çà n ¿­ÀÇ ¿ø¼Ò°¡ µÈ´Ù. Çà·Ä °ö ±ÔÄ¢À» Àß »ìÆ캸¸é Çà°ú ¿­ÀÇ °öÀº ¼­·ÎÀÇ °á°ú¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê°í µ¶¸³ÀûÀ¸·Î ÇàÇØÁö´Â ¿¬»êÀÓÀ» ¾Ë ¼ö ÀÖ´Ù. µû¶ó¼­ °¢ Çà°ú ¿­ÀÇ °öÀº º´·Ä ó¸®ÇϱⰡ ¾ÆÁÖ ÁÁ´Ù.

ÇÊÀÚ´Â ¾²·¹µå ÇÁ·Î±×·¡¹ÖÀ» º¸°í ÀÖ³ë¶ó¸é ¼Õ¿À°øÀÌ ÀûÀ» ¹°¸®Ä¡±â À§ÇÏ¿© ÀÚ½ÅÀÇ ¸Ó¸®ÅÐÀ» »Ì¾Æ Àڱ׸¶ÇÑ ºÐ½ÅµéÀ» ¸¸µé¾î °ø°ÝÇÏ´Â ¸ð½ÀÀ» ¿¬»óÇÏ°ï ÇÑ´Ù.

4.2 POSIX ¾²·¹µå

¸ÖƼ¾²·¹µù¿¡ °üÇÏ¿© POSIX Ç¥ÁØÀÌ ÀÌ¹Ì ¸¶·ÃµÇ¾î ÀÖ´Ù. µû¶ó¼­ POSIX ¾²·¹µå Ç¥ÁØ¿¡ µû¸¥ ÇÁ·Î±×·¡¹ÖÀ» ÇÑ´Ù¸é ¼Ò½º ÄÚµå ¼öÁØ¿¡¼­ ¸®´ª½º¿¡¼­»Ó ¾Æ´Ï¶ó ´Ù¸¥ ºñ½ÁÇÑ À¯´Ð½º¿¡¼­ °°Àº ÇÁ·Î±×·¥À» ¿î¿µÇÒ ¼ö ÀÖ´Ù. ¸®´ª½º ¾²·¹µå ¶óÀ̺귯¸®µéÀº POSIX Ç¥ÁØÀ» µû¸£¹Ç·Î °ÆÁ¤ÇÒ ÇÊ¿ä¾ø´Ù.

4.3 °ü·ÃµÈ À̾߱â

¾²·¹µå¿¡ ´ëÇÏ¿© À̾߱âÇϸ鼭 ºü¶ß¸± ¼ö ¾ø´Â ÁÖÁ¦µéÀÌ ÀÖ´Ù. ¹Ù·Î º´·Ä ´ÙÁß ÇÁ·Î¼¼¼­ SMP¿Í ¸¶Å©(Mach) Ä¿³ÎÀÌ ¹Ù·Î ±×°ÍÀÌ´Ù. ¿äÁò ¿ì¸®´Â ½É½ÉÁö ¾Ê°Ô 2 °³ÀÇ ÇÁ·Î¼¼¼­¸¦ ÀåÂøÇÒ ¼ö ÀÖ´Â º¸µå¸¦ º¼ ¼ö ÀÖ´Ù. ±×¸®°í ±âÁ¸ÀÇ À¯´Ð½º Ä¿³Î°ú´Â ´Ù¸¥ ¼³°è ¹æ½ÄÀÇ ¸¶Å©(Mach) Ä¿³Î¿¡ ´ëÇÑ ¾ê±â¸¦ ½É½ÉÄ¡ ¾Ê°Ô µè°Ô µÈ´Ù. ¾²·¹µå ÇÁ·Î±×·¡¹ÖÀº ¹Ù·Î ÀÌ·± ȯ°æ¿¡¼­ °¡Àå ¶Ù¾î³­ È¿À²À» ¹ßÈÖÇÑ´Ù°í ÇÑ´Ù.

Ä«³×±â ¸á·± ´ëÇÐ(CMU)¿¡¼­ ½ÃÀÛÇÑ »õ·Î¿î ¿î¿µÃ¼°è ¿¬±¸ ÇÁ·ÎÁ§Æ®ÀÇ ÀÇ ÇϳªÀÎ ¸¶Å© ÇÁ·ÎÁ§Æ®´Â 1985³âºÎÅÍ ½ÃÀ۵Ǿú´Ù°í ÇÏ´Ï ²Ï ¿À·£ ½Ã°£À» °ÅÄ£ ½Ã½ºÅÛÀ̶ó°í ÇÒ ¼ö ÀÖ´Ù. 1994³â CMUÀÇ ¸¶Å© Ä¿³Î °³¹ßÀº ÁߴܵǾú°í ¸¶Å© Ä¿³ÎÀÇ °³¹ßÀº Open Software Foundation, À¯Å¸ ´ëÇÐÀÇ Flexmach, Çï½ÌÅ° ´ëÇÐÀÇ LITES ½Ã½ºÅÛ, ±×¸®°í FSFÀÇ Hurd ½Ã½ºÅÛÀ¸·Î °³¹ßÀÌ ÁøÇà ÁßÀÌ´Ù. ¸¶Å© Ä¿³Î¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ Á¤º¸´Â ´ÙÀ½ »çÀÌÆ®¿¡¼­ ¾òÀ» ¼ö ÀÖ´Ù. www.cs.cmu.edu/afs/cs.cmu.edu/project/mach/public/www/mach.html

¾ÈŸ±õ°Ôµµ ¸®´ª½º´Â ¸¶Å© Ä¿³Î À§¿¡ ¸¸µé¾îÁø °ÍÀÌ ¾Æ´Ï¸ç ÀüÅëÀûÀÎ À¯´Ð½º ½ºÅ¸ÀÏ·Î ¸¸µé¾îÁø °ÍÀÌ´Ù. ÇÏÁö¸¸ ÀÌ¹Ì ¾ÖÇà »ç¿¡ ÀÇÇØ ¸¸µé¾îÁø MkLinux´Â ¸¶Å© Ä¿³Î À§¿¡ ¸®´ª½º¸¦ ¿Ã·Á³õ´Âµ¥ ¼º°øÇÏ¿´´Ù. ¾ÆÁ÷ Çö½ÇÀûÀÎ ÈûÀ» ¹ßÈÖÇϱ⿡´Â ¸¹Àº ½Ã°£À» ±â´Ù·Á¾ß ÇÒ °ÍÀ¸·Î ¿¹»óµÇ´Â ¿î¿µÃ¼°è GNU´Â ¸¶Å© Ä¿³Î ¹æ½ÄÀ̸ç Hurd¶ó´Â Ä¿³ÎÀ» »ç¿ëÇÑ´Ù. ÃÖ±Ù µé¾î GNU Ãø¿¡¼­µµ ¸¶Å© Ä¿³ÎÀ» ³»³õ¾Ò´Ù°í ÇÑ´Ù. ¸¶Å© Ä¿³Î¿¡ ´ëÇÑ °ü½ÉÀº ¹«¾ùº¸´Ùµµ ¾ÖÇà »ç·Î ÀμöµÈ ³Ø½ºÆ®½ºÅÜÀÇ ÇϺΠ±â¼úÀ̱⿡ ´õ¿í Ä¿Áö¸®¶ó º»´Ù. GNU Hurd¿¡ °üÇÑ Á¤º¸´Â ´ÙÀ½ »çÀÌÆ®¸¦ ¹æ¹®Çغ¸±â ¹Ù¶õ´Ù. www.gnu.ai.mit.edu/software/hurd/hurd.html

5. ¸®¾óŸÀÓ ¸®´ª½º

Áö±ÝºÎÅÍ ¼Ò°³ÇÒ ³»¿ëÀº RT-Linux¶ó°í ºÒ¸®´Â °ÍÀ¸·Î¼­ ¸ÖƼŽºÅ· OS¿¡¼­ ÇØ°áÇϱâ Èûµç ¸®¾ó ŸÀÓ(Real-Time) Áö¿øÀ» ¸®´ª½º¿¡ °¡Á®¿Â µ¶Æ¯ÇÑ ÇÁ·ÎÁ§Æ®ÀÌ´Ù. ÀϹÝÀûÀ¸·Î ¼±Á¡Çü ¸ÖƼŽºÅ· ½Ã½ºÅÛ¿¡¼­ Á¤È®ÇÑ ½Ã°£ Áֱ⸦ °¡Áö°í ÀÏÀ» ÇØ¾ß ÇÏ´Â ÇÁ·Î¼¼½º¿¡°Ô Ä¿³ÎÀÌ Á¤È®ÇÑ Å¸À̹ÖÀ» ¸ÂÃçÁشٴ °ÍÀº °ÅÀÇ ºÒ°¡´ÉÇÑ ÀÏó·³ º¸ÀδÙ.

°ÅÀÇ ´ëºÎºÐÀÇ ÀÛ¾÷µé(¿¹¸¦ µé¾î ¿öµå ÇÁ·Î¼¼½Ì, À¥ ºê¶ó¿ì¡ µî)Àº ªÀº ½Ã°£ °£°Ý, Á¤È®ÇÑ ÁÖ±â¿Í´Â º° »ó°ü¾ø´Â °ÍµéÀÌ´Ù. ¸÷½Ã ºÎÇÏ°¡ °É·Á ¿öµå ÇÁ·Î¼¼¼­¿¡°Ô ³Ñ°ÜÁ®¾ß ÇÒ Á¦¾î±ÇÀÌ Àá½Ã Áö¿¬µÈ´Ù´ø°¡ Çؼ­ ¿öµå ÀÛ¾÷À» ¸ÁÄ¡°Å³ª ÇÏÁö´Â ¾Ê´Â´Ù. ³×Æ®¿öÅ© »çÁ¤ ¶§¹®¿¡ ¸ØÃß±â ÀϾ¥ÀÎ ºê¶ó¿ì¡ ÀÛ¾÷ÀÌ 1-2 ÃÊ ´Ù¸¥ ÀÛ¾÷¿¡ ÀÇÇØ ¸ØÃçÁø´Ù Çصµ ¹®Á¦µÉ °ÍÀº ¾ø´Ù.

ÇÊÀڷμ­´Â Á¤È®ÇÑ Áֱ⸦ °¡Áö°í ½Ã±×³ÎÀ» º¸³»¾ß ÇÑ´ÙµçÁö ÇÏ´Â Áß¿äÇÑ ÀÛ¾÷¿¡ ¾î¶² ÀÏÀÌ ÀÖ´ÂÁö Àß »ó»óÀÌ ¾ÈµÇÁö¸¸ ¾îÂî µÇ¾úµç ½Ç½Ã°£ Áö¿ø OS¿¡ ´ëÇÑ Á߿伺À» ºü¶ß¸± ¼ö ¾ø´Â °Í Áß Çϳª¶ó°í ÇÑ´Ù. ÀÌ ¹®Á¦¸¦ ¸®´ª½º¿¡¼­ ÇØ°áÇؾ߸¸ °üÂû/°¨½Ã Ä«¸Þ¶ó, ·Îº¿ ¶Ç´Â ¿©·¯ °úÇÐ °ü·Ã µµ±¸µéÀ» ¸®´ª½º¸¦ ¿î¿µÇÏ´Â PC¿¡ ¿¬°áÇÏ¿© È°¿ëÇÏ´Â °ÍÀÌ °¡´ÉÇØÁø´Ù.

¸®´ª½º¿¡¼­ Á¤È®ÇÑ Å¸À̹ÖÀÌ ÀÌ·ïÁöÁö ¾Ê´Â ¼ø°£¿¡ ´ëÇؼ­ ¼­¼úÇ϶ó¸é ¸Ö¸®¼­ ãÁö ¾Ê¾Æµµ µÈ´Ù. ¿©·¯ºÐÀº ´ëºÎºÐ µ¢Ä¡µµ Å©°í ¶ß´Âµ¥ ½Ã°£µµ ¸¹ÀÌ °É¸®´Â ³Ý½ºÄÉÀÌÇÁ¸¦ ¸®´ª½º/X À©µµ¿¡¼­ ¶ç¿öº» ÀûÀÌ ÀÖÀ» °ÍÀÌ´Ù. ¶ß´Â µ¿¾È ¸¶¿ì½º Á¶Â÷ ¿òÁ÷ÀÏ »ý°¢À» ÇÏÁö ¾Ê°í ¸ðµç ÇÁ·Î±×·¥µéÀÌ Çì¸Å´Â ¸ð½ÀÀ» ½±°Ô È®ÀÎÇÒ ¼ö ÀÖ´Ù.

5.1 ¼ÒÇÁÆ® ¸®¾ó ŸÀÓ Áö¿ø

¾î¶°ÇÑ ÆÐÄ¡ ¾øÀÌ Ç¥ÁØ Ä¿³Î ¾È¿¡ µé¾îÀÖ´Â ¸®¾ó ŸÀÓ Áö¿øÀ» »ç¿ëÇÏ´Â °ÍÀ» ¼ÒÇÁÆ® ¸®¾ó ŸÀÓ Áö¿øÀ̶ó°í ºÎ¸£°í ÀÖ´Ù. Ä¿³Î ÄÄÆÄÀÏ ¼³Á¤½Ã ¹®ÀÚ ÀåÄ¡(Character Devices)-->Enhanced Real Time Clock Support¸¦ ¼³Á¤ÇÏ°í ³ª¼­ Ä¿³Î ÄÄÆÄÀÏÀ» Çغ¸µµ·Ï ÇÏÀÚ. ±×¸®°í ³ª¼­ ¸ÞÀÌÀú ¹øÈ£ 10, ¸¶ÀÌ³Ê ¹øÈ£ 135ÀÇ ¹®ÀÚ ÀåÄ¡ ÆÄÀÏ /dev/rtc ÆÄÀÏÀ» ¸¸µç´Ù.

# mknod /dev/rtc c 10 135

[yong@freeyong 9705]$ cat /proc/interrupts
 0:  2859962  timer
 1:   140285  keyboard
 2:     0  cascade
 3:  1447093 + serial
 4:     1 + serial
 5:     1  sound blaster
 8:     0 + rtc
10:    430 + aic7xxx
12:   202636  PS/2 Mouse
13:     1  math error
14:   252100 + ide0
15:   421489 + ide1

¸®¾ó ŸÀÓ Áö¿ø ±â´ÉÀ» °®´Â Ä¿³Î·Î ºÎÆÃÇÏ°í ³ª¼­ ÀÎÅÍ·´Æ® »ç¿ë ÇöȲÀ» »ìÆ캸¸é 8¹ø ÀÎÅÍ·´Æ®¸¦ rtc ±â´É¿¡¼­ »ç¿ëÇÏ°í ÀÖ´Ù´Â °ÍÀ» º¼ ¼ö ÀÖ´Ù.

ÀÚ, ¸®´ª½º ¼ÒÇÁÆ® ¸®¾ó ŸÀÓ Áö¿øÀ» ½ÃÇèÇغ¸±â À§ÇÑ ÇÁ·Î±×·¥À» Çϳª ±¸ÇØ¿Í¾ß ÇÑ´Ù. ´ÙÀ½Àº ¹Ù·Î ¸®´ª½º Ä¿³Î ³»ºÎ ±â´ÉÀ» »ç¿ëÇÏ´Â rt ¶ó´Â ÇÁ·Î±×·¥ ½ÇÇà±âÀÇ LSM(Linux Software Map) ÆÄÀÏÀÌ´Ù.

Legin3
Title:          rt - run program on realtime priority
Version:        1.0
Entered-date:   12 Jan 1997
Description:    rt starts any program on realtime priority, like nice
                does with lower priority. Lets you choose scheduler
                class (SCHED_RR vs SCHED_FIFO policy) and priority.
Keywords:       linux, real time, scheduler
Author:         Boris Tobotras <boris@xtalk.msk.su>
Maintained-by:  Boris Tobotras <boris@xtalk.msk.su>
Primary-site:   sunsite.unc.edu /pub/Linux/system/Admin
                10 kb rt-1.0.tar.gz
Alternate-site: ftp.macsimum.ru /pub/Linux/local
                10 kb rt-1.0.tar.gz
Platform:       Linux 1.3.87 and later
Copying-policy: GPL
End

¼Ò½º¸¦ °¡Á®¿Í ÄÄÆÄÀÏÇÏ°í ¼³Ä¡ÇÏ´Â °úÁ¤À» ¼Ò°³ÇÒ ÇÊ¿ä¾øÀÌ ¾ÆÁÖ °£´ÜÇÏ´Ù. °á°ú·Î ³ª¿À´Â ¹ÙÀ̳ʸ®¸íÀº rtÀÌ´Ù.

Usage: rt [options] command

Recognized options are:
    -r  Use SCHED_RR scheduling policy (default);
    -f  Use SCHED_FIFO scheduling policy;
    -p  N Set priority level N. If N<0, set priority level
        to sched_get_priority_min(POLICY)-N.
        Default is (sched_get_priority_max()+sched_get_priority_min())/2;
    --  End of options;
    -v  Be verbose;
    -h  This help screen.

Áö±ÝÀº splay¿Í °°Àº ÈǸ¢ÇÑ MPEG Layer3 Ç÷¹À̾ ³ª¿ÔÀ¸¹Ç·Î »ç¿ëÇÒ ÇÊ¿ä°¡ ¾ø¾îÁ³Áö¸¸ ½ÃÇè»ó ¿¹Àü¿¡´Â ¹ÙÀ̳ʸ®·Î¸¸ ÁÖ¾îÁø ¼Î¾î¿þ¾î ¹öÀüÀÇ mp3play¸¦ »ç¿ëÇÑ ÀûÀÌ ÀÖ¾ú´Ù. mp3play´Â »ç½Ç ½ºÅ©¸³Æ®¿¡ ºÒ°úÇÏ°í l3dec¶ó´Â ÇÁ·Î±×·¥°ú wavplay¸¦ ºÒ·¯´Ù »ç¿ëÇÏ¿´´Ù. ¹®Á¦´Â ÆæƼ¾ö 120 À̻󿡼­µµ Á¶±Ý¸¸ ´Ù¸¥ ÇÁ·Î¼¼½º°¡ µ¿ÀÛÇÑ´ÙµçÁö ÇÒ ¶§´Â ½ÉÇÏ°Ô À½ÀÌ ²÷±â´Â °ÍÀ̾ú´Ù. ¼Ò½º Äڵ尡 °ø°³µÇ¾î ÀÖÁö ¾ÊÀ¸¹Ç·Î º°´Ù¸¥ ÇØ°á ¹æ¹ýÀ» ãÁö ¸øÇÏ´Ù°¡ rt¶ó´Â ÇÁ·Î±×·¥À» ¾Ë°Ô µÇ¾ú°í ¸®´ª½º Ä¿³Î¿¡ ÀÌ¹Ì ¾î´À Á¤µµÀÇ ¸®¾ó ŸÀÓ Áö¿øÀÌ µé¾îÀÖ¾ú´Ù´Â °ÍÀ» ±×Á¦¼­¾ß ¾Ë°Ô µÇ¾ú´Ù.

rt [¿É¼Çµé] -- <¸®¾óŸÀÓ Áö¿øÀ» ¿øÇÏ´Â ¸í·É>
( À§¿¡¼­ -- ´Â rt¿¡ ´ëÇÑ ¿É¼ÇÀÇ ³¡ÀÓÀÏ ¾Ë¸°´Ù )

ÀÌ·¸°Ô ¼öÇà½ÃÅ°¸é ¿¹¸¦ µé¾î mp3playÀÇ °æ¿ì ³Ý½ºÄÉÀÌÇÁ¿Í °°Àº ÇÁ·Î±×·¥ÀÌ ½ÃÀÛÇصµ rt¸¦ ÅëÇØ ¼öÇà½ÃŲ ÇÁ·Î¼¼½º¿¡°Ô »ó´çÇÑ ¿ì¼±±ÇÀÌ ºÎ¿©µÇ¾î ÀÖÀ¸¹Ç·Î ÀüÇô ²÷±âÁö ¾Ê´Â Çö»óÀ» ¸ñ°ÝÇÒ ¼ö ÀÖ¾ú´Ù. ·çÆ® »ç¿ëÀÚ¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´ç¿¬È÷ ÇÑ ÇÁ·Î¼¼½º¿¡ ´ëÇÏ¿© Ưº°ÇÑ ¿ì¼±±ÇÀÌ ÁÖ¾îÁ³´Ù´Â °ÍÀº ÀüüÀûÀ¸·Î ´Ù¸¥ ÇÁ·Î¼¼½ºµé¿¡°Ô ¾Ç¿µÇâÀÌ °£´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù.

5.2 ÇÏµå ¸®¾ó ŸÀÓ Áö¿ø

ÇöÀç ¸®´ª½º Ä¿³Î ¾È¿¡¼­ ±âº»ÀûÀ¸·Î Á¦°øÇÏ°í ÀÖ´Â ¸®¾ó ŸÀÓ Áö¿øÀ» ¼ÒÇÁÆ®¶ó°í ºÎ¸£´Â °ÍÀº Michael Barabanov¾¾¿Í Victor Yodaiken¾¾ÀÇ RT-Linux ÇÁ·ÎÁ§Æ®¿¡ ´ëÇÑ »ó´ëÀûÀÎ °³³äÀ¸·Î¼­ ±×·¸°Ô ºÎ¸£´Â °ÍÀÌ´Ù. Ä¿³Î ÆÐÄ¡ÀÇ ÇüÅ·ΠÁÖ¾îÁö´Â RT-Linux´Â ´õ¿í ´õ °­·ÂÇÑ ÇüÅÂÀÇ ¸®¾ó ŸÀÓ Áö¿øÀ» ÇØÁÖµµ·Ï ¸®´ª½º Ä¿³Î ±¸Á¶¿¡ ¾à°£ÀÇ º¯È­¸¦ ÁØ °ÍÀÌ´Ù. °ü·Ã »çÀÌÆ®´Â ´ÙÀ½°ú °°´Ù. luz.cs.nmt.edu/~rtlinux/ ¿©·¯ºÐÀº ¿©±â¼­ ÀÏ´Ü Ä¿³Î 2.0.27¿¡ ´ëÇÑ ÆÐÄ¡ Çü½ÄÀ¸·Î µÈ rtlinux-0.5.tgz ÆÄÀÏÀ» ¹Þ¾Æ¿Í¾ß ÇÑ´Ù. Ä¿³Î 2.0.29¿¡ ´ëÇؼ­´Â À¥ ÆäÀÌÁö¿¡¼­ º°µµÀÇ ÆÐÄ¡ ÆÄÀÏÀ» ¹Þ¾Æ¿À¸é µÈ´Ù. ÆÄÀÏÀ» Ç®¾îº¸¸é rtlinux-0.5¶ó´Â µð·ºÅ͸®°¡ ¸¸µé¾îÁö°í kernel_patch¶ó´Â ÆÄÀÏÀ» Çϳª º¼ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ±× ÆÄÀÏÀ» /usr/src µð·ºÅ͸® ¹ØÀ¸·Î º¹»çÇÑ´Ù. ·¹µåÇÞ 4.1 »ç¿ëÀÚ¶ó¸é ÀÌ¹Ì Ä¿³Î ¹öÀüÀº 2.0.27 ÀÏ °ÍÀÌ´Ù.

cd /usr/src/linux
patch -p2 < ../kernel_patch

patch ÇÁ·Î±×·¥¿¡ -p2 ¿É¼ÇÀ» ÁÖ´Â °Í¿¡ À¯ÀÇÇÏÀÚ.

make config
make dep ; make clean
make zlilo
make modules ; make modules_install

ÀϹÝÀûÀÎ Ä¿³Î ÄÄÆÄÀÏ °úÁ¤À» ¸¶Ä¡°í ³ª¸é /lib/modules/2.0.27/misc µð·ºÅ͸®¿¡ rt_prio_sched.o ¶ó´Â ¸ðµâ ÆÄÀÏÀÌ Çϳª »ý±ä´Ù. ¸®¾óŸÀÓ Áö¿øÀ» »ç¿ëÇÏ·Á¸é ¹Ù·Î Àú ¸ðµâÀ» ·ÎµùÇØÁÖ¾î¾ß ÇÑ´Ù.±×¸®°í ³ª¼­ rt_fifo_new.o ¸ðµâµµ ·ÎµùÇÑ´Ù.

modprobe rt_prio_sched.o
modprobe rt_fifo_new.o

[root@freeyong /root]# lsmod
Module        Pages      Used by
rt_fifo_new     2      [rt_process]  0
rt_prio_sched   1                    0
sbpcd          14                    1
aic7xxx        10                    0
bsd_comp        1                    0
ppp             5      [bsd_comp]    1
slhc            2      [ppp]         1
lp              2                    0

¸ðµâÀÌ ·ÎµùµÇ¸é ¸®´ª½º Ä¿³Î°ú Çϵå¿þ¾î ·¹º§ »çÀÌ¿¡ ¸®¾ó ŸÀÓ Ä¿³ÎÃþÀ» ³¢¿öÁö°Ô µÇ¾î µÑ °£ÀÇ Ã³¸®¸¦ Áß°£¿¡ °¡·Îä¾î ó¸®ÇÏ°Ô µÇ´Â ÇüÅÂÀÌ´Ù. ±× ´ÙÀ½¿¡ ÇØÁÖ¾î¾ß ÇÏ´Â ÀÏÀº /dev µð·ºÅ͸®¿¡ ÀûÀýÇÑ ÀåÄ¡¸¦ ¸¸µå´Â ÀÏÀÌ´Ù. ¹è½Ã »ç¿ëÀÚ¶ó¸é ¸í·ÉÇà¿¡¼­ ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇØÁÖ¸é µÈ´Ù.

for i in 0 1 2 3; do mknod /dev/rtf$i c 63 $i; done

ÆæƼ¾ö 120 ¸Ó½Å¿¡¼­ RT-Linux´Â 150 ¸¶ÀÌÅ©·ÎÃÊ ¼öÁØÀÇ Á¤È®µµ¸¦ °¡Áö°í ½ºÄÉÁ층À» ÇØÁÙ ¼ö ÀÖ´Ù°í ÇÑ´Ù.

¿©·¯ºÐÀÇ ½Ã½ºÅÛ¿¡ ¸®¾ó ŸÀÓ Áö¿øÀÌ ÇÊ¿äÇÑ°¡? ´ëºÎºÐÀÇ »ç¶÷µé¿¡°Ô´Â ¹°·Ð ³í¿ÜÀÇ ¹®Á¦ÀÏ °ÍÀÌ´Ù. ±×¸®°í ¼ÒÇÁÆ® ¸®¾ó ŸÀÓ Áö¿ø¸¸À¸·Îµµ ÃæºÐÇÒ °ÍÀ̶ó°í º»´Ù.

5.3 Å×½ºÆ® Çغ¸±â

rtlinux-0.5 µð·ºÅ͸®¿¡ º¸¸é testingÀ̶ó´Â µð·ºÅ͸®¸¦ º¼ ¼ö ÀÖÀ» °ÍÀÌ´Ù. °¢ µð·ºÅ͸®ÀÇ README¸¦ Àо°í Å×½ºÆÃÀ» Çغ¸±â ¹Ù¶õ´Ù. sound µð·ºÅ͸®¿¡ ÀÖ´Â ¿¹¸¦ ½ÇÇàÇغ¸¸é ¸®¾ó ŸÀÓ Áö¿øÀÌ ¾î¶°ÇÑÁö °¨À» ÀâÀ» ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÇÊÀÚ°¡ ±ÛÀ» ¾²°í ÀÖ´Â ¼ø°£ rtlinux-0.5 ¹öÀü ÆÐÅ°Áö¿¡ µç ¼Ò½º´Â Á¦´ë·Î µ¿ÀÛÇÏÁö ¾ÊÀ¸¹Ç·Î À¥ ÆäÀÌÁö¿¡¼­ ÆÐÄ¡ÆÄÀÏÀ» °¡Á®¿Í¼­ ÆÐÄ¡ÇÑ ÈÄ ÄÄÆÄÀÏÇØ¾ß ÇÑ´Ù. sound µð·ºÅ͸® ±× À§Ä¡¿¡¼­ patch < soundpatch ÇÏ°í ³ª¼­ README¿¡ µû¶ó Å×½ºÆ®Çغ»´Ù.

¸®´ª½º¸¦ âÁ¶·ÂÀ» °¡Áö°í µµÀüÇÏ´Â »ç¶÷µé·Î ÀÎÇØ ±× ºûÀ» ¹ßÈÖÇÏ´Â °ÍÀ̶ó´Â »ý°¢ÀÌ µç´Ù.

6. ¸®´ª½º ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚµéÀº ¿äÁò ¹«½¼ »ý°¢À» ÇÏ°í Àִ°¡?

6.1 Æ÷ÆÃ, Æ÷ÆÃ, Æ÷ÆÃ

¸®´ª½º´Â Á¤¸»·Î ¼ö¸¹Àº ¾ÆÅ°ÅØó·Î Æ÷Æõǰí ÀÖ´Ù. ¡®¸®´ª½º Àú³Î¡¯ ¹ø¿ª ±â»ç¿¡¼­µµ ³ª°¬µíÀÌ ÀÎÅÚ CPU·ÎºÎÅÍ ½ÃÀÛÇÑ ¸®´ª½º´Â ¾Æ¹Ì°¡(Amiga), ¾ÆŸ¸® (Atari) - ¿ì¸® ³ª¶ó¿¡¼­´Â Âü º¸±â Èûµç ÄÄÇ»Å͵éÀÌ´Ù -, ¾ËÆÄ(DEC/Alpha), ARM, MIPS, ÆÄ¿öPC, SPARC µîÀ¸·Î Æ÷ÆÃµÇ¾î °¡Àå ¸¹Àº ¿î¿µ Ç÷§ÆûÀ» °®´Â ¿î¿µÃ¼°è°¡ µÇ¾î¹ö·È´Ù.

ÀÌ ¿Ü¿¡µµ 286 ±×¸®°í XT ÄÄÇ»ÅÍ¿¡¼­ µ¹¾Æ°¥ ¼ö ÀÖµµ·Ï ¸®´ª½º¸¦ ´Ù¿î»çÀÌ¡ÇÏ¿© ³»Àå ½Ã½ºÅÛ(Embeddable System)À¸·Î »ç¿ëÇÒ ¼ö ÀÖ°Ô ÇÏ´Â ÇÁ·ÎÁ§Æ®µµ ÁøÇàÁßÀÌ´Ù. ¸®´ª½º¸¦ ÀÛ°Ô ¸¸µå´Â ÀÛ¾÷Àº CE ȯ°æ¿¡µµ ÇʼöÀûÀ̶ó°í º»´Ù. ÀÌ ¿Í´Â Á¤¹Ý´ë·Î VAXLinux¸¦ ¸¸µé·Á´Â ¿òÁ÷ÀÓµµ ÀÖ´Ù.

¸®´©½º(Linus) ÀÚ½ÅÀº ÀÚ½ÅÀÇ Äڵ忡 ´ëÇÏ¿© ¸®´ª½º°¡ ³Ê¹«µµ ÀÎÅÚ x86 Äڵ带 ¸¹ÀÌ »ç¿ëÇ߱⠶§¹®¿¡ ´Ù¸¥ Ç÷§ÆûÀ¸·ÎÀÇ Æ÷ÆÃÀº °ÅÀÇ ºÒ°¡´ÉÇÒ °ÍÀ̶ó°í ¸»ÇÑ °Í°ú´Â Á¤¹Ý´ëÀÇ ±æÀ» °È°í ÀÖ´Ù. ¸®´ª½º´Â ´õ ÀÌ»ó ¸®´©½º ÀڽŸ¸ÀÇ °ÍÀÌ ¾Æ´Ï¸ç È¥ÀÚ ¸¸µå´Â °Íµµ ¾Æ´Ï´Ù.

ÀÌÁ¦ ÀûÁö ¾ÊÀº »ç¶÷µéÀÌ ÀÎÅÚ ¸®´ª½º ÀÌ¿Ü¿¡µµ ½ºÆÅ ¸®´ª½º¸¦ »ç¿ëÇϱ⠽ÃÀÛÇÏ´Â °Í °°´Ù. À¯´Ð½º Áø¿µ¿¡ ´ëÇؼ­µµ ÃæºÐÈ÷ À§ÇùÀûÀÎ Á¸Àç°¡ µÉ °ÍÀÎÁö µÎ°í º¸±â·Î ÇÏÀÚ. ¸®´©½º°¡ ²Þ²Ù´Â ¡®¼¼°è Á¤º¹(World Domination)¡¯ÀÌ ±×³É ÇãȲµÈ ²ÞÀº ¾Æ´Ï¶ó´Â »ý°¢À» °®°Ô ÇÑ´Ù.

¸®´ª½º °ü·Ã ÇÁ·ÎÁ§Æ®¿¡ ´ëÇÏ¿© ½±°Ô ¾Ë¾Æº¼ ¼ö ÀÖ´Â ÆäÀÌÁö´Â ¿ª½Ã sunsite.unc.edu/linux ÆäÀÌÁöÀÌ´Ù.

6.2 ÀÏ¹Ý »ç¿ëÀÚ¸¦ À§ÇÑ ¸®´ª½º, ½¬¿î ¸®´ª½º

¸®´ª½º°¡ ¸¹Àº »ç¿ëÀÚÃþÀ» È®º¸Çϸ鼭 ¡®ÀÏ¹Ý »ç¿ëÀÚ¸¦ À§ÇÑ ¸®´ª½º¡¯,¡®Áö±Ý º¸´Ù ´õ ½±°Ô ´Ù°¡°¥ ¼ö ÀÖ´Â ¸®´ª½º¡¯¿¡ ´ëÇÑ ¾ê±â°¡ ´º½º±×·ì¿¡¼­ »ó´çÈ÷ ¸¹ÀÌ ¿À°í°£´Ù. ½¬¿î ¸®´ª½º¶õ ÀüÀûÀ¸·Î À©µµ 95¿Í °°Àº »ç¿ëÀÚ Á÷°ü¼º, Æø³ÐÀº ÇÁ·Î±×·¥ÀÇ Á¸À縦 ÀǹÌÇÏ´Â °Íó·³ ´À²¸Áø´Ù. ¸ðƼÇÁ´Â Áú·È´Ù. ÀÏ°üµÈ ÀÎÅÍÆäÀ̽º°¡ ÇÊ¿äÇÏ´Ù.

¸¹Àº »ç¶÷µéÀÌ À̱¸µ¿¼ºÀ¸·Î À̾߱âÇÏ´Â ¹ÙÀÌ´Ù. ¿©·¯ºÐÀÌ º¸°í ÀÖ´Â ¸ðƼÇÁ (Motif) ÀÎÅÍÆäÀ̽º´Â À©µµ 95 ¶Ç´Â OS/2¿¡ ºñÇÏ¿© ±¸½ÄÀ̸ç ÀüÇô ¾îÇʵÇÁö ¾Ê´Â´Ù. ½ÉÇÏ°Ô´Â À©µµ 3.1 ½Ã´ëÀÇ ¸Á·ÉÀ» º¸´Â µí ÇÏ´Ù°í ¸»ÇÏ´Â »ç¶÷µµ ÀÖ´Ù. ¸®´ª½º/X À©µµ¼­ GUI ÇÁ·Î±×·¡¹ÖÀ» ÇÏ·Á´Â »ç¶÷µé¿¡°Ô À־ ÀÚÀ¯·Ó°Ô ´À²¸Áö±âµµ ÇÏÁö¸¸ Èûµé°Ôµµ ´À²¸Áö´Â ¸éÀº ¹Ù·Î ÀÌ°ÍÀÌ ¹Ù·Î ¸®´ª½º/X À©µµÀÇ ¸ð½ÀÀÌ´Ù¶ó°í ¸»ÇÒ ¸¸ÇÑ ±¸Ã¼ÀûÀÌ°í Ç¥ÁØÀûÀÎ ÀÎÅÍÆäÀ̽º°¡ ¾ø´Ù´Â »ç½ÇÀÌ´Ù. ¸®´ª½ºÀÇ ¹«Á¤ºÎÀûÀΠƯ¼º»ó ÀÌ·± ¸ð½ÀÀ¸·Î ÅëÀÏÇÏ´Â °­Á¦¼ºÀÌ ÅëÇÏÁö ¾Ê´Âµ¥´Ù°¡ »ç½Ç ÀÌ·±µ¥ °ü½ÉÀ» °®±â ½ÃÀÛÇÑ °Íµµ ±×¸® ¿À·¡µÇÁö´Â ¾Ê¾Ò±â ¶§¹®ÀÌ´Ù. ¿äÁò µé¾î¼­¾ß °Ü¿ì ¸®´ª½ºÀÇ GUIÈ­¿¡ ´ëÇÏ¿© °í¹ÎÇÏ´Â »ç¶÷µéÀÌ ¸¹¾ÆÁ³À» »Ó ÀÌ´Ù.

ÀÎÅÍÆäÀ̽º¿¡ ´ëÇÑ °³¼± °í¹Î

SVGA ±×·¡ÇÈ ¶óÀ̺귯¸®¿Í X À©µµ ½Ã½ºÅÛÀ» ±×·¡ÇÈ È¯°æÀ¸·Î »ç¿ëÇÏ´Â ¸®´ª½º´Â ¼­¼­È÷ ÀÚ½ÅÀÌ »ç¿ëÇÏ°í ÀÖ´Â ±×·¡ÇÈ ½Ã½ºÅÛ¿¡ ´ëÇÏ¿© ȸÀǸ¦ ´À³¢±â ½ÃÀÛÇÑ °Í °°´Ù. ¿ì¼± X À©µµ ¼­¹ö´Â ±×·¡ÇÈ ÀÚ¿ø¿¡ °üÇÑ ÇÑ ¹«Á¦ÇÑÀûÀÎ ±Ç·ÂÀ» Çà»çÇÏ°í ÀÖ°í ¸®´ª½º Ä¿³ÎÀÌ °ü¿©ÇÏÁö ¸øÇÏ°í ÀÖ´Ù. °¡Àå ½±°Ô º¼ ¼ö ÀÖ´Â Çö»óÀ¸·Î´Â X À©µµ ½Ã½ºÅÛÀÌ Á¾·áÇϸ鼭 ÄÜ¼Ö È­¸éÀ» ¿ÏÀüÈ÷ ¸Á°¡¶ß¸®°í ¾î¶² ¶§´Â º¹±¸Á¶Â÷ ÇÒ ¼ö ¾ø¾î¼­ ¸®ºÎÆÃÇÏ´Â °ÍÀÌ ÆíÇÒ ¶§°¡ ÀÖ¾ú´Ù. ¶ÇÇÑ º¸¾È »ó X ¼­¹ö°¡ setuid ¹ÙÀ̳ʸ® »óÅ·ΠÀÛµ¿ÇϹǷΠū ¹®Á¦°¡ ¾Æ´Ò ¼ö ¾ø´Ù. ÀÌ¿¡ µû¶ó ¸®´ª½º¿¡¼­ X ¼­¹öÀÇ ¹«Á¦ÇÑ ±Ç·ÂÀ» »©¾Ñ°í ¸®´ª½º Ä¿³Î¿¡ ±×·¡ÇÈ Á¦¾î ±ÇÇÑÀ» µ¹·ÁÁÖ´Â ÇÁ·ÎÁ§Æ®ÀÎ GGI°¡ ³ª¿ÍÀÖ°í ¼Ò±âÀÇ ¼º°ú¸¦ °¡Áø »óÅÂÀÌ´Ù. Ȩ ÆäÀÌÁö´Â synergy.foo.net/~ggi ¿©±â¼­ Àç¹ÌÀÖ´Â ¶Ç ´Ù¸¥ Æë±ÏÀ» ¸¸³¯ ¼ö ÀÖ´Ù.

±× ¿Ü¿¡µµ °ÔÀÓ SDK °³¹ß ÇÁ·ÎÁ§Æ® µîÀÌ Àִµ¥ ±× ¼º°ø ¿©ºÎ¸¦ ¶°³ª¼­ °á°ú¹°Àº ÃæºÐÈ÷ ¸®´ª½º °øµ¿Ã¼¿¡ ȯ¿øµÇ¸®¶ó º»´Ù.

¸®´ª½º ÀÎÅÍÆäÀ̽º °³¼±(LIP)¶ó´Â °Íµµ ÀÖ´Ù. ¿äÁòÀº ¸¹Àº À§Á¬µéÀÌ ½ñ¾ÆÁ® ³ª¿À°í ÀÖÀ¸´Ï ±â´ëÇÒ ¸¸µµ ÇÏ´Ù. Ȩ ÆäÀÌÁö´Â blank.pages.de/lip LIP´Â Xt ÃþÀ» »ç¿ëÇÏÁö ¾Ê°í Á÷Á¢ Xlib¸¦ »ç¿ëÇÏ¿© ±¸ÇöÇÑ ¸®´ª½º ÀÎÅÍÆäÀ̽º¸¦ À§ÇÑ À§Á¬¼¼Æ®ÀÌ´Ù. ¿©·¯ºÐ Áß µµÀüÇÒ »ý°¢À» °¡Áø »ç¶÷Àº ¾ø´Â°¡?

¸®´ª½º¿¡°Ô ĢĢÇÑ À¯´Ð½º Å͹̳ÎÀ̶ó´Â ¿Ê ÀÌ¿Ü¿¡ Á¤¸»·Î »ê¶æÇÑ »õ·Î¿î ¿Ê À» Áö¾îÁÙ ÀçºÀ»ç´Â ¾ø´Â°¡?¡±

°øÅëÀÇ µ¥½ºÅ©Å¾ ȯ°æ?

¸®´ª½º/X À©µµ ȯ°æ¿¡´Â ¼ö¸¹Àº À©µµ °ü¸®ÀÚ°¡ ÀÖ´Ù. Á¦ÀÏ ¸ÕÀú »ç¶û ¹Þ¾Ò´ø °ÍÀÌ fvwm ·ù¶ó¸é ±× ´ÙÀ½Àº ¾ÖÇÁÅͽºÅÜ°ú °°Àº ³Ø½ºÆ®½ºÅÜ ºÐÀ§±âÀÇ °ü¸®ÀÚ¸¦ µé ¼ö ÀÖ°í ¿ÏÀüÈ÷ À©µµ 95¿Í °°Àº Èä³»¸¦ ³»ÁÖ´Â fvwm95¶ó´Â °ü¸®ÀÚµµ ÀÖ´Ù. ¿©±â¿¡ KDE(K Desktop Environment)¶ó´Â °ÍÀÌ °¡¼¼Çߴµ¥ ÀÌ°ÍÀº À©µµ °ü¸®ÀÚ Çϳª¸¸ÀÌ ¾Æ´Ï¶ó µ¥½ºÅ©Å¾ ȯ°æÀ» ±¸¼ºÇÏ´Â °ÅÀÇ ¸ðµç ¿ä¼Ò¸¦ °¡Áö°í Àִٴµ¥¿¡¼­ ³î¶ó¿òÀ» ±ÝÄ¡ ¸øÇÑ´Ù.

¼³Ä¡Çغ¸¸é ¾Ë°ÚÁö¸¸ ¿©·¯ºÐÀº ¸¶Ä¡ À©µµ 95³ª OS/2¿Í °°Àº ȯ°æ¿¡¼­ ÀÛ¾÷ÇÏ°í ÀÖ´Ù´Â Âø°¢ÀÌ µé Á¤µµÀÌ´Ù. À©µµ 95¿¡¼­ º¼ ¼ö ÀÖ´Â ¸¹Àº Ä£¼÷ÇÑ ¿ä¼ÒµéÀ» ¿©±â¼­ ¹ß°ßÇÒ ¼ö ÀÖÀ¸¸ç ½ÉÁö¾î »õ·Î¿î ÆÄÀÏ°ü¸®ÀÚÀÎ ¸®´ª½º ÀͽºÇ÷η¯±îÁö ÀÖ´Ù.

KDE ÇÁ·ÎÁ§Æ®ÀÇ °ü¸®ÀÚ´Â ¼³Á¤ ¹æ½Ä, ÆÄÀÏÀ» µÎ´Â À§Ä¡, Å°º¸µå ¾×¼¿·¹ÀÌÅÍ »ç¿ë¹ý µî ÀÏ°üµÈ ȯ°æÀ» °®Ãß±â À§ÇØ ³ë·ÂÇÏ°í ÀÖ´Ù. ¿©·¯ºÐÀÌ KDE ÇÁ·ÎÁ§Æ®ÀÇ ÇÑ ±¸¼º¿ä¼Ò¸¦ ¸¸µé°í ½Í´Ù¸é ¸ÕÀú ¡®The Style Guide¡¯¶ó´Â °ÍÀ» Àо¾Æ¾ß ÇÑ´Ù.

KDE´Â Æ®·Ñ Å×Å©(Troll Tech)¶ó´Â ȸ»ç www.troll.no ¿¡¼­ ³»³õÀº ¹Ý°ø°³ X À©µµ À§Á¬ÀÎ Qt¶ó´Â °Í¿¡ ÀÇ°ÅÇÏ°í ÀÖ´Ù. ±×µéÀÌ ³»³õ´Â Qt À§Á¬Àº X À©µµ/À©µµ 95/NT ¸ÖƼÇ÷§Æû ¿ëÀ¸·Î¼­ À©µµ 95/NT ȯ°æ¿¡ ´ëÇؼ± ¶óÀ̼±½º·á¸¦ ¹Þ´Â ¹Ý¸é X À©µµ ½Ã½ºÅÛ¿¡ ´ëÇؼ­´Â ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î¸¦ ¸¸µå´Â µ¥ »ç¿ëÇÒ ¶§´Â ¼Ò½º±îÁö ¹«·á·Î Á¦°øÇÑ´Ù. ÇÏÁö¸¸ ¿©·¯ºÐÀÌ ¼Ò½º¸¦ °íÄ¥ ±ÇÇÑÀº ¾ø´Ù. KDE¶ó´Â ÈǸ¢ÇÑ µ¥½ºÅ©Å¾ ÅëÇÕ ÆÐÅ°Áö°¡ ÀÖÀ½¿¡µµ ºÒ±¸ÇÏ°í ¸¹Àº »ç¶÷µéÀÌ ¹Ý´ëÇÏ´Â ÀÌÀ¯°¡ ¹Ù·Î GPLÀÌ ¾Æ´Ï¶ó´Â Á¡ÀÎ °Í °°´Ù.

KDE¿¡ ´ëÇÏ¿© ·¹µåÇÞÀ̳ª µ¥ºñ¾È°ú °°Àº ¹èÆ÷ÆÇ Á¦ÀÛÀÚµéÀÌ ¾î¶² ¹ÝÀÀÀ» º¸ÀÌ´ÂÁö°¡ Áß¿äÇÑ °ü°ÇÀ¸·Î º¸ÀδÙ. ÇÊÀڷμ­´Â ÀÌ ¼º°ú°¡ Âü ¾Æ½¬¿ï »ÓÀÌ´Ù (ÇÑ °¡Áö °øÅëÀûÀÎ °ÍÀÎ ÀÎÅÍÆäÀ̽º¿¡ °üÇÑ ÇÁ·ÎÁ§Æ®µéÀÌ ´ëºÎºÐ µ¶ÀÏÀε鿡 ÀÇÇØ ÁÖµµµÇ°í ÀÖ´Ù´Â »ç½ÇÀÌ´Ù. ºÎ·´°Ô ´À²¸Áø´Ù). ÀÌ ¹®Á¦µé¿¡ °üÇؼ­´Â 5¿ù 21   23ÀÏ 3ÀÏ µ¿¾È µ¶ÀÏ¿¡¼­ ¿­¸° ¡®Á¦ 4Â÷ ±¹Á¦ ¸®´ª½º ȸÀÇ¡¯¿¡¼­ ÁßÁ¡ÀûÀ¸·Î ´Ù·ïÁ³´Ù.

»è¸·ÇÑ ¸®´ª½º ·Î°í?

¸®´ª½º¿¡¼­ ÇÑ °¡Áö È°¹ßÇÑ ÀÛ¾÷À» µé¶ó¸é ·Î°í ±×¸®±â ÀÛ¾÷ÀÌ ¾Æ´Ò±î ÇÑ´Ù. ¾à°£ÀÇ ±×·¡ÇÈ ½Ç·ÂÀ» °¡Áø »ç¶÷µéÀ̶ó¸é ¸®´ª½º¸¦ Ç¥ÇöÇÏ´Â Àç¹ÌÀÖ´Â ·Î°í¸¦ ±×·Á¼­ °øÇåÇϱ⸦ ÁÁ¾ÆÇÑ´Ù. ¸®´ª½º¿¡ ÀÖ¾î ¸ðµç °ÍÀº »ç¿ëÀÚÀÇ Á÷Á¢ÀûÀÎ ¼±Åÿ¡ ´Þ¸° °ÍÀ̹ǷΠ±× ¸¹Àº ·Î°í Áß ¸î¸îÀº ¸¹Àº »ç¶ûÀ» ´©¸®°í ÀÖ´Ù. ´ÜÀûÀÎ ¿¹°¡ ¹Ù·Î Æë±Ï ·Î°í°¡ ¾Æ´Ñ°¡ ÇÑ´Ù.

Áß¼¼ÀÇ »è¸·ÇÑ ¹«±â¿Í ¸®´ª½º°¡ ¾î¶² ¿¬°üÀ» °®´ÂÁö´Â ¸ð¸£°ÚÀ¸³ª Brian Hammond ¾¾°¡ »ý°¢ÇÏ´Â ¸®´ª½º´Â °­·ÂÇÏ°í °ÅÄ£ ÄÄÇ»Æà ȯ°æÀÎ °Í °°´Ù. À̹ø È£¿¡¼­´Â ¹æÈ­º®°ú °°Àº Èûµç ÁÖÁ¦¸¦ ´Ù·ç¾úÀ¸´Ï ±×¸²À» º¸°í Á¶±Ý ½¬¾î º¸´Â °ÍÀÌ ¾î¶³±î? »çÀÌÆ®´Â ´ÙÀ½°ú °°´Ù. www.wco.com/~png/greg/greg_lnxpics.html

7. ±ÛÀ» ¸¶Ä¡¸é¼­

ÇÊÀÚ°¡ »ý°¢ÇÏ´Â °Íº¸´Ù ¸®´ª½º´Â Àü¼¼°èÀûÀ¸·Î ±×¸®°í ±¹³»¿¡¼­µµ ³Î¸® ¾Ë·ÁÁø °Í °°´Ù. ³×Æ®¿öÅ© °ü·Ã Á¾»çÀÚ³ª °ü½ÉÀ» °®´Â »ç¶÷À̶ó¸é ¾ÕÀ¸·Î ´çºÐ°£ ¸®´ª½º¶ó´Â À̸§À» µèÁö ¾Ê°í´Â »ì ¼ö ¾øÀ» °ÍÀ̶ó°í º»´Ù. ¿Ü±¹ÀÇ °æ¿ì ÀÌ¹Ì ¸¹Àº ISPµéÀÌ ¸®´ª½º¸¦ ¼­¹ö·Î »ç¿ëÇÏ°í ÀÖ´Ù´Â »ç½Ç¸¸ ºÁµµ ¼º´É¸é¿¡¼­³ª °¡°Ý¸é¿¡¼­ ±×¸®°í ¹«¾ùº¸´Ùµµ ¡®¿ì¸®ÀÇ °Í¡¯À̶ó´Â ÁÖüÀûÀÎ ¸é¿¡¼­ ¼º°øÇÏ°í ÀÖ´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù.

¸®´ª½º¿¡ ´ëÇÑ ¸¹Àº ÀÔÀåÀÌ Á¸ÀçÇÏÁö¸¸ ¸î °¡Áö ´çºÎÇÏ°íÇ ³»¿ëÀÌ ÀÖ´Ù. ¸®´ª½º¸¦ ¾î´À Á¤µµ »ç¿ëÇØ¿Ô°í ³²µé¿¡°Ô¼­ ÄÄÇ»ÅÍ Á» ÇÒ ¼ö ÀÖ´Ù´Â À̾߱⸦ µè´Â ¿©·¯ºÐÀÌ ´Ù¸¥ Ãʺ¸Àڵ鿡°Ô ¸®´ª½º¸¦ ¼Ò°³ÇÒ ¶§ ¡®¸®´ª½º°¡ °øÂ¥´Ù¡¯¶ó´Â Ãø¸éÀ» Á¦ÀÏ ¸ÕÀú °­Á¶ÇÏÁö´Â ¸»¾ÆÁÖ¾úÀ¸¸é ÇÑ´Ù. ¸¹Àº »ç¶÷µéÀÌ ¸®´ª½º°¡ ¹«·á¶ó´Â °üÁ¡À» ³Ê¹« °­Á¶ÇÑ ³ª¸ÓÁö ¸®´ª½ºÀÇ Áß¿äÇÑ ¸éµé¿¡ ´ëÇؼ­ ÀÌÇØÇϴµ¥ ½ÇÆÐÇϱ⠶§¹®ÀÌ´Ù. ¸®´ª½º¿¡¼­ ¿©·¯ºÐÀÌ ¾òÀ» ¼ö ÀÖ´Â °ÍÀº Á¤¸»·Î ¸¹´Ù. ±× ÀÌÀ¯´Â ¹Ù·Î ¸®´ª½º°¡ ¾î¶² ¼ÒÇÁÆ®¿þ¾î ȸ»çÀÇ ÇÁ·Î±×·¡¸Ó Àηº¸´Ùµµ ºñ±³ÇÒ ¼ö ¾øÀ» ¸¸Å­ ¼ö¸¹Àº ÀÚ¹ßÀûÀÎ ÇØÄ¿µéÀÇ ³ë·Â ¼Ó¿¡¼­ Ä¿°¡°í Àֱ⠶§¹®ÀÌ´Ù. ±×µéÀÇ ¸ðµç ÁöÇý°¡ ¿©·¯ºÐ °ÍÀÌ µÈ´Ù. ÇÏÁö¸¸ ÀÌ ¸ðµç °ÍÀÌ ÀúÀý·Î ÁÖ¾îÁö´Â °ÍÀº ¾Æ´Ï¸ç ±× ¾î¶² ȯ°æ¿¡¼­º¸´Ù ±ÍÂúÀ» Á¤µµ·Î ¿©·¯ºÐ ½º½º·ÎÀÇ ³ë·ÂÀ» ÇÊ¿ä·Î ÇÑ´Ù´Â Á¡À» °­Á¶ÇÏ°í ½Í´Ù.

¸®´ª¼­µé »çÀÌ¿¡ Àǹ« °³³äÀ̶õ ¾ø´Ù. ¸¹Àº Ãʺ¸ÀÚµéÀº ´Ù¸¥ ¸®´ª¼­µéÀÌ ÀÚ½ÅÀÇ Áú¹®¿¡ Ç×»ó ´ë´äÇØ¾ß ÇÒ Àǹ«°¡ ÀÖ´Â °Íó·³ ´Ù±×Ä¡±â ÁÁ¾ÆÇÑ´Ù. ±× ÀÌÀ¯¸¦ ÀÌÇØÇÒ ¼ö´Â ¾øÀ¸³ª ¾Æ¸¶µµ ¸®´ª½º°¡ ¹«·áÀ̹ǷΠÁú¹®¿¡ ´ëÇÑ ´äº¯µµ ´ç¿¬È÷ ¹«·á(?)¿©¾ß ÇÑ´Ù°í »ý°¢ÇÏ´Â °Í °°´Ù. »ç½Ç ¸®´ª½º¿¡¼­ ¹«·áÀÎ °ÍÀº ¾ø´Ù. °¡Àå ±ÍÁßÇÑ ¿©·¯ºÐÀÇ ³ë·ÂÀÌ ÇÊ¿äÇÑ °÷ÀÌ´Ù. ¿©·¯ºÐÀÌ ³ª¼­¼­ ¸ÕÀú ã°í ÇØ°áÇÏ°í µµ¿ÍÁÖ·Á´Â »ý°¢À» °®Áö ¾ÊÀ¸¸é ¸®´ª½º´Â ¹ßÀüÇÒ ¼ö ¾ø´Â ÄÄÇ»Æà ȯ°æÀÌ´Ù.

¸¶Áö¸·À¸·Î ¸®´ª½º´Â ¹«¾ùº¸´Ùµµ ¿©·¯ºÐ¿¡°Ô Áñ°Å¿òÀ» ÁÙ ¼ö ÀÖ´Â ÄÄÇ»Æà ȯ°æÀÌ´Ù. ¿©·¯ºÐÀÌ »ý°¢Çϱ⿡ µµÀúÈ÷ Àç¹Ìµµ ¾ø°í Àû¼º¿¡ ¸ÂÁö ¾Ê´Ù°í »ý°¢ÇÏ¸é ¸®´ª½º¿¡ ´ëÇØ °­¹Ú°ü³äÀ» °¡Áú ÇÊ¿ä¾ø´Ù. ¸®´ª½º´Â ¹«¾ùº¸´Ùµµ Áñ°Å¿î âÁ¶ ÀÛ¾÷À¸·Î ¸¸µé¾îÁø °ÍÀ̸ç Áö±Ýµµ ±×·¯ÇÏ°í ¾ÕÀ¸·Îµµ ±×·¯ÇÒ °ÍÀÌ´Ù. ±×¸®°í »ç¿ëÀÚÀÎ ¿©·¯ºÐµµ ±×·¯ÇÏ±æ ¹Ù¶ó¸é °³¹ßÀÚÀÎ ¿©·¯ºÐµµ ±×·¸°Ô Áñ±â±æ ¹Ù¶õ´Ù. ¾Æ¹«¸® ¾î·Á¿ö º¸ÀÌ´Â °ÍÀÏÁö¶óµµ ¿©·¯ºÐÀÌ Áñ±æ ¸¶À½ÀÇ Áغñ¸¸ µÇ¾î ÀÖ´Ù¸é ÃæºÐÇÏ´Ù.


ID
Password
Join
Do not clog intellect's sluices with bits of knowledge of questionable uses.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2003-10-03 18:36:33
Processing time 0.0028 sec