Ä¿ÇǴнº, ½Ã½ºÅÛ ¿£Áö´Ï¾îÀÇ ½°ÅÍ Ä¿ÇÇÇâÀÌ ³ª´Â *NIX
Ä¿ÇǴнº
½Ã½ºÅÛ/³×Æ®¿÷/º¸¾ÈÀ» ´Ù·ç´Â °÷
* HanIRCÀÇ #coffeenix ¹æ
[ Àåºñ ¹× ȸ¼± ÈÄ¿ø ]
HOME > º¸¾È(security) µµ¿ò¸»
°Ë»ö : »çÀÌÆ® WHOIS À¥¼­¹ö Á¾·ù

º¸¾È±Ç°í (1, ÀÚ·á 1)
º¸¾ÈÅø ¹× Àåºñ (13, ±Û 1, ÀÚ·á 11)
º¸¾È´º½º / Á¤º¸ (3)
¹æÈ­º®, ÆÐŶ ÇÊÅ͸µ / IDS (15, ±Û 6, ÀÚ·á 11)
º¸¾È¹®¼­ - ³×Æ®¿öÅ© º¸¾È (1, ÀÚ·á 12)
º¸¾È¹®¼­ - ½Ã½ºÅÛ º¸¾È (7, ±Û 1, ÀÚ·á 17)
º¸¾È¹®¼­ - ¹«¼±·£(WLAN) º¸¾È (ÀÚ·á 6)
º¸¾È¹®¼­ - ÇØÅ· / °ø°Ý (6, ÀÚ·á 13)
¹ÙÀÌ·¯½º(virus) / ¿ú / ¹é½Å (11, ±Û 4, ÀÚ·á 3)
º¸¾È Åë°è (ÀÚ·á 5)
¾Ïȣȭ ¹× ÀÎÁõ (3, ÀÚ·á 3)
¿ø°Ý OS ŽÁö / OS ÇΰÅÇÁ¸°Æà (4, ±Û 1, ÀÚ·á 6)

  iptables¿¡¼­ ƯÁ¤ ½Ã°£ ÈÄ ruleÀ» ÀÚµ¿ »èÁ¦ÇÏ´Â ¹æ¹ý ÀÛ¼ºÀÏ : 2011/06/20 18:34
 
  • ±Û¾´ÀÌ : ÁÁÀºÁøÈ£ ( http://coffeenix.net/ )
  • Á¶È¸¼ö : 8711
          [ ÀÌÀüÈ­¸é / ¼öÁ¤ ]   ºñ¹Ð¹øÈ£ :     Àμâ¿ë È­¸é
      Á¦  ¸ñ : iptables¿¡¼­ ƯÁ¤ ½Ã°£ ÈÄ ruleÀ» ÀÚµ¿ »èÁ¦ÇÏ´Â ¹æ¹ý
    ÀÛ¼ºÀÚ : ÁÁÀºÁøÈ£(truefeel, http://coffeenix.net/ )
    ÀÛ¼ºÀÏ : 2011.6.14(È­)


    ¸®´ª½º iptables¿¡¼­ ƯÁ¤ ½Ã°£ÀÌ Áö³ª¸é ruleÀ» ÀÚµ¿À¸·Î »èÁ¦(expire)½ÃÅ°´Â ¹æ¹ýÀ» ã¾ÆºÃ´Ù.
    À̸¦Å׸é ƯÁ¤ IP¸¦ 30ºÐ°£¸¸ ¶Ç´Â ÇϷ絿¾È¸¸ Â÷´Ü½ÃÅ°°í DROP¿¡¼­ »©°í ½Í´Ù¸é ¾î¶»°Ô ÇؾßÇÒ±î.

    serverfault( http://serverfault.com/ )¿¡¼­ ´ë´ÜÇÑ ²Ç¼ö¸¦ ¹ß°ßÇß´Ù.

    How to make iptables rules expire?
    http://serverfault.com/questions/273324/how-to-make-iptables-rules-expire


    1. at ¸í·ÉÀ» ÀÌ¿ëÇؼ­

    at´Â cronó·³ ƯÁ¤ ½Ã°£¿¡ ÀÛ¾÷À» ½ÇÇàÇÒ ¼ö ÀÖ´Ù.

     
          iptables -I INPUT -s 192.168.123.100 -j DROP
    echo "iptables -D INPUT -s 192.168.123.100 -j DROP" | at @10pm
     


    ·êÀ» óÀ½ »ý¼ºÇÒ ¶§, 2°³ ¸í·ÉÀ» µ¿½Ã¿¡ ½ÇÇà½ÃŲ´Ù.
    Çϳª´Â -I(Insert) ¶Ç´Â -A(Append)·Î iptables¿¡ ·êÀ» »ý¼ºÇÏ´Â °ÍÀÌ°í,
    ´Ù¸¥ Çϳª´Â -D(Delete)·Î ÁöÁ¤ ½Ã°£À̳ª ½Ã°£°£°ÝÀ» ÁöÁ¤Çؼ­ ÀÚµ¿À¸·Î »èÁ¦µÇµµ·Ï at¸í·ÉÀ» ½ÇÇà½ÃÄѵδ °ÍÀÌ´Ù. at¸í·ÉÀº Æøź ŸÀ̸Ӱ¡ µÇ¾î, ÇØ´ç ½Ã°£ÀÌ µÇ¸é ·êÀ» ÀÚµ¿À¸·Î »èÁ¦¸¦ ÇÒ °ÍÀÌ´Ù.
    ÇöÀçºÎÅÍ 30ºÐ ÀÌÈÄ¿¡ ·êÀ» »èÁ¦ÇÏ°í ½Í´Ù¸é at now +30 minutes ó·³ ÁöÁ¤ÇÑ´Ù. hours, days, weeks µîÀÇ ´ÜÀ§¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

    À§¿Í°°ÀÌ ¾ÆÁÖ °£´ÜÇÑ ¹æ¹ýÀ¸·Î ÇØ°áÃ¥À» ã´Ù´Ï, ³î¶ø±â¸¸ ÇÏ´Ù.
    atd µ¥¸óÀÌ ¶ç¿öÁ® ÀÖ¾î¾ß Çϸç, at ¸í·ÉÀ¸·Î ½ÇÇàÁßÀÎ job¸ñ·ÏÀº atq·Î È®ÀÎÇÒ ¼ö ÀÖ´Ù. (¡Ø °³ÀÎÀûÀ¸·Î at´Â »ç¿ëÇÏÁö ¾Ê´Â´Ù.)


    2. iptables¿¡ expireó¸®ÇÒ timestamp¸¦ comment. ÇöÀç timestamp¿Í ºñ±³ »èÁ¦

    ´äº¯ÀÚ Seth Robertson´Â ¾î¶»°Ô ÀÌ·± ¹æ¹ýÀ» »ý°¢ÇسÂÀ»±î. ´ë´ÜÇÏ´Ù´Â »ý°¢¹Û¿¡ ¾Èµç´Ù.

    1) ·ê »ý¼º (expireó¸®ÇÒ ·êÀ» ¸¸µç´Ù. 30ºÐ µÚ¿¡ expireÇÒ °æ¿ì)

     
    # iptables -A INPUT -s 192.168.123.100 -m comment --comment "expire=`date -d '+ 30 min' +%s`" -j DROP
     


    iptable -L -n À¸·Î ·ê ¸ñ·ÏÀ» È®ÀÎÇÏ¸é ´ÙÀ½°ú °°ÀÌ ÁÖ¼®À¸·Î expireÇÒ ½Ã°£(timestamp°ª, ÇöÀç½Ã°£+30ºÐ)ÀÌ Ç¥½ÃµÇ¾î ÀÖ´Ù.

     
    DROP       all  --  192.168.123.100      0.0.0.0/0           /* expire=1308025139 */
     


    2) ·ê »èÁ¦

    ¸ÕÀú ÇöÀç ·ê¿¡¼­ ÁÖ¼®ÇصР°ÍÀ» »ìÆ캸ÀÚ.

     
    # iptables -L INPUT -n --line-numbers
    Chain INPUT (policy ACCEPT)
    num  target     prot opt source               destination        
    1    DROP       all  --  123.123.123.120      0.0.0.0/0           /* expire=1308026089 */
    2    DROP       all  --  123.123.123.121      0.0.0.0/0           /* expire=1308026086 */
    ... »ý·« ...
    28   DROP       all  --  123.123.123.123      0.0.0.0/0           /* expire=1308026079 */
     


    ÀÌÁ¦ 30ºÐ µÚ¿¡ »èÁ¦ÇÒ ¸ñ·ÏÀ» È®ÀÎÇغ¸ÀÚ. °¡Àå ÇÙ½ÉÀÌ µÇ´Â ºÎºÐÀÌ´Ù.

     
    # iptables -L INPUT -n --line-numbers  | perl -ne 'next unless /(^\d+).*expire=(\d+)/; if ($2 < time) { print "iptables -D INPUT $1\n"; }'
    iptables -D INPUT 1
    iptables -D INPUT 2
    iptables -D INPUT 28
     


    À§ÀÇ perl ¸í·É ºÎºÐÀº '·ê ¹øÈ£'(Çʵå 1¹ø)¿Í commentÀÇ 'expires= ºÎºÐÀÇ ¼ýÀÚ'(Çʵå 2¹ø)¸¦ »Ì¾Æ ³½´Ù. ±×¸®°í, ÀÌ expiresÀÇ timestamp¸¦ ÇöÀç ½Ã°£°ú ºñ±³Çؼ­ ´õ ÀÛÀºÁö¸¦ ÆÇ´ÜÇÑ´Ù. Áï, expireÇÒ ½Ã°£ÀÌ Áö³ª¼­ Áö¿öµµ µÇ´Â ·êÀÎÁö¸¦ ÆÇ´ÜÇÑ´Ù.

    À§¿¡¼­ print "iptables -D INPUT $1\n" ´ë½Å¿¡ system "iptables -D INPUT $1" ·Î ¹Ù²Ù¸é ·êÀÌ »èÁ¦µÈ´Ù.
    À§ 1ÁÙÀ» ½ºÅ©¸³Æ® ÆÄÀÏ·Î ¸¸µç´Ù. ±×¸®°í cron¿¡ Àû´çÇÑ ½Ã°£°£°Ý(1~10ºÐÁ¤µµ)À¸·Î ½ÇÇàµÇµµ·Ï µî·ÏÇϸé, ¿øÇÏ´Â ½Ã°£ÀÌ Áö³ª¸é ÀÚµ¿À¸·Î ·êÀº expireµÈ´Ù.

    * iptables_expires.sh ³»·Á¹Þ±â
     
    #!/bin/sh
    #
    # rule expire ó¸®
    #
    # - rule »ý¼º ¿¹) iptables -A INPUT -s -m comment --comment "expire=`date -d '+ 30 min' +%s`" -j DROP

    export PATH=$PATH:/sbin:/usr/sbin:/usr/local/bin

    iptables -L INPUT -n --line-numbers  | \
    ¡¡¡¡¡¡perl -ne 'next unless /(^\d+).*expire=(\d+)/; if ($2 < time) { system "iptables -D INPUT $1"; }'
     

      Ä¿ÇǴнº Ä«Æä ÃÖ±Ù ±Û
    [04/18] ??? ?????
    [04/17] ???? onion ?????? -
    [04/11] ±¹°¡&#5
    [04/10] Stride Into Dream:
    [03/20] Re: ¿Â¶óÀΰÔÀÓÀÇ Á¾ÁÖ±¹ ´ëÇѹα¹
    [10/20] Cross Compiler ±ò
    [07/14] SSL ¬¡¬°
    [04/26] Re: µµ½ºÈ­¸é ¿ø°ÝÁ¶Á¾ ¿©ºÎ
    [04/25] µµ½ºÈ­¸é ¿ø°ÝÁ¶Á¾ ¿©ºÎ
    [10/30] Cshell¿¡¼­ ³­¼ö ¼³Á¤
    [10/23] °øÇ×öµµÁÖ½Äȸ»ç SE ±¸ÀÎ Ëì
    [01/26] Re: wgetÀ¸·Î ´Ù¸¥¼­¹ö¿¡ÀÖ´Â µð·ºÅ丮¸¦ °¡Á®¿À·Á°íÇÕ´Ï´Ù.
    [01/25] wgetÀ¸·Î ´Ù¸¥¼­¹ö¿¡ÀÖ´Â µð·ºÅ丮¸¦ °¡Á®¿À·Á°íÇÕ´Ï´Ù.
    [01/11] ƯÁ¤ ¾Èµå·ÎÀ̵å WebView ¹öÀü¿¡¼­ SSL ¹®Á¦ (WebView ¹ö±×)
    [08/01] DNS forwarder (Àü´ÞÀÚ) ¼­¹ö¸¦ ÅëÇؼ­ Äõ¸®ÇÏ¸é ¿ª¹æÇâÀ» ¹Þ¾Æ¿ÀÁú ¸øÇÕ´Ï´Ù.
      New!   ÃÖ±Ù¿¡ µî·ÏÇÑ ÆäÀÌÁö
      KiCad EDA Suite project (Free/Libre/Open-Source EDA Suite) (CAD)
      ¿ÀÇÂij½ºÄÉÀ̵å ijµå (OpenCASCADE CAD)
      QCad for Windows --- GNU GPL (Free Software)
      The Hello World Collection
      IPMI¸¦ È°¿ëÇÑ ¸®´ª½º ¼­¹ö°ü¸®
      DNS ¼³Á¤ °Ë»ç
      nagiosgraph ¼³Ä¡ ¹æ¹ý
      Slony-I ¼³Ä¡ ¹æ¹ý (postgresql replication tool)
      Qmail±â¹ÝÀÇ Anti spam ½Ã½ºÅÛ ±¸ÃàÇϱâ
      clusterssh

    [ ÇÔ²²ÇÏ´Â »çÀÌÆ® ]




    ¿î¿µÁø : ÁÁÀºÁøÈ£(truefeel), ¾ß¼ö(yasu), ¹ü³ÃÀÌ, sCag
    2003³â 8¿ù 4ÀÏ~