2011年9月

 
为了安全,将上传文件的临时目录加入到php_admin_value open_basedir后面:
<VirtualHost *:80>
    php_admin_value open_basedir "/usr/local/apache/htdocs/www:/tmp"
    php_admin_value safe_mode On
 </VirtualHost>
注意:两个目录之间是冒号隔开。
即使拿到该站点的webshell也看不到其他站点的东西。
move_uploaded_file不受open_basedir的限制,所以不必修改php.ini里upload_tmp_dir的值。

一、使用yum安装:
在 /etc/yum.repos.d/下面新建dag.repo文件在文件中输入源地址:
[root@hmg2 yum.repos.d]# cat dag.repo
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
enabled=1
[root@hmg2 yum.repos.d]#yum -y install rrdtool
这样就可以完成RRDTool安装……
二、软件包安装:
先yum安装所要的库文件:
[root@hmg2 yum.repos.d]#yum install cairo-devel libxml2-devel pango-devel pango libpng-devel freetype freetype-devel libart_lgpl-devel
然后下载rrdtool包,安装:
[root@hmg2 src]#wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.3.1.tar.gz
[root@hmg2 src]#tar -zxvf rrdtool-1.3.1.tar.gz
[root@hmg2 src]#./configure –prefix=/usr/local/rrdtool && make && make install
运行rrdtool –v测试安装成功没有:
[root@hmg2 src]#rrdtool -v //可以看到RRDTool的用法以及版本信息

三、另一种yum安装
[root@hmg2 src]#wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
[root@hmg2 src]#rpm -ivh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
[root@hmg2 src]#yum -y install rrdtool*

今天,(vmware里的)网站程序怎么也连接不上了,提示连接不上数据库,之前好好的,没有做什么操作啊。
密码是正确的,终端能连接上,就是php连接不上,php也没有什么问题啊。郁闷死了。怒之,删mysql数据库,重建。
rm -rf /usr/local/mysql/var/mysql             #直接删除的数据
mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var
mysql -u root -p                                     #进入mysql模式
show databases;                                #有其他数据库
可笑的是,现在网站能访问了,网站连接数据库的用户密码没有修改。
快速进入mysql表
use mysql
select user,host,password from user;         #确定是创建的,没有其他的用户。
mysql -u 任意用户 -p                                           #任意用户,空密码能进入
mysqladmin -uroot password                               #初始化密码,提示连接localhost 失败,0.0.0.0:3306正常监听。
看mysql日志正常,有点小郁闷。没有初始化密码前,不需要验证码。只要有对应的数据库就可以吗。晕。
 

#!/bin/bash

by:key1088

time1=`date -d '-1 days' +%d/%b/%Y`                                              #昨天的时间,与apache日志时间一样的格式
time2=`date +%Y%m%d -d '-1 days'`                                               #昨天的时间,年月日  例:2011/02/11
echo $time2 >> /stats/ipstream
awk -v day="$time1" '$4~day{print}' /usr/local/apache/logs/access_log|awk '{print $1}'|sort|uniq|wc -l >> /stats/ipstream

iptables之7层过滤封QQ、MSN、P2P
环境vmware-NAT连接上网。
   192.168.2.0             192.168.20.0
clent ----->eth0-[linux]-eth1-------[nat]----intener
 
by:key1088
准备
1.内核源码                                  
2.iptables 源码                         
3.netfilter-L7 filter
4.l7-protocols
安装
1.给内核打补丁.编译内核。我使用的2.6.28的内核。
patch -pl < /root/netfilter-layer7-v2.22/kernel-2.6.25-2.6.28-layer7-2.22.patch
编译内核
make menuconfig
选项
General setup  --- 
      Prompt for development and/or incomplete code/drivers      
   Networking  --- 
       Networking options  --- 
            Network packet filtering framework (Netfilter)  --- 
                 Core Netfilter Configuration  ---                           
                      <M> Netfilter connection tracking support         
                            <M>   "layer7" match support                                            
                                  Layer 7 debugging output                  
        IP: Netfilter Configuration  ---                                    
              <M>FULL NAT                                        #别忘记这个不然没有nat table
make
make moduls_install 
make install
2.安装Layer 7协议
cd l7-protocols-2009-05-28/
make install
3.编译iptables
./configure --with-ksoure=/usr/src/linux-2.6.28/
make
make install
4.检测。重启选择启动那个内核。
iptables -V                                       #你的iptables 版本
iptables -m layer7 --help                  #看看有layer7选项吗
lsmod|grep layer7                             #看看有相应的模块吗
iptables -t nat -L                                 #其他tables能不能用。
iptables -t mangle -L
iptables -L
5.测试
iptables -t nat -A POSTROUTING -s 内网ip -j SNAT --to 外防火墙IP               #客户端能正常上网,上QQ
iptables -t mangle -I PREROUTING -m layer --l7proto qq -j DROP                 #退下QQ,看看能不能使用。
6.相应语法
iptables -t mangle -I PREROUTING -m layer7 --l7proto edonkey -j DROP
iptables -t mangle -I PREROUTING -m layer7 --l7proto bittorrent -j DROP
iptables -t mangle -I PREROUTING -m layer7 --l7proto qq -j DROP
iptables -t mangle -I PREROUTING -m layer7 --l7proto msnmessenger -j DROP
iptables -t mangle -I PREROUTING -m layer7 --l7proto xunlei -j DROP
iptables -t mangle -I PREROUTING -m layer7 --l7proto kugoo -j DROP
iptables -t mangle -I PREROUTING -m layer7 --l7proto yahoo -j DROP
 
参考地址:
http://lzy821218.blog.51cto.com/209800/307349