ubuntu server 流量控制

技术分享 Story 117浏览 0评论
摘要

ubuntu server 流量控制

ubuntu server 流量控制

到网站找了些方法,结合起来给ubuntu服务器安装了个限制服务器网站连接数和流量的工具!
限制 Apache 的带宽流量
转载请注明:http://www.xysq.net/bbs原创
首先确认安装好apache2.

安装 libapache2-mod-cband
复制内容到剪贴板

代码:

apt-get install libapache2-mod-cband
激活 cband 模块
复制内容到剪贴板

代码:

cd /etc/apache2/mods-enabled
ln -s /etc/apache2/mods-available/cband.conf cband.conf
ln -s /etc/apache2/mods-available/cband.load cband.load

升级 libapache2-mod-cband

mod_cband 是 apache2 用來控制流量 module ,和 apache 1.3 mod_bandwidth / mod_limitpconn 不太一樣。

首先下載 mod-cband 原始檔, wget http://cband.linux.pl/download/mod-cband-0.9.7.4.tgz ,不過 cband.linux.pl 一直無法讀取,只好透過 Google 找到 mod-cbnad-0.9.7.5.tgz
mod-cband-0.9.7.5.tgz (69.06 KB)

代码:

apt-get install apache2-prefork-dev
cd /tmp
wget cband.linux.pl/download/mod-cband-0.9.7.5.tgz
tar xzvf mod-cband-0.9.7.5.tgz
cd mod-cband-0.9.7.5
./configure
make
make install

这一步如果你的httpd.conf文件是空文件的话,就提示错误了,我的就是这样!

引用:

apxs2 -Wc,-Wall -Wc,-DDST_CLASS=3 -i -a -n cband src/mod_cband.la
/usr/share/apache2/build/instdso.sh SH_LIBTOOL='/usr/share/apr-1.0/build/libtool' src/mod_cband.la /usr/lib/apache2/modules
/usr/share/apr-1.0/build/libtool --mode=install cp src/mod_cband.la /usr/lib/apache2/modules/
cp src/.libs/mod_cband.so /usr/lib/apache2/modules/mod_cband.so
cp src/.libs/mod_cband.lai /usr/lib/apache2/modules/mod_cband.la
PATH="$PATH:/sbin" ldconfig -n /usr/lib/apache2/modules
----------------------------------------------------------------------
Libraries have been installed in:
   /usr/lib/apache2/modules

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking
   - use the `-Wl,--rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
chmod 644 /usr/lib/apache2/modules/mod_cband.so
apxs:Error: Activation failed for custom /etc/apache2/httpd.conf file..
apxs:Error: At least one `LoadModule' directive already has to exist..
make: *** [install] Error 1

解决方法就是在/etc/apache2/httpd.conf文件中加入
复制内容到剪贴板

代码:

LoadModule cband_module       /usr/lib/apache2/modules/mod_cband.so
由于cband模块已经由 cband.load 加载,因此修改 /etc/apache2/httpd.conf ,删除加入cband_module的行。

复制内容到剪贴板
代码:

vi  /etc/apache2/httpd.conf
查找
复制内容到剪贴板

代码:

LoadModule cband_module       /usr/lib/apache2/modules/mod_cband.so
删除,并保存。

设置站点,注意找到你的站点配置文件在哪个文件中,我安装的ispconfig,就不一样了,在/etc/apache2/vhosts/Vhosts_ispconfig.conf文件中,看看你的在那个文件中了:

引用:

<VirtualHost 192.168.0.5:80>
ServerName down.xysq.net:80
ServerAdmin webmaster@xysq.net
DocumentRoot /home/admispconfig/ispconfig/web/multidoc/edit/web41/web
CBandSpeed 4096 10 30
CBandRemoteSpeed 200kb/s 3 3
DirectoryIndex index.html index.htm index.php index.php5 index.php4 index.php3 index.shtml index.cgi index.pl index.jsp Default.htm default.htm
.............
</VirtualHost>

CBandSpeed 限制 down.xysq.net 的虚拟主机的总访问速度为 4096kbps, 最大每秒 10 个请求和最大每秒 30 个连接. CBandRemoteSpeed 限制 down.xysq.net 的虚拟主机的任何个人的访问速度为每秒 200kb, 最大每秒 3 个请求和最大每秒 3 个连接.

重新启动 apahe2 使其配置生效:
复制内容到剪贴板

代码:

/etc/init.d/apache2 restart
你同时可以通过url:
复制内容到剪贴板

代码:

http://down.xysq.net/cband-status
http://down.xysq.net/cband-status-me

来查看最新的流量情况。

转载请注明:成长的对话 » ubuntu server 流量控制