§N®ð¬Éªº¹F¤H¡A±M·~ºû­×§N®ð¡A¦Ñ¸gÅç¯u¥\¤Ò¡A§N®ð¤£§N
Äé§N´C¡AÀ£ÁY¾÷¤£¨}¡A§K¶O¨ì©²¦ô»ù
©î°£¦XªkÀu¨}·h®a¤½¥q¡A·h®a¹sªÈ¯É¡A´£¨Ñ±z¥­»ù¤S±M·~ªº·h®aªA°È
µ´¹ïÅý±z¦w¤ß¡Bº¡·N³á

­º­¶  ¡E  maids ½×¾Â ¡E µ{¦¡³]­p°Q½×     ¡E 

mod_limitipconn ±±¨î³æ� ip ³s½u¨ì apache

©ÐªF¡G¹F¤H
µoªí®É¶¡¡G2007-02-16


¨Ï¥Î mod_limitipconn ±±¨î³æ¤@ ip ³s½u¨ì apache ªº¼Æ¶q

¥Øªº: ¦b¤w¬[³]ºô¯¸ªº Apache HTTP Server ¤É¯Åª©¥», ¨Ã¥[¤J mod_limitipconn (­­¨î¦P¤@ IP ³Ì¤j Connection ¼Æ¶q) ¼Ò²Õ

1) ¨Ï¥Îmod_limitipconn­­¨îApacheªº¨Ãµo³s±µ¼Æ
mod_limitipconn¥i¥H±±¨î¨C­ÓIP¦ì§}¦P®É³s±µ¦øªA¾¹¬Y¤@­Ó¥Ø¿ýªº¨Ãµo³s±µ¼Æ¡A¬O¤@­Ó«D±`¦³¥Îªº¼Ò²Õ
©x¤èºô§}¡J http://dominia.org/djao/limitipconn.html

Àô¹Ò: Fedora Core 1 httpd 2.0.47 ¡÷ 2.0.55

¤U¸ü¨Ã¸Ñ¥]¬ÛÃö Source Tar Ball

cd /usr/local/src
wget http://apache.cdpa.nsysu.edu.tw/httpd/httpd-2.0.55.tar.bz2
wget http://dominia.org/djao/limit/mod_limitipconn-0.22.tar.gz
tar jxf httpd-2.0.55.tar.bz2
tar zxf mod_limitipconn-0.22.tar.gz

¦w¸Ë Apache HTTP Server 2.0.55

cd httpd-2.0.55
patch -p1 < ../mod_limitipconn-0.22/apachesrc.diff
./buildconf
./configure --prefix=/usr/local/apache2
make
make install

¦w¸Ë mod_limitipconn ¼Ò²Õ

cd ../mod_limitipconn-0.22
vi Makefile

APXS=/usr/local/apache2/bin/apxs
APACHECTL=/usr/local/apache2/bin/apachectl

make
make install

½Õ¾ãÀô¹Ò, ­×§ï·sªº httpd.conf

cd /usr/local/apache2
rmdir logs
ln -s /var/log/httpd logs Ä~Äò¨Ï¥Î­ì¨Ó¦s©ñ log ªº¦a¤è (/var/log/httpd)
ln -s /var/run Åý httpd.pid ¤@¼Ë¸m©ó /var/run (for logrotate)

cp /usr/lib/httpd/modules/* ./modules ±N­ì¥ýªº module ½Æ»s¹L¨Ó

cd conf
mv ssl.conf ssl.conf.bak
ln -s /etc/httpd/conf.d/ssl.conf
vi ssl.conf

#LoadModule ssl_module... «Ý·|¦b httpd.conf ¥[¤J LoadModule ssl_module, ©Ò¥H³oÃäµù¸Ñ±¼

vi httpd.conf ½Õ¾ã¬ÛÃö³]©w, ¥H²Å¦X­ì¥»ªººô¯¸Àô¹Ò

­×§ï:

User nobody --> apache
Group #-1 --> apache

PidFile logs/httpd.pid --> run

DocumentRoot "/usr/local/apache2/htdocs" --> "/var/www/html"
--> "/var/www/html"
ServerTokens Full --> Prod
ServerSignature On --> Off ­×§ï¥H¤W³o¨â¦æ¬O¬°¤FÁôÂæøªA¾¹¸ê°T
ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/" --> "/var/www/cgi-bin/"
--> "/var/www/cgi-bin"

·s¼W:

LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule php4_module modules/libphp4.so µø»Ý¨D¸ü¤J¬ÛÃö¼Ò²Õ

AddType application/x-httpd-php .php ­n¯à°õ¦æ php ºô­¶, °£¸ü¤J¼Ò²Õ¥~, °O±o¥[¤W³o¦æ

DAVLockDB /var/lib/dav/lockdb ·Q¨Ï¥Î WebDAV ¤@©w­n¥[¤W³o¦æ



[Copy to clipboard]CODE:
LoadModule limitipconn_module modules/mod_limitipconn.so
#ExtendedStatus On --> ExtendedStatus On ¨ú®ø¦¹¦æµù¸Ñ¤~¯à¨Ï¥Î limitipconn ¼Ò²Õ


MaxConnPerIP 20
NoIPLimit image/* text/css application/x-javascript



§ó¦hªº mod_limitipconn ³]¸m°Ñ¦Ò

°±¤î­ì HTTP Server ¹B§@, ±Ò°Ê·s¦w¸Ë¤§ HTTP Server

/etc/init.d/httpd stop
/usr/local/apache2/bin/apachectl -f /usr/local/apache2/conf/httpd.conf -k start

¶}¾÷®É, ¦Û°Ê±Ò°Ê·s¦w¸Ë¤§ HTTP Server

chkconfig httpd stop
vi /etc/rc.d/rc.local

/usr/local/apache2/bin/apachectl -f /usr/local/apache2/conf/httpd.conf -k start






  • ÃÙ§Uºô¯¸       

    ¼s§Q¤£°Ê²£-·sªO¯S°Ï«ü¦W«×³Ì°ª¡B­È±o±z«H¿àªº¦n©Ð¥ò
    ±zªº¦«¥I,¼s§Q¥Î¤ß¬°±zªA°È
    ¼s§Q¤£°Ê²£-ªO¾ô¦b¦a¥Í®Ú³Ì¹ê¦b--·sªO¯S°Ï«ü¦W«×³Ì°ª¡B­È±o±z«H¿àªº¦n©Ð¥ò
    §¹¾ã©Ð°T¡A©Ð«Î¡B©±­±¼öªùºë¿ïª«¥ó¡A¼s§Q¤£°Ê²£ Àu½è¥ò¤¶¡A©Ð«Î¯²¸î¡B¶R½æ¸ê°T³z©ú¡A¥æ©ö¯u¦w¤ß¡I



  • ¡@¦@ 0 ¤H¦^À³

    ©m¦W¡G
    §G§i¤º®e¡G