【IT168 服务器学院】5. 软件性能与安全设置
操作系统的优化还要做各个软件部分的性能优化,关于软件性能优化设计的内容很多,这里拿APACHE2+MYSQL+PHP为例简单说明一下。
5.1 APACHE性能与安全
# vi /usr/local/etc/apache2/httpd.conf
=========+===========+===========+============
<IfModule prefork.c>
StartServers 10
MinSpareServers 10
MaxSpareServers 15
ServerLimit 2000
MaxClients 1500
MaxRequestsPerChild 0 //这个数值不要改动,保持为“0”更好些
</IfModule>
AddDefaultCharset GB2312
ServerTokens Prod //安全设定
ServerSignature Email //安全设定
基于安全考虑如果用不到目录索引去掉下面一句中的“Indexes”:
Options Indexes FollowSymLinks
=========+===========+===========+============
有些网站设计者想限制下载用户所用的IP连接网站的并发连接数,这里有两种途径来做这件事:使用APACHE的模块mod_limitipconn和使用防火墙来作都可以做到。因为防火墙的处理IP连接的效率要大大高于APACHE本身所以使用防火墙做起来性能要好很多。下面简单说一下两者的做法。
5.2 使用MOD_LIMITIP限制IP连接数
# wget http://dominia.org/djao/limit/mod_limitipconn-0.22.tar.gz
# tar –zxvf mod_limitipconn-0.22.tar.gz
# cd mod_limitipconn-0.22
# vi Makefile
修改相关路径适应你的系统
# make install
# vi /usr/local/etc/apache2/httpd.conf
=========+===========+===========+============
<IfModule mod_limitipconn.c>
<Location / > //设置要控制的目录
MaxConnPerIP 3 //限制单IP最大进程数
NoIPLimit image/* //非限制的文件类型
</Location>
<Location /mp3>
MaxConnPerIP 1
OnlyIPLimit audio/mpeg video //可选限制的文件类型
</Location>
</IfModule>
=========+===========+===========+============
5.2 使用PF防火墙限制IP连接数
# vi /etc/pf.conf
加上下面一句,每个IP最多可以同时建立3个连接:
pass in on $ext_if proto tcp to $web_server port www flags S/SA keep state \
(max 2000, source-track rule, max-src-nodes 1000, max-src-states 3)