cband 모듈을 아래 사이트에서 다운로드 합니다.

http://codee.pl/cband.html
[root@ruo91 ~]# cd /usr/local/src
[root@ruo91 ~]# wget http://cband.linux.pl/download/mod-cband-0.9.7.5.tgz
[root@ruo91 ~]# tar xzvf mod-cband-0.9.7.5.tgz
[root@ruo91 ~]# cd mod-cband-0.9.7.5
[root@ruo91 ~]# ./configure --with-apxs=/usr/local/apache2/bin/apxs
[root@ruo91 ~]# make && make install

설치가 완료 되면 아파치 설정 파일인 httpd.conf 에 모듈이 자동으로 붙는걸 확인 할수 있습니다.
[root@ruo91 ~]# cat /usr/local/apache2/conf/httpd.conf | grep cband
LoadModule cband_module       modules/mod_cband.so

아파치 설정 파일인 httpd.conf 에 아래 내용을 추가 해줍니다.
[root@ruo91 ~]# vi /usr/local/apache2/conf/httpd.conf
# 관리자 페이지 설정
# Allow from 에 있는 아이피로만 접근 가능
<IfModule mod_cband.c>
     <Location /cband-status>
         SetHandler cband-status
         Order Deny,Allow
         Deny from All
         Allow from 127.0.0.1 192.168.0.2
     </Location>
# 사용자 트래픽 설정
     <Location /cband-me>
         SetHandler cband-status-me
         Order deny,allow
         Deny from all
         Allow from all
     </Location>
</IfModule>

cband 를 이용하여 제한 하기 위해서는 <VirtualHost> 와 </VirtualHost> 사이에 아래 내용이 추가 되어야 합니다.
단일 사용자일 경우 하루에 100MB 트래픽 사용 가능
CBandUserLimit 100Mi
CBandUserPeriod 1D
<VirtualHost *:80>
ServerName localhost:80
ServerAdmin ruo91@naver.com
DocumentRoot /home/ruo91/public_html
CustomLog /home/apache2-log/ruo91-access.log combined
ErrorLog /home/apache2-log/ruo91-error.log
LogLevel warn
ServerSignature Off
  <Directory "/home/ruo91/public_html">
      Options FollowSymLinks
  </Directory>
     CBandLimit 100Mi
     CBandPeriod 1D
</VirtualHost>

하나의 사용자가 여러개 사용중일 경우
하루에 100MB 트래픽을 서로 공유하여 사용
 <CBandUser foobar>
     CBandUserLimit 100Mi
     CBandUserPeriod 1D
 </CBandUser>
 <CBandUser foobar>
     CBandUserLimit 100Mi
     CBandUserPeriod 1D
 </CBandUser>

<VirtualHost *:80>
ServerName ruo91.yongbok.net:80
ServerAdmin ruo91@naver.com
DocumentRoot /home/ruo91/public_html
CustomLog /home/apache2-log/ruo91-access.log combined
ErrorLog /home/apache2-log/ruo91-error.log
LogLevel warn
ServerSignature Off
  <Directory "/home/ruo91/public_html">
      Options FollowSymLinks
  </Directory>
</VirtualHost>

<VirtualHost *:80>
ServerName pigeonbok.yongbok.net:80
ServerAdmin ruo91@naver.com
DocumentRoot /home/pigeonbok/public_html
CustomLog /home/apache2-log/pigeonbok-access.log combined
ErrorLog /home/apache2-log/pigeonbok-error.log
LogLevel warn
ServerSignature Off
  <Directory "/home/pigeonbok/public_html">
      Options FollowSymLinks
  </Directory>
</VirtualHost>

트래픽 용량 단위는 byte 며 아래와 같이 표현 가능합니다.
K, M, G : 1000 byte 단위
Ki, Mi, Gi : 1024 byte 단위

또한 트래픽 용량이 초가 했을시 초과 페이지를 볼수 있도록 설정 가능 합니다.
CBandDefaultExceededURL http://test.com/traffic_over.html
# 하루 트래픽 100MB 제한이고 값을 넘어가게 되면 자동으로 해당 URL 로 이동
<VirtualHost *:80>
ServerName localhost:80
ServerAdmin ruo91@naver.com
DocumentRoot /home/ruo91/public_html
CustomLog /home/apache2-log/ruo91-access.log combined
ErrorLog /home/apache2-log/ruo91-error.log
LogLevel warn
ServerSignature Off
  <Directory "/home/ruo91/public_html">
      Options FollowSymLinks
  </Directory>
     CBandLimit 100Mi
     CBandPeriod 1D
     CBandDefaultExceededURL http://test.com/traffic_over.html
</VirtualHost>

cband-status 관리자 페이지 접속 화면
http://www.testserver.com/cband-status


도움주신 url : http://www.cyworld.com/ruo91/3235401

by 초보인척 2013. 3. 18. 11:12