-----------------------------------------
´äº¯ÀÚ°¡ ±âº»ÀûÀ¸·Î Âü°íÇÒ ³»¿ëÀÔ´Ï´Ù.
- ¹èÆ÷ÆÇ(¿É¼Ç) : cnetos6.2 64bit
- Ä¿³Î¹öÀü(¿É¼Ç) :
- µ¥¸ó¹öÀü(¿¹:apache 1.3.27) : apache 2.6.32-220.4.2.el6.x86_64
- µ¥¸ó¼³Ä¡À¯Çü(RPM/ÄÄÆÄÀÏ/±âŸ)
: ÄÄÆÄÀÏ
-----------------------------------------
KISA¹æȺ®Á¤Ã¥+Áß±¹´ë¿ªip±ÝÁö°¡
Áö»óÃÖ´ëÀÇ ÀúÀÇ ¸ñÇ¥ÀÔ´Ï´Ù
À̵ΰ¡Áö Àû¿ë½ÃÅ°°í½ÍÀºµ¥ ¹æȺ®Á¤Ã¥»ó À߾ȵǼ¿ä ¤Ì¤Ì
±âº»ÀûÀ¸·Î Á¦°¡ À߸𸣰í ÀÌÇظ¦ À߸øÇؼ±×·¸Áö¸¸¿ä..¤Ñ¤Ì
ÇöÀç Àü Áß±¹ip´ë¿ª Â÷´ÜÀ» geoip´Üµ¶À¸·Î Àß¾²°íÀÖ½À´Ï´Ù
´ç¿¬È÷ gEoip Àß Àû¿ëÇß½À´Ï´Ù Àß¼³Ä¡됬°í¿ä
¹ØÀÇ»çÀÌÆ®°¡ GEOIP Á¤¸» ¼³Ä¡ Çѹ濡 Àߵ˴ϴ٠°Ãß!!!!
¸ÃÀÇ »çÀÌÆ®¸¦ ÂüÁ¶Çߴµ¥ ¼³¸íÀÌ ÀßµÇÀÖ½À´Ï´Ù
==>
http://xinet.kr/tc/173
±×·±µ¥ ¹®Á¦´Â ddosµîµµ ´ëºñÇÒ·Á°í
kisa iptables Á¤Ã¥À» iptablesÁ¤Ã¥À» ±âº»ÀûÀÎ base·Î ¾²°í½Í°í ¾´´Ù¸é¿ä
±×ÀÌÈÄ¿¡ Á¦°¡ Áß±¹´ë¿ª ipÂ÷´ÜÇÏ·Á°í geoip¸¦ ÀÌ¿ëÇؼ
Áß±¹ip´ë¿ª Â÷´ÜÁ¤Ã¥À» »ðÀÔÇϸé¿ä
±×¼ø°£ kisaÀÇ kisa¹æȺ® ±âº»Á¤Ã¥ÀÌ
INPUTÀÌ DROPÀ¸·Î¼³Á¤µÇÀִ»óÅÂÀ̱⿡
Á¤Ã¥°£ÀÇ À߸øÀÌÀִ°ÇÁö
Á¦°¡ ¿øÇÏ´Â Áß±¹ipÂ÷´ÜÁ¤Ã¥ÀÌ iptableÁ¤Ã¥»ó À߸ø됬´Ù°í
¹Ø¿¡¿Í°°Àº ¿¡·¯¸Þ½ÃÁö°¡ ³ª¿Â´Ù´Â°Å¿¡¿©
iptables: Saving firewall rules to /etc/sysconfig/iptables:[FAILED]
±×·¡¼ Áö±ÝÇöÀç
kisaÀÇ kisa¹æȺ® ±âº»Á¤Ã¥ À̶û Áß±¹ip ´ë¿ª Â÷´ÜÀ» µ¿½Ã¿¡ Á¦°¡ ¾²°í½ÍÁö¸¸
µ¿½Ã¿¡ ¸ø¾²´Â°É ¾î¶»°ÔÇÏ¸é ¾µ¼öÀÖÀ»±î¿ä?
ÇöÀç IPTABLEÀº
±âº»ÀûÀ롂 ÀÎÅͳݿ¡¼ µ¹°íÀÖ´Â kisa¹æȺ®Á¤Ã¥À» ±×´ë·Î Àû¿ëÇß°í¿ä
kisa¹æȺ® ±âº»Á¤Ã¥ÀÌ
INPUTÀÌ DROPÀ¸·Î¼³Á¤µÇÀִ»óÅÂÀä
¿©±â¿¡´Ù°¡
Áß±¹¾ÆÀÌÇǸ¦ GEOIP¸ðµâ¼³Ä¡ÇÏ°í ¸·À¸·Á°í
iptables -A INPUT -m geoip --src-cc CN -j DROP
¼³Á¤Çß´õ´Ï
Á¤Ã¥¼³Á¤ÀÇ ¹®Á¦ÀΰŰ°Àºµ¥¿ä
¹Ø¿¡¿Í°°ÀÌ ¿¡·¯»ý±é´Ï´Ù
iptables: Saving firewall rules to /etc/sysconfig/iptables:[FAILED]
ÇöÀç IPTABLEÀÇ Á¤Ã¥À» Àú ¹Ø¿¡¿Í°°ÀÌ Çß½À´Ï´Ù
±âº» INPUTÀÌ DROPÀ¸·Î¼³Á¤µÇÀִ»óÅÂÀä
±×·±µ¥ ¿©±â´Ù Áß±¹¾ÆÀÌÇǸ¦ GEOIP¸ðµâ¼³Ä¡ÇÏ°í ¸·À¸·Á°í
iptables -A INPUT -m geoip --src-cc CN -j DROP
»ðÀÔÇÏ°í ÀúÀåÇÏ·Á´Ù ¿¡·¯°¡ »ý±â³×¿ä
ÀÌ·²¶© ¾î¶²½ÄÀ¸·Î ÇØ¾ß ¿¡·¯¾øÀÌ IPTABLEÀÌ Áß±¹¾ÆÀÌÇǸ·°í Á¤»óÀûÀ¸·Î ÀÛµ¿µÉ±î¿ä?
¹Ø¿¡´Â ÇöÀç KISA IPTABLES Àû¿ë¼³Á¤ SSHÀÔ´Ï´Ù
Àú»óÅ·Π±×´ë·Î Àú¿¡°Ô Àû¿ë½ÃÄ×°í¿ä
[root@localhost bin]# cat My_Firewall
#!/bin/sh
IPTABLES="/sbin/iptables"
IP_ADDR=`grep "IPADDR=" /etc/sysconfig/network-scripts/ifcfg-eth0 | awk
-F'=' '{ print $2 }'`
. /etc/init.d/functions
case "$1" in
start|restart)
echo "$1ing My_Firewall :"
;;
stop)
echo "$1ping My_Firewall :"
$IPTABLES -F
$IPTABLES -X
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -P OUTPUT ACCEPT
exit
;;
*)
echo $"Usage: $0 {start|restart|stop}"
exit
;;
esac
### ·ê¼Â ÃʱâÈ
$IPTABLES -F
### ±âº»Á¤Ã¥ ¼³Á¤
$IPTABLES -P INPUT DROP
$IPTABLES -P FORWARD DROP
$IPTABLES -P OUTPUT ACCEPT
### Loopback Æ®·¡ÇÈ Çã¿ë
$IPTABLES -A INPUT -i lo -j ACCEPT
### ÀÚ±âÀÚ½ÅÀ» ¼Ò½º·Î ÇÏ´Â Æ®·¡ÇÈ Â÷´Ü
$IPTABLES -A INPUT -i eth0 -s $IP_ADDR -j DROP
$IPTABLES -A INPUT -i eth0 -s 127.0.0.0/8 -j DROP
### »óÅÂÃßÀû ¼³Á¤
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
$IPTABLES -A INPUT -p all -m state --state INVALID -j DROP
### ºñÁ¤»óÀû tcp-flags Â÷´Ü
$IPTABLES -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL PSH,FIN -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL URG,PSH,FIN -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL SYN,ACK,FIN -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL SYN,FIN,PSH -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL SYN,FIN,RST -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL SYN,FIN,RST,PSH -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL SYN,FIN,ACK,RST -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL SYN,ACK,FIN,RST,PSH -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ACK,URG URG -j DROP
### ¼ºñ½ºÆ÷Æ® Ãß°¡/Á¦°Å¸¦ À§Çؼ´Â, ¹Ýµå½Ã ¾Æ·¡ÀÇ ¼³Á¤¸¸ ¼öÁ¤ÇϽñ⠹ٶø´Ï´Ù!!!
### $IPTABLES ±¸¹®¾ÕÀÇ ÁÖ¼® Á¦°ÅÈÄ, My_Firewall ¸¦ Àç°¡µ¿ÇϽøé ÇØ´çÆ÷Æ®´Â È°¼ºÈ
µË´Ï´Ù.
## °ü¸®ÀÚ PC°¡ °íÁ¤À̶ó¸é ¸¶½ºÅÍ IP ·Î µî·ÏÇÏÀÚ.
$IPTABLES -A INPUT -s 211.47.132.123 -m state --state NEW -j ACCEPT
### ftp servive 20Àº µ¥ÀÌŸ Æ÷Æ®À̹ǷΠ¹Ýµå½Ã ¿ÀÇ 21Àº FTP Æ÷Æ®¸¦ ¹Ù²Ù¾î »ç¿ë°¡´É
#$IPTABLES -A INPUT -p tcp --sport 1024: --dport 20 -m state --state NEW -j ACCEPT
#$IPTABLES -A INPUT -p tcp --sport 1024: --dport 21 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 20 -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 21 -j ACCEPT
# ¶Ç´Â FTPÀÇ IP ´ë¿ªÀ» ÁöÁ¤µµ °¡´ÉÇÏ´Ù.
$IPTABLES -A INPUT -p tcp --sport 1024: --dport 21 -s 211.xx.xxx.0/255.255.255.0
-j ACCEPT
### ssh servive 22¿Ü¿¡ ´Ù¸¥ Æ÷Æ®·Î º¯°æÇؼ »ç¿ëÇϴ°ÔÁÁ´Ù.
$IPTABLES -A INPUT -p tcp --sport 1024: --dport 22 -m state --state NEW -j ACCEPT
### smtp servive ¸á ¼¹ö µ¹¸®Áö ¾ÊÀ¸¸é ¸·ÀÚ
$IPTABLES -A INPUT -p tcp --sport 1024: --dport 25 -m state --state NEW -j ACCEPT
### dns servive DNS µ¹¸®Áö ¾ÊÀ¸¸é ¸·ÀÚ
#$IPTABLES -A INPUT -p tcp --sport 1024: --dport 53 -m state --state NEW -j ACCEPT
#$IPTABLES -A INPUT -p udp --sport 1024: --dport 53 -m state --state NEW -j ACCEPT
### http servive ±âº»ÀûÀ¸·Î À¥Àº µ¹¸±ÅÙµ¥... ¿¾î³õÀÚ.
$IPTABLES -A INPUT -p tcp --sport 1024: --dport 80 -m state --state NEW -j ACCEPT
### pop3 servive ¸ÞÀÏ ¼¹ö ¾È¾²¸é ¸·ÁÒ...
#$IPTABLES -A INPUT -p tcp --sport 1024: --dport 110 -m state --state NEW -j ACCEPT
### identd servive
$IPTABLES -A INPUT -p tcp --syn --dport 113 -j REJECT --reject-with tcp-reset
### imap servive
#$IPTABLES -A INPUT -p tcp --sport 1024: --dport 143 -m state --state NEW -j ACCEPT
### snmp servive
#$IPTABLES -A INPUT -p udp --sport 1024: --dport 161 -m state --state NEW -j ACCEPT
### https servive º¸¾È¼¹ö »ç¿ëÇÑ´Ù¸é ¿ÀÇÂÇØ¾ß µÈ´Ù.
$IPTABLES -A INPUT -p tcp --sport 1024: --dport 443 -m state --state NEW -j ACCEPT
### rsync servive RSYNC »ç¿ëÇÑ´Ù¸é ¿ÀÇÂ
$IPTABLES -A INPUT -p tcp --sport 1024: --dport 873 -m state --state NEW -j ACCEPT
### mysql servive Mysql Àº µ¹¸±Å×´Ï ¿ÀÇÂ
$IPTABLES -A INPUT -p tcp --sport 1024: --dport 3306 -m state --state NEW -j ACCEPT
### ping servive ÇÎÀ» ¿¾î Á¢±Ù Å×½ºÆ®°¡ °¡´ÉÇϵµ·Ï...
$IPTABLES -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
./My_Firewall start ÇÏ¸é ½ÃÀ۵ȴÙ..
Á×À϶§´Â ./My_Firewall stop ÇÏ¸é µÈ´Ù.
ÁÖÀÇÇØ¾ß µÉ°ÍÀº ±âº» Á¤Ã¥À» DROP À¸·Î Ç߱⠶§¹®¿¡
Á×À϶§ iptables -F ·Î Á×À̸é Àý´ë ¾ÈµÈ´Ù.....
¼¹ö ºÎÆýà ÀÚµ¿ Àû¿ëÇÏ°Ô ÇÒ·Á¸é..
#serivce iptables save
|