7.2. IPTables »ç¿ë¹ý

IPTables¸¦ »ç¿ëÇϱâ À§ÇÑ Ã¹¹øÂ° ´Ü°è´Â IPTables ¼­ºñ½º¸¦ ½ÃÀÛÇÏ´Â °ÍÀÔ´Ï´Ù. ´ÙÀ½ ¸í·ÉÀ» »ç¿ëÇÏ½Ã¸é µË´Ï´Ù:

service iptables start

°æ°í°æ°í
 

IPTables ¼­ºñ½º¸¦ »ç¿ëÇϱâ À§Çؼ­´Â ´ÙÀ½ ¸í·ÉÀ» »ç¿ëÇÏ¿© IP6Tables ¼­ºñ½º¸¦ ²¨¾ßÇÕ´Ï´Ù:

service ip6tables stop
chkconfig ip6tables off

½Ã½ºÅÛÀÌ ºÎÆÃµÉ ¶§¸¶´Ù IPTables°¡ ±âº»À¸·Î ½ÃÀ۵ǵµ·Ï ¼³Á¤ÇϽ÷Á¸é chkconfig ¸í·ÉÀ» »ç¿ëÇÏ¿© ¼­ºñ½ºÀÇ ·±·¹º§ »óŸ¦ º¯°æÇÏ¼Å¾ß ÇÕ´Ï´Ù.

chkconfig --level 345 iptables on

IPTablesÀÇ ±¸¹®Àº ¿©·¯ ºÎºÐÀ¸·Î ³ª´µ¾î Áý´Ï´Ù. ÁÖ¿ä ºÎºÐÀº chain ÀÔ´Ï´Ù. chainÀº ÆÐŶÀÌ Á¶ÀÛµÉ »óŸ¦ ÁöÁ¤ÇÏ¸ç »ç¿ë¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù:

iptables -A chain -j target

-A´Â ±âÁ¸ ±ÔÄ¢ÀÌ ¸¶Áö¸·¿¡ ±ÔÄ¢À» Ãß°¡ÇÕ´Ï´Ù. chainÀº ±ÔÄ¢¿¡ »ç¿ëµÉ chainÀÇ À̸§ÀÔ´Ï´Ù. IPTables¿¡ ³»ÀåµÈ (Áï, ³×Æ®¿öÅ©¸¦ Áö³ª°¡´Â ¸ðµç ÆÐŶ¿¡ ¿µÇâÀ» ¹ÌÄ¡´Â) 3°¡Áö chainÀº INPUT, OUTPUT, FORWARD ÀÔ´Ï´Ù. ÀÌ ¼¼°¡Áö chainÀº ¿µ±¸ÀûÀÌ¸é »èÁ¦ÇÒ ¼ö ¾ø½À´Ï´Ù.

Áß¿äÁß¿ä
 

IPTables ±ÔÄ¢À» ¸¸µå½Ç¶§ ¼ø¼­°¡ ¸Å¿ì Áß¿äÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ¸¸ÀÏ chain¿¡¼­ ·ÎÄà 192.168.100.0/24 ¼­ºê³Ý¿¡¼­ µé¾î¿À´Â ¸ðµç ÆÐŶÀ» dropÇϵµ·Ï ÁöÁ¤ÇϽŠÈÄ (drop Çϵµ·Ï ÁöÁ¤µÈ ¼­ºê³Ý¿¡ Æ÷ÇԵǴÂ) 192.168.100.13¿¡¼­ µé¾î¿À´Â ÆÐŶÀ» ¸ðµå Çã¿ëÇÏ´Â chain (-A)À» ±× ÈÄ¿¡ Ãß°¡ÇÏ½Ã¸é µÚ¿¡ Ãß°¡µÈ Ãß°¡ ±ÔÄ¢ÀÌ ¹«½ÃµË´Ï´Ù. ¸ÕÀú 192.168.100.13¸¦ Çã¿ëÇÏ´Â ±ÔÄ¢À» ¼³Á¤ÇϽŠÈÄ ¼­ºê³ÝÀ» dropÇÏ´Â ±ÔÄ¢À» ¼³Á¤ÇÏ¼Å¾ß ÇÕ´Ï´Ù.

±âÁ¸ chain ±ÔÄ¢¿¡ ¿øÇϽô ±ÔÄ¢À» ³ÖÀ¸½Ã·Á¸é -I ´ÙÀ½¿¡ ±ÔÄ¢À» »ðÀÔÇÒ chain À̸§°ú ±ÔÄ¢ÀÌ À§Ä¡ÇÒ ¹øÈ£ (1,2,3,...,n)¸¦ ÀÔ·ÂÇϽʽÿÀ. ¿¹¸¦ µé¸é:

iptables -I INPUT 1 -i lo -p all -j ACCEPT

ÀÌ ±ÔÄ¢Àº INPUT chainÀÇ Ã¹¹øÂ° ±ÔÄ¢À¸·Î »ðÀÔµÇ¾î ·ÎÄà ·ì¹é ÀåÄ¡ Æ®·¡ÇÈÀ» Çã¿ëÇÒ °ÍÀÔ´Ï´Ù.

7.2.1. ±âº» ¹æÈ­º® Á¤Ã¥

