IPFW
¼ÒÇÁÆ®¿þ¾îÀÇ ¼³Á¤Àº ipfw(8)
À¯Æ¿¸®Æ¼·Î ÇÕ´Ï´Ù.
ÀÌ ¸í·ÉÀÇ ¹®¹ýÀº ²Ï³ª º¹ÀâÇÏ°Ô º¸ÀÌ°ÚÁö¸¸, ÀÏ´Ü ±× ±¸Á¶¸¦ ÀÌÇØÇϸé
ºñ±³Àû °£´ÜÇÕ´Ï´Ù.
À¯Æ¿¸®Æ¼´Â ÇöÀç 4°¡Áö ´Ù¸¥ ¸í·É¾î Ä«Å×°í¸®¸¦ °®½À´Ï´Ù. Ãß°¡/»èÁ¦ (addition/deletion), ¸ñ·Ï(listing), Àüü »èÁ¦(flushing), Àç¼³Á¤ (clearing)ÀÔ´Ï´Ù. Ãß°¡/»èÁ¦´Â ÆÐŶÀ» ¹Þ¾ÆµéÀÌ°í, °ÅºÎÇÏ°í, ±â·ÏÇÏ´Â ¹æ¹ýÀ» Á¦¾îÇÏ´Â ±ÔÄ¢À» ¸¸µé¾î³À´Ï´Ù. ¸ñ·ÏÀº ±ÔÄ¢ ÁýÇÕ(´Ù¸¥ ¸»·Î »ç½½)ÀÇ ³»¿ë°ú ÆÐŶ Ä«¿îÅÍ(¾îÄ«¿îÆÃ)À» Á¶»çÇϴµ¥ »ç¿ëÇÕ´Ï´Ù. Àüü »èÁ¦´Â »ç½½¿¡¼ ¸ðµç ¿£Æ®¸®¸¦ Áö¿ó´Ï´Ù. Àç¼³Á¤Àº Çϳª ÀÌ»óÀÇ ¾îÄ«¿îÆà ¿£Æ®¸®¸¦ 0À¸·Î ¸¸µì´Ï´Ù.
ÀÌ ÇüÅÂÀÇ ¸í·É¾îÀÇ ¹®¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù:
ipfw [-N] ¸í·É [À妽º]
µ¿ÀÛ [log] ÇÁ·ÎÅäÄÝ ÁÖ¼Ò
[¿É¼Ç]
ÀÌ ÇüÅÂÀÇ ¸í·É¾î¸¦ »ç¿ëÇÒ ¶§¿¡ À¯È¿ÇÑ ¿É¼ÇÀº Çϳª »ÓÀÔ´Ï´Ù:
Ãâ·Â½Ã ÁÖ¼Ò¿Í ¼ºñ½º ¸íÀ» ´Ü¾î·Î ¹Ù²Ù¾î ÁÝ´Ï´Ù.
ÁÖ¾îÁø ¸í·ÉÀº °¡Àå ªÀº À¯ÀÏÇÑ ÇüÅ·Π¾µ ¼ö ÀÖ½À´Ï´Ù. À¯È¿ÇÑ ¸í·ÉÀº ´ÙÀ½°ú °°½À´Ï´Ù:
¹æȺ®/¾îÄ«¿îÆà ±ÔÄ¢ ¸ñ·Ï¿¡ Ãß°¡
¹æȺ®/¾îÄ«¿îÆà ±ÔÄ¢ ¸ñ·Ï¿¡¼ »èÁ¦
IPFW
ÀÇ ÀÌÀü ¹öÀüÀº ¹æȺ®°ú ¾îÄ«¿îÆà ¿£Æ®¸®¸¦ µû·Î »ç¿ëÇß½À´Ï´Ù.
ÇöÀç ¹öÀüÀº °¢ ¹æȺ® ¿£Æ®¸®¿¡ ´ëÇØ ÆÐŶ ¾îÄ«¿îÆÃÀ» Á¦°øÇÕ´Ï´Ù.
À妽º
°ªÀÌ ÁÖ¾îÁö¸é, ¿£Æ®¸®¸¦ »ç½½ ³»ÀÇ Æ¯Á¤ ÁöÁ¡¿¡ ³õ½À´Ï´Ù.
±×·¸Áö ¾ÊÀ¸¸é, ¿£Æ®¸®´Â ¸¶Áö¸· »ç½½ ¿£Æ®¸®º¸´Ù 100ÀÌ Å« À妽º »ç½½ÀÇ
³¡¿¡ ³õ¿©Áý´Ï´Ù(±âº» Á¤Ã¥ÀÎ ±ÔÄ¢ 65535´Â °ÅºÎÇÕ´Ï´Ù).
log ¿É¼ÇÀº ´ëÀÀ ±ÔÄ¢ÀÌ IPFIREWALL_VERBOSE·Î ÄÄÆÄÀÏµÈ °æ¿ì¿¡ ½Ã½ºÅÛ Äֿܼ¡ Ãâ·ÂµÇµµ·Ï ÇÕ´Ï´Ù.
¿©·¯°¡Áö ±ÔÄ¢Àº:
ÆÐŶÀ» ¹ö¸®¸ç, ICMP È£½ºÆ®³ª Æ÷Æ®¿¡ ¼Ò½º·Î µµÂøÇÒ ¼ö ¾ø´Ù´Â(ÀûÀýÇÏ°Ô) ÆÐŶÀ» º¸³½ »ç¶÷¿¡°Ô º¸³À´Ï´Ù.
ÆÐŶÀ» ±×³É Åë°ú½Ãŵ´Ï´Ù(´Ù¸¥ À̸§: pass¿Í accept)
ÆÐŶÀ» ¹ö¸³´Ï´Ù. º¸³½ »ç¶÷Àº ICMP¸Þ½ÃÁö¸¦ ÅëÇØ ¾Ë·ÁÁöÁö ¾Ê¾Ò½À´Ï´Ù. (µû¶ó¼ ÆÐŶÀº µµÂøÁö¿¡ ÀüÇô µµÂøÇÏÁö ¾Ê´ø °Í °°½À´Ï´Ù).
ÆÐŶ Ä«¿îÅ͸¦ °»½ÅÇÏÁö¸¸ ÀÌ ±ÔÄ¢¿¡ ±â¹ÝÇÏ¿© ÆÐŶÀ» Çã¿ë/±ÝÁöÇÏÁö ¸¶¼¼¿ä. °Ë»öÀº ´ÙÀ½ »ç½½ ¿£Æ®¸®·Î °è¼ÓµË´Ï´Ù.
°¢ µ¿ÀÛ Àº °¡Àå ª°Ô ¾Ë¾Æº¼ ¼ö ÀÖµµ·Ï ¾²¸é µË´Ï´Ù.
ÁöÁ¤ÇÒ ¼ö ÀÖ´Â ÇÁ·ÎÅäÄÝÀº ´ÙÀ½°ú °°½À´Ï´Ù:
¸ðµç IP ÆÐŶ¿¡ ´ëÀÀ
ICMP ÆÐŶ¿¡ ´ëÀÀ
TCP ÆÐŶ¿¡ ´ëÀÀ
UDP ÆÐŶ¿¡ ´ëÀÀ
ÁÖ¼Ò ÁöÁ¤Àº ´ÙÀ½°ú °°½À´Ï´Ù:
from <ÁÖ¼Ò/³Ý¸¶½ºÅ©>[Æ÷Æ®] to
<ÁÖ¼Ò/³Ý¸¶½ºÅ©>[Æ÷Æ®] [via <ÀÎÅÍÆäÀ̽º>]
Æ÷Æ®Àº Æ÷Æ®¸¦ Áö¿øÇÏ´Â ÇÁ·ÎÅäÄÝ°ú ÇÔ²²¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù(UDP¿Í TCP).
via´Â ¿É¼ÇÀ̸ç ÇØ´ç ÀÎÅÍÆäÀ̽º¿¡¼ ¿À´Â ÆÐŶ¸¸À» ó¸®Çϵµ·Ï
IPÁÖ¼Ò³ª Áö¿ª IP ÀÎÅÍÆäÀ̽ºÀÇ µµ¸ÞÀθí, ÀÎÅÍÆäÀ̽º¸í(¿¹:
ed0
)À» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÎÅÍÆäÀ̽º À¯´Ö ¹øÈ£´Â
¿ÍÀϵåÄ«µå¸¦ ¿É¼ÇÀ¸·Î ½á¼ ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
¿¹¸¦ µé¸é, ppp*
´Â ¸ðµç Ä¿³Î PPP ÀÎÅÍÆäÀ̽º¿¡ ´ëÀÀÇÕ´Ï´Ù.
<ÁÖ¼Ò/³Ý¸¶½ºÅ©>
¸¦ ÁöÁ¤Çϴµ¥ »ç¿ëÇÏ´Â ¹®¹ýÀº
´ÙÀ½°ú °°½À´Ï´Ù:
<ÁÖ¼Ò>
¶Ç´Â
<ÁÖ¼Ò>/¸¶½ºÅ©-ºñÆ®
¶Ç´Â
<ÁÖ¼Ò>:¸¶½ºÅ©-ÆÐÅÏ
À¯È¿ÇÑ È£½ºÆ®¸íÀº IPÁÖ¼ÒÀÇ ÀÚ¸®¿¡ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸¶½ºÅ©-ºñÆ®
´Â ÁÖ¼Ò ¸¶½ºÅ©¸¦ ÁöÁ¤ÇÏ´Â ºñÆ® ¼ö¸¦ ³ªÅ¸³»´Â
½ÊÁø ¼ýÀÚÀÔ´Ï´Ù.
192.216.222.1/24
¸¦ ÁöÁ¤Çϸé C Ŭ·¡½º ¼ºê³Ý(ÀÌ °æ¿ì, 192.216.222)ÀÇ ¸ðµç ÁÖ¼Ò¿¡
ÇØ´çÇÏ´Â ¸¶½ºÅ©¸¦ ¸¸µé¾î³À´Ï´Ù. ¸¶½ºÅ©-ÆÐÅÏ
˼
ÁÖ¾îÁø ÁÖ¼Ò¿¡ ³í¸®Àû AND¸¦ ÇÏ´Â °ÍÀÔ´Ï´Ù. any
Å°¿öµå´Â
``¸ðµç IP ÁÖ¼Ò''¸¦ ÁöÁ¤Çϴµ¥ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸·´Â Æ÷Æ® ¹øÈ£´Â ´ÙÀ½°ú °°ÀÌ ÁöÁ¤ÇÕ´Ï´Ù:
Æ÷Æ®[,Æ÷Æ®[,Æ÷Æ®[...]]]
ÇϳªÀÇ Æ÷Æ®³ª ¿©·¯°³ÀÇ Æ÷Æ®¸¦ ÁöÁ¤ÇÏ·Á¸é,
Æ÷Æ®-Æ÷Æ®
¿Í °°ÀÌ ½á¼ Æ÷Æ®ÀÇ ¹üÀ§¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¹üÀ§¿Í ´ÜÀÏ Æ÷Æ® ÁöÁ¤À» °áÇÕÇÒ ¼ö ÀÖÁö¸¸, ¹üÀ§°¡ Ç×»ó ¸ÕÀú ÁöÁ¤µÇ¾î¾ß ÇÕ´Ï´Ù.
»ç¿ëÇÒ ¼ö ÀÖ´Â ¿É¼ÇÀº ´ÙÀ½°ú °°½À´Ï´Ù:
µ¥ÀÌÅͱ׷¥ÀÇ Ã¹¹ø° Á¶°¢ÀÌ ¾Æ´Ñ ÆÐŶ¿¡ ´ëÀÀµË´Ï´Ù.
µé¾î¿À´Â ÆÐŶ¿¡¸¸ ´ëÀÀÇÕ´Ï´Ù.
³ª°¡´Â ÆÐŶ¿¡¸¸ ´ëÀÀÇÕ´Ï´Ù.
IP Çì´õ°¡ ½ºÆå¿¡ ÁöÁ¤ÇÑ ¿É¼Ç ¸ñ·Ï(½°Ç¥·Î ºÐ¸®ÇÑ)¿¡ µé¾î ÀÖ´Ù¸é ´ëÀÀÇÕ´Ï´Ù. Áö¿øÇÏ´Â IP ¿É¼Ç ¸ñ·ÏÀº ´ÙÀ½°ú °°½À´Ï´Ù: ssrr (¾ö°ÝÇÑ ¼Ò½º ¶ó¿ìÆÃ), lsrr (´À½¼ÇÑ ¼Ò½º ¶ó¿ìÆÃ), rr (ÆÐŶ ¶ó¿ìÆà ±â·Ï), ts (ŸÀÓ½ºÅÆÇÁ). ƯÁ¤ ¿É¼ÇÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ½À» ³ªÅ¸³¾ ¶§¿¡´Â ¾Õ¿¡ `!'À» ¾²¸é µË´Ï´Ù.
ÆÐŶÀÌ ÀÌ¹Ì È®¸³µÈ TCP ¿¬°á(¿¹: RST³ª ACKºñÆ®°¡ ÁöÁ¤µÈ)ÀÇ ÀϺÎÀÎ °æ¿ì¿¡ ´ëÀÀÇÕ´Ï´Ù. ±ÔÄ¢ »ç½½ ¾ÕºÎºÐ¿¡ established ±ÔÄ¢À» ÁöÁ¤ÇÏ¿© ¹æȺ®ÀÇ ¼º´ÉÀ» ÃÖÀûÈÇÒ ¼ö ÀÖ½À´Ï´Ù.
TCP ¿¬°á È®¸³ ½Ãµµ¸¦ ÇÏ´Â ÆÐŶ¿¡ ´ëÀÀÇÕ´Ï´Ù. (SYN ºñÆ®´Â ÁöÁ¤µÇ¾úÁö¸¸ ACKºñÆ®°¡ ÁöÁ¤µÇÁö ¾ÊÀº °Í).
TCPÇì´õ°¡ Ç÷¡±×ÀÇ (½°Ç¥·Î ºÐ¸®ÇÑ) ¸ñ·Ï¿¡ µé¾î ÀÖÀ¸¸é ´ëÀÀÇÕ´Ï´Ù. Áö¿øÇÏ´Â Ç÷¡±×´Â fin, syn, rst, psh, ack, urg ÀÔ´Ï´Ù. ƯÁ¤ Ç÷¡±×À» ÁöÁ¤ÇÏÁö ¾ÊÀ½À» ³ªÅ¸³¾ ¶§¿¡´Â ¾Õ¿¡ `!'À» ¾²¸é µË´Ï´Ù.
ÇüÅÂÀÇ ¸ñ·Ï¿¡ ICMP ÇüÅ°¡ ÀÖÀ¸¸é ´ëÀÀÇÕ´Ï´Ù.
ÇüÅ ¸ñ·ÏÀº ½°Ç¥·Î ºÐ¸®ÇÑ °³º° Çüųª ¹üÀ§ÀÇ Á¶ÇÕÀ¸·Î Ç¥½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù.
°øÅëÀûÀ¸·Î »ç¿ëÇÏ´Â ICMP ÇüÅ´Â
0 ¿¡ÄÚ ÀÀ´ä (ping ÀÀ´ä), 5
¹æÇâ ÀçÁöÁ¤, 8 ¿¡ÄÚ ¿äû(ping ÀÀ´ä), 11
½Ã°£ ÃÊ°ú(traceroute(8)
°ú °°ÀÌ TTL ½ÃÇÑÀ» ÁöÁ¤Çϱâ À§ÇØ »ç¿ë)
ÀÔ´Ï´Ù.
ÀÌ·± ¸í·É ÇüÅÂÀÇ ¹®¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù:
ipfw [-atN] l
ÀÌ·± ¸í·É ÇüŸ¦ »ç¿ëÇÒ ¶§¿¡´Â ¼¼°¡Áö À¯È¿ÇÑ Ç÷¡±×°¡ ÀÖ½À´Ï´Ù:
¸ñ·Ï ³ª¿½Ã Ä«¿îÅÍ °ªÀ» º¸¿©ÁÝ´Ï´Ù. ÀÌ ¿É¼ÇÀº ¾îÄ«¿îÆà ī¿îÅ͸¦ º¸°í ½ÍÀº °æ¿ì¿¡¸¸ »ç¿ëÇÕ´Ï´Ù.
°¢ »ç½½ ¿£Æ®¸®ÀÇ ¸¶Áö¸· Àû¿ë ½Ã°£À» º¸¿©ÁÝ´Ï´Ù. ¿©±â ³ª¿À´Â
½Ã°£Àº ipfw(8)
À¯Æ¿¸®Æ¼¿¡ ÀÇÇØ »ç¿ëµÇ´Â ÀÔ·Â ¹®¹ý°ú
ºñȣȯÀûÀÔ´Ï´Ù.
ÁÖ¾îÁø ÁÖ¼Ò¿Í ¼ºñ½º À̸§À» ¿µ¹®À¸·Î Ç¥½ÃÇÏ·Á ÇÕ´Ï´Ù.
»ç½½À» ¸ðµÎ »èÁ¦ÇÏ´Â ¹®¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù:
ipfw flush
ÀÌ´Â ¹æȺ® »ç½½ÀÇ ¸ðµç ¿£Æ®¸®¸¦ Ä¿³Î¿¡ ÀÇÇØ °Á¦µÇ´Â °íÁ¤µÈ ±âº» ±ÔÄ¢(À妽º 65535)À» Á¦¿ÜÇÏ°í »èÁ¦Çϵµ·Ï ÇÕ´Ï´Ù. ±ÔÄ¢À» »èÁ¦ÇÒ ¶§¿¡ ÁÖÀÇÇÒ °ÍÀº »ç½½¿¡ Çã¿ë ¿£Æ®¸®°¡ Ãß°¡µÉ ¶§ ±îÁö´Â ±âº» °ÅºÎ ¿øÄ¢¿¡ ÀÇÇØ ½Ã½ºÅÛ¿¡ ³×Æ®¿öÅ©¿¡¼ ´ÜÀýµÈ´Ù´Â °ÍÀÔ´Ï´Ù.
Çϳª ÀÌ»óÀÇ ÆÐŶ Ä«¿îÅ͸¦ Àç¼³Á¤ÇÏ´Â ¹®¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù:
ipfw zero [À妽º]
À妽º Àμö ¾øÀÌ »ç¿ëÇÏ¸é ¸ðµç ÆÐŶ Ä«¿îÅÍ°¡ 0ÀÌ µË´Ï´Ù. À妽º¸¦ ÁöÁ¤Çϸé Àç¼³Á¤ ¿¬»êÀº ƯÁ¤ »ç½½ ¿£Æ®¸®¿¡¸¸ ¿µÇâÀ» ¹ÌĨ´Ï´Ù.