óÀ½¿¡ ¼ö¸³ÇÑ ÀϺΠ±âº» Á¤Ã¥À» ±â¹ÝÀ¸·Î ÀÌÈÄ º¸´Ù ÀÚ¼¼ÇÏ°í »ç¿ëÀÚ Á¤ÀÇµÈ ±ÔÄ¢À» »ý¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. IPTables´Â Á¤Ã¥ (-P)À» »ç¿ëÇÏ¿© ±âº» ±ÔÄ¢À» »ý¼ºÇÕ´Ï´Ù. °ü¸®ÀÚ´Â º¸¾ÈÀ» ¿°µÎÇÏ¿© ÀϹÝÀûÀ¸·Î ¸ðµç ÆÐŶÀ» µå·Ó(drop)ÇÏ¸ç »óȲ º°·Î ƯÁ¤ ÆÐŶÀ» Çã¿ëÇÏ´Â Á¤Ã¥À» »ç¿ëÇÕ´Ï´Ù. ´ÙÀ½Àº ³×Æ®¿öÅ© °ÔÀÌÆ®¿þÀÌ¿¡¼­ µé¾î¿À°í ³ª°¡´Â ¸ðµç ÆÐŶÀ» ¸·´Â ±ÔÄ¢ÀÔ´Ï´Ù:

iptables -P INPUT DROP
iptables -P OUTPUT DROP

Ãß°¡·Î Àü¼Û ÆÐŶ(forwarded packets) — ¹æÈ­º®¿¡¼­ ¸ñÀû ½Ã½ºÅÛÀ¸·Î ¶ó¿ìÆÃµÉ ³×Æ®¿öÅ© Æ®·¡ÇÈ — À» °ÅºÎÇÏ¿© ³»ºÎ Ŭ¶óÀÌ¾ðÆ®°¡ ÀǵµÇÏÁö ¾Ê°Ô ÀÎÅͳݿ¡ ³ëÃâµÇ´Â °ÍÀ» ¹æÁöÇϽñ⸦ ±ÇÀåÇÕ´Ï´Ù. ´ÙÀ½°ú °°Àº ±ÔÄ¢À» »ç¿ëÇÏ½Ã¸é µË´Ï´Ù:

iptables -P FORWARD DROP 

¾Ë¸²¾Ë¸²
 

±ÔÄ¢À» Ãß°¡½Ã REJECT ÇÏ´Â °Í°ú DROP ÇÏ´Â °ÍÀÇ Â÷À̸¦ ¾Æ¼Å¾ß ÇÕ´Ï´Ù. REJECT´Â ¼­ºñ½º¿¡ Á¢¼ÓÇÏ·Á´Â »ç¿ëÀÚÀÇ ¾×¼¼½º¸¦ °ÅºÎÇϰí connection refused¶ó´Â ¿À·ù ¸Þ½ÃÁö¸¦ º¸¿©ÁÖ´Â ¹Ý¸é DROPÀº ¸» ±×´ë·Î telnet »ç¿ëÀÚ¿¡°Ô ¾î¶°ÇÑ °æ°í ¸Þ½ÃÁöµµ º¸¿©ÁÖÁö ¾ÊÀº ä ÆÐŶÀ» µå·ÓÇÕ´Ï´Ù. °ü¸®ÀÚÀÇ Àç·®²¯ ÀÌ·¯ÇÑ ±ÔÄ¢À» »ç¿ëÇÒ ¼ö ÀÖÁö¸¸ »ç¿ëÀÚ°¡ È¥¶õ½º·¯¿öÇÏ¸ç °è¼ÓÇØ¼­ Á¢¼ÓÀ» ½ÃµµÇÏ´Â °ÍÀ» ¹æÁöÇϽ÷Á¸é REJECT¸¦ »ç¿ëÇϽô °ÍÀÌ ÁÁ½À´Ï´Ù.

Á¤Ã¥ chainÀ» ¼³Á¤ÇϽŠÈÄ Æ¯Á¤ ³×Æ®¿öÅ©¿Í º¸¾È ¿ä°Ç¿¡ ¸Â´Â »õ·Î¿î ±ÔÄ¢À» ¸¸µå½Ê½Ã¿À. ´ÙÀ½ ºÎºÐ¿¡¼­´Â IPTables ¹æÈ­º®À» ±¸ÃàÇϴµ¥ ½ÇÇàÇÏ½Ç ÀϺΠ±ÔÄ¢µé¿¡ ´ëÇÏ¿© °£´ÜÇÏ°Ô ¼³¸íÇØ º¸°Ú½À´Ï´Ù.

7.2.2. IPTables ±ÔÄ¢ ÀúÀå°ú º¹±¸

¹æÈ­º® ±ÔÄ¢Àº ÄÄÇ»ÅͰ¡ ÄÑÁ®ÀÖ´Â µ¿¾È¿¡¸¸ À¯È¿ÇÕ´Ï´Ù. ¸¸ÀÏ ½Ã½ºÅÛÀÌ ÀçºÎÆÃµÇ¸é ±ÔÄ¢ÀÌ ÀÚµ¿À¸·Î Áö¿öÁö°í Àç¼³Á¤µË´Ï´Ù. ÀÌÈÄ¿¡µµ ¶È°°ÀÌ ÀÐÇôÁöµµ·Ï ±ÔÄ¢À» ÀúÀåÇϽ÷Á¸é ´ÙÀ½ ¸í·ÉÀ» »ç¿ëÇϽʽÿÀ:

/sbin/service iptables save

±ÔÄ¢ÀÌ /etc/sysconfig/iptables ÆÄÀÏ¿¡ ÀúÀåµÇ¾î ¼­ºñ½º°¡ ½ÃÀ۵ǰųª Àç½ÃÀ۵Ǹç ÄÄÇ»ÅͰ¡ ÀçºÎÆÃµÉ ¶§¸¶´Ù µ¿ÀÏÇÏ°Ô Àû¿ëµË´Ï´Ù.