我的Windows xp要是不正常关机在进入前会出来一行行的英文,要是中途卡住那倒霉透顶了。
在Linux下还没有不正常关机的情况,如果哪天突然断电,这个肯定是要经历一下的,不知道到时会怎样哦。
WINDOWS出现的一行一行英文是系统进行自检,估计Linux系统没有这个功能吧,应该没事。
Linux不会像Windows一样自检,但是原因不是因为没有这个功能。
多数的Linux采用Ext3或者ext4作为文件系统,这是一这日志文件系统(关于日志文件系统的具体内容,感兴趣的可以google一下),对文件系统的保护很到位,断电重启和没有断电一样,几乎不会损失资料。所以有人提出:Linux不需关机,直接关电源即可。
Linux不会因为断电非法关机而自检,因为不需要。但是他也有自检,他的自检一般是系统本身计划好的,关于Ext2和Ext3的自检设置,可以看看tune2fs的手册(man tune2fs)。
来源:http://www.linuxdiyf.com/viewarticle.php?id=156383
在Linux下还没有不正常关机的情况,如果哪天突然断电,这个肯定是要经历一下的,不知道到时会怎样哦。
WINDOWS出现的一行一行英文是系统进行自检,估计Linux系统没有这个功能吧,应该没事。
Linux不会像Windows一样自检,但是原因不是因为没有这个功能。
多数的Linux采用Ext3或者ext4作为文件系统,这是一这日志文件系统(关于日志文件系统的具体内容,感兴趣的可以google一下),对文件系统的保护很到位,断电重启和没有断电一样,几乎不会损失资料。所以有人提出:Linux不需关机,直接关电源即可。
Linux不会因为断电非法关机而自检,因为不需要。但是他也有自检,他的自检一般是系统本身计划好的,关于Ext2和Ext3的自检设置,可以看看tune2fs的手册(man tune2fs)。
来源:http://www.linuxdiyf.com/viewarticle.php?id=156383
在php.ini文件里修改以下参数:
session.use_cookies = 1 // sessionid在客户端采用的存储方式,置1代表使用cookie记录客户端的sessionid,同时,$_COOKIE变量里才会有$_COOKIE[‘PHPSESSIONID’]这个元素存在
output_buffering = 4096 // 限制输出缓冲区的最大值
implicit_flush = Off
我们遇到的问题是:
output_buffering = Off
;output_buffering = 4096;
修改为:
output_buffering = 4096;
即可。
这儿是限定PHP往浏览器输出httpd头的,否则可以打印出来自同域名的COOKIE,$_COOKIE,是因为session.use_cookies = 1,而这台服务器设置Cookie会失效,是因为:output_buffering = Off,所以会头没有输出,Cookie浏览器收不到导致失效。
session.use_cookies = 1 // sessionid在客户端采用的存储方式,置1代表使用cookie记录客户端的sessionid,同时,$_COOKIE变量里才会有$_COOKIE[‘PHPSESSIONID’]这个元素存在
output_buffering = 4096 // 限制输出缓冲区的最大值
implicit_flush = Off
我们遇到的问题是:
output_buffering = Off
;output_buffering = 4096;
修改为:
output_buffering = 4096;
即可。
这儿是限定PHP往浏览器输出httpd头的,否则可以打印出来自同域名的COOKIE,$_COOKIE,是因为session.use_cookies = 1,而这台服务器设置Cookie会失效,是因为:output_buffering = Off,所以会头没有输出,Cookie浏览器收不到导致失效。
方式一:
方式二:
方式二:
Socket协议的形象描述
socket的英文原义是“孔”或“插座”。在这里作为4BDS UNIX的进程通信机制,取后一种意思。socket非常类似于电话插座。以一个国家级电话网为例。电话的通话双方相当于相互通信的2个进程,区号是它的网络地址;区内一个单位的交换机相当于一台主机,主机分配给每个用户的局内号码相当于socket号。任何用户在通话之前,首先要占有一部电话机,相当于申请一个socket;同时要知道对方的号码,相当于对方有一个固定的socket。然后向对方拨号呼叫,相当于发出连接请求(假如对方不在同一区内,还要拨对方区号,相当于给出网络地址)。对方假如在场并空闲(相当于通信的另一主机开机且可以接受连接请求),拿起电话话筒,双方就可以正式通话,相当于连接成功。双方通话的过程,是一方向电话机发出信号和对方从电话机接收信号的过程,相当于向socket发送数据和从socket接收数据。通话结束后,一方挂起电话机相当于关闭socket,撤消连接。
阅读全文
socket的英文原义是“孔”或“插座”。在这里作为4BDS UNIX的进程通信机制,取后一种意思。socket非常类似于电话插座。以一个国家级电话网为例。电话的通话双方相当于相互通信的2个进程,区号是它的网络地址;区内一个单位的交换机相当于一台主机,主机分配给每个用户的局内号码相当于socket号。任何用户在通话之前,首先要占有一部电话机,相当于申请一个socket;同时要知道对方的号码,相当于对方有一个固定的socket。然后向对方拨号呼叫,相当于发出连接请求(假如对方不在同一区内,还要拨对方区号,相当于给出网络地址)。对方假如在场并空闲(相当于通信的另一主机开机且可以接受连接请求),拿起电话话筒,双方就可以正式通话,相当于连接成功。双方通话的过程,是一方向电话机发出信号和对方从电话机接收信号的过程,相当于向socket发送数据和从socket接收数据。通话结束后,一方挂起电话机相当于关闭socket,撤消连接。
阅读全文
http://httpd.apache.org/docs/1.3/keepalive.html
有些系统可能需要实时来往网页发送数据,有点类似长连接,为此看到这篇文章,转载如下:阅读全文
有些系统可能需要实时来往网页发送数据,有点类似长连接,为此看到这篇文章,转载如下:阅读全文
老男孩
演唱:筷子兄弟
那是我日夜思念深深爱着的人呐
到底我该如何表达
她会接受我吗
也许永远都不会跟他说出那句话
注定我要浪迹天涯
怎么能有牵挂
梦想总是遥不可及
是不是应该放弃
花开花落又是雨季
春天啊你在哪里
青春如同奔流的江河
一去不回来不及道别
只剩下麻木的我没有了当年的热血
看那漫天飘零的花朵
在最美丽的时刻凋谢
有谁会记得这世界她来过
转眼过去多年时间多少离合悲欢
曾经志在四方少年羡慕南飞的燕
各自奔前程的身影匆匆渐行渐远
未来在哪里平凡啊谁给我答案
那时陪伴我的人啊你们如今在何方
我曾经爱过的人啊现在是什么模样
当初的愿望实现了吗
事到如今只好祭奠吗
任岁月风干理想再也找不回真的我
抬头仰望着满天星河
那时候陪伴我的那颗
这里的故事你是否还记得
生活像一把无情刻刀
改变了我们模样
未曾绽放就要枯萎吗
我有过梦想
青春如同奔流的江河
一去不回来不及道别
只剩下麻木的我没有了当年的热血
看那满天飘零的花朵
在最美丽的时刻凋谢
有谁会记得这世界它曾经来过
当初的愿望实现了吗
事到如今只好祭奠吗
任岁月风干理想再也找不回真的我
抬头仰望着满天星河
那时候陪伴我的那颗
这里的故事你是否还记得
如果有明天祝福你亲爱的
演唱:筷子兄弟
那是我日夜思念深深爱着的人呐
到底我该如何表达
她会接受我吗
也许永远都不会跟他说出那句话
注定我要浪迹天涯
怎么能有牵挂
梦想总是遥不可及
是不是应该放弃
花开花落又是雨季
春天啊你在哪里
青春如同奔流的江河
一去不回来不及道别
只剩下麻木的我没有了当年的热血
看那漫天飘零的花朵
在最美丽的时刻凋谢
有谁会记得这世界她来过
转眼过去多年时间多少离合悲欢
曾经志在四方少年羡慕南飞的燕
各自奔前程的身影匆匆渐行渐远
未来在哪里平凡啊谁给我答案
那时陪伴我的人啊你们如今在何方
我曾经爱过的人啊现在是什么模样
当初的愿望实现了吗
事到如今只好祭奠吗
任岁月风干理想再也找不回真的我
抬头仰望着满天星河
那时候陪伴我的那颗
这里的故事你是否还记得
生活像一把无情刻刀
改变了我们模样
未曾绽放就要枯萎吗
我有过梦想
青春如同奔流的江河
一去不回来不及道别
只剩下麻木的我没有了当年的热血
看那满天飘零的花朵
在最美丽的时刻凋谢
有谁会记得这世界它曾经来过
当初的愿望实现了吗
事到如今只好祭奠吗
任岁月风干理想再也找不回真的我
抬头仰望着满天星河
那时候陪伴我的那颗
这里的故事你是否还记得
如果有明天祝福你亲爱的
问佛:为什么总也遗憾?
佛曰:没有遗憾,无法体味幸福。
问佛:为什么下雪总在夜里?
佛曰:美好的东西总在不经意间流走。
是日高考,书“大同世界,焉能忘本?”,感慨系之,故作此文。后之览者,亦将有感于斯文。
阅读全文
佛曰:没有遗憾,无法体味幸福。
问佛:为什么下雪总在夜里?
佛曰:美好的东西总在不经意间流走。
是日高考,书“大同世界,焉能忘本?”,感慨系之,故作此文。后之览者,亦将有感于斯文。
阅读全文
2011年高考今天正式拉开帷幕,933万学子参加考试。11:30语文考试结束,2011全国各地高考作文题相继出炉。阅读全文
导出一台电脑里的IE收藏夹到另外一台后,发现乱码,只好重新修改了导出的文件编码,可刚才的网址已经导入了众多,如果一条条删除很费时,也很麻烦,于是需要清空的快捷方法,上网查了下,直接删除就行了:
C:\Documents and Settings\Administrator\Favorites
里面去删拉
C:\Documents and Settings\Administrator\Favorites
里面去删拉
NGINX_HTTP_Push_Module是一个Nginx服务器模块,可以实现服务器端的长连接和推送(但是推送一次后会结束进程,尚未实现持续的推送)。
NGINX_HTTP_Push_Module是一个Nginx服务器模块,可以实现服务器端的长连接和推送(但是推送一次后会结束进程,尚未实现持续的推送)。
http://pushmodule.slact.net可以下载该模块。
如果已安装Nginx,需要重新编译安装Nginx,要用命令"./configure --add-module=/home/hfahe/ngnix_http_push_module"来配置,然后执行make和make install来安装Nginx。
安装完成后,在Nginx配置文件的Server段里添加两个路径配置:
location /publish {
set $push_channel_id $arg_id;
push_publisher;
push_store_messages on;
push_message_timeout 2h;
push_max_message_buffer_length 10;
}
location /activity {
push_subscriber;
set $push_channel_id $arg_id;
push_subscriber_concurrency broadcast;
default_type text/plain;
}
重启Nginx后,请求http://localhost/activity?id=10000的地址,可以看到浏览器处于请求堵塞阶段。
阅读全文
NGINX_HTTP_Push_Module是一个Nginx服务器模块,可以实现服务器端的长连接和推送(但是推送一次后会结束进程,尚未实现持续的推送)。
http://pushmodule.slact.net可以下载该模块。
如果已安装Nginx,需要重新编译安装Nginx,要用命令"./configure --add-module=/home/hfahe/ngnix_http_push_module"来配置,然后执行make和make install来安装Nginx。
安装完成后,在Nginx配置文件的Server段里添加两个路径配置:
location /publish {
set $push_channel_id $arg_id;
push_publisher;
push_store_messages on;
push_message_timeout 2h;
push_max_message_buffer_length 10;
}
location /activity {
push_subscriber;
set $push_channel_id $arg_id;
push_subscriber_concurrency broadcast;
default_type text/plain;
}
重启Nginx后,请求http://localhost/activity?id=10000的地址,可以看到浏览器处于请求堵塞阶段。
阅读全文
安装mod_bw 和 mod_limitipconn 都非常简单。阅读全文
Apache模块开发/用C语言扩展apache(1:简述)
by linux_prog
Apache是一个非常稳定而且非常open的web server,它的很多功能都可以通过plugin的方式去扩展。
比如:mod_proxy使得apache可以作代理, mod_rewrite使得apache可以实现非常强大的url mapping和rewritting
功能,你是否也想自己来开发一个apache module呢?网上这方面的文章非常的少,而且全是E文,
希望我的这篇文章能够给你一些实质性的帮助。阅读全文
by linux_prog
Apache是一个非常稳定而且非常open的web server,它的很多功能都可以通过plugin的方式去扩展。
比如:mod_proxy使得apache可以作代理, mod_rewrite使得apache可以实现非常强大的url mapping和rewritting
功能,你是否也想自己来开发一个apache module呢?网上这方面的文章非常的少,而且全是E文,
希望我的这篇文章能够给你一些实质性的帮助。阅读全文
今年2月2日,国外媒体报道,Google Android平台在2010年第四季度超越nokia Symbian成为全球最大智能手机平台,结束了Symbian引领智能手机市场长达10多年的历史。就这样一款机器人,拯救了moto,巅峰了HTC。android是如何将智能手机市场霸主Symbian一步步拉下神坛,自己又是如何步步为营,转向坐上全球智能手机操作系统的王座,手段和策略值得深思!
android是一款基于Linux内核的操作系统,Google2005年收购android inc.之后,在原有操作系统的基础上采用软件叠层(software stack)的技术架构,分别为基础层,中间层,用户界面和应用层。android诞生之时正是Symbian大行其道之时,作为一款新兴的操作系统,是如何在寡头市场杀出一条血路,android主要祭出了四招,正可谓招招见血,刀刀到肉!阅读全文
android是一款基于Linux内核的操作系统,Google2005年收购android inc.之后,在原有操作系统的基础上采用软件叠层(software stack)的技术架构,分别为基础层,中间层,用户界面和应用层。android诞生之时正是Symbian大行其道之时,作为一款新兴的操作系统,是如何在寡头市场杀出一条血路,android主要祭出了四招,正可谓招招见血,刀刀到肉!阅读全文
在活动中,有一些功能被一直的访问想捞好处是很多人喜欢干的事,估计是用while(1){不段刷页面,IP不变,通过Apache日志看出来},用程序来实现获取兑换码,邀请好友等,还用多线程,给Apache服务器弄挂了,因为后台用的是直连Mysql,这样频繁是没法让Mysql消停的,这时就可以用这个插件了,其实也可以用Memcache来做到程序里,但我个人觉得这种应该是运维来做的事情,所以,我也想实践一下这个Apache插件的实际效果,乃至于编写Apache插件Etc,做了下测试发现这个mod_evasive20还真有必要给放上去,能避免一些用工具刷分的给把Apache以及后台DB给搞挂了:。
Apache的主要插件列表:
1)apache简单防DDOS攻击的配置,需要从网上找一个mod_evasive20模块一般情况下没有必要配置这玩意,但是活动确实有这样的问题压垮Apache,进而DB挂了。
2)apache防sql注入攻击的配置,需要安装mod_security模块。
加大apache最大连接数的配置,如果选择的是preworker工作方式。preworker和worker的区别就不讲了。apache2.0以上直接设置ServerLimit即可,apache2.0以前还要修改源代码才能使修改
的ServerLimit生效,建议应用服务器用apache2.0吧,性能差不了多少。
3)压缩传输的配置,这个做为网站来说非常重要,它是不压缩传输大小的20%左右,也就是说用户访问一个网站速度快了5倍,不配置不行,但是图片不能做压缩了。mod_deflate这个模块就是干这个的。实验证明,启用Apache的mod_deflate模块进行网页内容压缩,能够平均将网页大小降到原来的60%左右。尤其是对非图片、非多媒体为主的网站效果更加明显,http://yangsiwei.com/add-mod_deflate-module-to-apache2。
来源:http://www.youican.com/web/php/9035.html
相关配置参考DownLoad:
主要是先看配置文件的中文注释:
========================================================================
DOSHashTableSize 3097 这个是1G数量。
DOSPageCount 5 同一个时间同一个页面被访问的次数。对同一个用户
DOSSiteCount 100 同一个用户同时并发的连接数是100
DOSPageInterval 2
DOSSiteInterval 2 间隔时间
DOSBlockingPeriod 600 被封锁的时间是600秒
DOSLogDir "/var/log/mod_evasive" 日志文件的存放位置。
#DOSWhitelist 127.0.0.1
#DOSWhitelist 192.168.0.*这个就是白名单,这里的ip就不受上面的限制。
[root@102 ~]# touch /var/log/mod_evasive 这样就可以了。
========================================================================
我的实践情况,如下:
#wget http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
#tar zxvf mod_evasive_1.10.1.tar.gz
#cd mod_evasive
vi mod_evasive20.c
/*
#define DEFAULT_HASH_TBL_SIZE 3097ul // Default hash table size
#define DEFAULT_PAGE_COUNT 2 // Default maximum page hit count per interval
#define DEFAULT_SITE_COUNT 50 // Default maximum site hit count per interval
#define DEFAULT_PAGE_INTERVAL 1 // Default 1 Second page interval
#define DEFAULT_SITE_INTERVAL 1 // Default 1 Second site interval
#define DEFAULT_BLOCKING_PERIOD 10 // Default for Detected IPs; blocked for 10 seconds
#define DEFAULT_LOG_DIR "/tmp" // Default temp directory
*/
#define DEFAULT_HASH_TBL_SIZE 6195ul // Default hash table size
#define DEFAULT_PAGE_COUNT 2 // Default maximum page hit count per interval
#define DEFAULT_SITE_COUNT 50 // Default maximum site hit count per interval
#define DEFAULT_PAGE_INTERVAL 1 // Default 1 Second page interval
#define DEFAULT_SITE_INTERVAL 1 // Default 1 Second site interval
#define DEFAULT_BLOCKING_PERIOD 500 // Default for Detected IPs; blocked for 10 seconds
#define DEFAULT_LOG_DIR"/usr/local/apache2/logs" // Default temp directory
/usr/local/apache2/bin/apxs -i -c mod_evasive20.c
...
cp .libs/mod_evasive20.so /usr/local/apache2/modules/mod_evasive20.so
cp .libs/mod_evasive20.lai /usr/local/apache2/modules/mod_evasive20.la
cp .libs/mod_evasive20.a /usr/local/apache2/modules/mod_evasive20.a
ranlib /usr/local/apache2/modules/mod_evasive20.a
chmod 644 /usr/local/apache2/modules/mod_evasive20.a
PATH="$PATH:/sbin" ldconfig -n /usr/local/apache2/modules
----------------------------------------------------------------------
Libraries have been installed in:
/usr/local/apache2/modules
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
chmod 755 /usr/local/apache2/modules/mod_evasive20.so
注:apxs 用于编译模块工具;如果是用系统自带的软件包,一般位于/usr/sbin目录。如果您是自己编译安装Apache(httpd)的,你应该自己来指定路径;
安装完成之后会在/usr/local/apache2/conf/httpd.conf文件中,默认添加一行
<IfModule mod_ssl.c>
Include conf/ssl.conf
</IfModule>
vi /usr/local/apache2/conf/httpd.conf
LoadModule evasive20_module modules/mod_evasive20.so
<IfModule mod_evasive20.c>
DOSHashTableSize 6195
DOSSiteCount 50
DOSPageCount 2
DOSPageInterval 1
DOSSiteInterval 1
DOSSiteInterval 500
DOSLogDir "/usr/local/apache/logs"
#bai ming dang
DOSWhiteList 127.0.0.1
DOSWhiteList 127.0.0.*
</IfModule>
mkdir -p /usr/local/apache/logs //apache2 ,没有这个apache目录
D:\APMServ5.2.6\Apache\bin>ab.exe -n10000 -c1000 http://http://192.168.1.104/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking http: (be patient)
http://192.168.1.104/
效果果然成了:
Forbidden
You don't have permission to access / on this server.
Apache/2.0.59 (Unix) PHP/5.2.6 Server at 192.168.1.104 Port 80
而在这个机器上:
root@192.168.1.104:~ curl "http://192.168.1.104/"
...
<title>Test Page for Apache Installation</title>
...
依然正常,说明该模块生效。
发现,没有出现这个文件夹,估计是权限的问题,于是:
chmod -R 777 /usr/local/apache/logs/
再使用:
tail -f /usr/local/apache/logs/error_log中日志如下:
[Mon Jan 10 13:16:45 2011] [error] [client 192.168.1.94] client denied by server configuration: /usr/local/apache/htdocs/logo.png
root@192.168.1.104:~ /usr/local/apache/logs # ls
dos-192.168.1.101
本机测试:
root@192.168.1.104:~/usr/local/apache2/bin # ./ab -n10000 -c1000 http://192.168.1.104/
后再看这个页面的情况:
root@192.168.1.104:~/usr/local/apache2/bin # curl "http://192.168.1.104/"
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.</p>
<hr>
<address>Apache/2.0.59 (Unix) PHP/5.2.6 Server at 192.168.1.104 Port 80</address>
</body></html>
看日志,在服务器的 /usr/local/apache/logs/目录下会有
dos-192.168.1.94这样的文件生成[一般是dos加ip],果然有,如下:
ls /usr/local/apache/logs/
dos-192.168.1.101 dos-192.168.1.104
查看日志多了一个:
dos-192.168.1.104
再看:
tail -f /usr/local/apache2/logs/error_log中日志如下:【注意:是错误日志在apache2/Logs,在第在apache2中】
bogon:/usr/local/apache/logs # tail /usr/local/apache2/logs/error_log
[Tue Aug 23 07:00:26 2011] [error] [client 192.168.1.104] client denied by server configuration: /usr/local/apache2/htdocs/
[Tue Aug 23 07:00:26 2011] [error] [client 192.168.1.104] client denied by server configuration: /usr/local/apache2/htdocs/
。。。
========================================================================
以下是这位兄弟的,看自己的不明白再看他的罢,以下来源:
http://hi.baidu.com/suantop/blog/item/33f392a423bbbbe59152ee01.html
安装modsecurity(mod_security 可以加强apache的安全性特别是在防sql 注入上有很好的效果。):
# tar zxvf
modsecurity-apache-1.9.tar.gz
# cd modsecurity-apache-1.9/apache2/
# /apache2/bin/apxs -cia mod_security.c
打开httpd.conf加入
查看是否有
LoadModule security_module modules/mod_security.so
如没有则加上去
添加一段mod_security的配置文件
<IfModule mod_security.c>
SecFilterEngine On
SecFilterCheckURLEncoding
On
SecFilterDefaultAction "deny,log,status:500"
#SecFilterForceByteRange
32 126
#SecFilterScanPOST On
SecAuditLog
logs/audit_log
###
SecFilter "\.\./"
#####
SecFilter
/etc/*passwd
SecFilter /bin/*sh
#for css attack
SecFilter "<( |
)*script"
SecFilter "<(.| )+>"
#for sql attack
SecFilter "delete[
]+from"
SecFilter "insert[ ]+into"
SecFilter "select.+from"
SecFilter
"union[ ]+from"
SecFilter "drop[ ]"
</IfModule>
来源:http://www.dzhope.com/post/752/
阅读全文
Apache的主要插件列表:
1)apache简单防DDOS攻击的配置,需要从网上找一个mod_evasive20模块一般情况下没有必要配置这玩意,但是活动确实有这样的问题压垮Apache,进而DB挂了。
2)apache防sql注入攻击的配置,需要安装mod_security模块。
加大apache最大连接数的配置,如果选择的是preworker工作方式。preworker和worker的区别就不讲了。apache2.0以上直接设置ServerLimit即可,apache2.0以前还要修改源代码才能使修改
的ServerLimit生效,建议应用服务器用apache2.0吧,性能差不了多少。
3)压缩传输的配置,这个做为网站来说非常重要,它是不压缩传输大小的20%左右,也就是说用户访问一个网站速度快了5倍,不配置不行,但是图片不能做压缩了。mod_deflate这个模块就是干这个的。实验证明,启用Apache的mod_deflate模块进行网页内容压缩,能够平均将网页大小降到原来的60%左右。尤其是对非图片、非多媒体为主的网站效果更加明显,http://yangsiwei.com/add-mod_deflate-module-to-apache2。
来源:http://www.youican.com/web/php/9035.html
相关配置参考DownLoad:
下载文件
主要是先看配置文件的中文注释:
========================================================================
DOSHashTableSize 3097 这个是1G数量。
DOSPageCount 5 同一个时间同一个页面被访问的次数。对同一个用户
DOSSiteCount 100 同一个用户同时并发的连接数是100
DOSPageInterval 2
DOSSiteInterval 2 间隔时间
DOSBlockingPeriod 600 被封锁的时间是600秒
DOSLogDir "/var/log/mod_evasive" 日志文件的存放位置。
#DOSWhitelist 127.0.0.1
#DOSWhitelist 192.168.0.*这个就是白名单,这里的ip就不受上面的限制。
[root@102 ~]# touch /var/log/mod_evasive 这样就可以了。
========================================================================
我的实践情况,如下:
#wget http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
#tar zxvf mod_evasive_1.10.1.tar.gz
#cd mod_evasive
vi mod_evasive20.c
/*
#define DEFAULT_HASH_TBL_SIZE 3097ul // Default hash table size
#define DEFAULT_PAGE_COUNT 2 // Default maximum page hit count per interval
#define DEFAULT_SITE_COUNT 50 // Default maximum site hit count per interval
#define DEFAULT_PAGE_INTERVAL 1 // Default 1 Second page interval
#define DEFAULT_SITE_INTERVAL 1 // Default 1 Second site interval
#define DEFAULT_BLOCKING_PERIOD 10 // Default for Detected IPs; blocked for 10 seconds
#define DEFAULT_LOG_DIR "/tmp" // Default temp directory
*/
#define DEFAULT_HASH_TBL_SIZE 6195ul // Default hash table size
#define DEFAULT_PAGE_COUNT 2 // Default maximum page hit count per interval
#define DEFAULT_SITE_COUNT 50 // Default maximum site hit count per interval
#define DEFAULT_PAGE_INTERVAL 1 // Default 1 Second page interval
#define DEFAULT_SITE_INTERVAL 1 // Default 1 Second site interval
#define DEFAULT_BLOCKING_PERIOD 500 // Default for Detected IPs; blocked for 10 seconds
#define DEFAULT_LOG_DIR"/usr/local/apache2/logs" // Default temp directory
/usr/local/apache2/bin/apxs -i -c mod_evasive20.c
...
cp .libs/mod_evasive20.so /usr/local/apache2/modules/mod_evasive20.so
cp .libs/mod_evasive20.lai /usr/local/apache2/modules/mod_evasive20.la
cp .libs/mod_evasive20.a /usr/local/apache2/modules/mod_evasive20.a
ranlib /usr/local/apache2/modules/mod_evasive20.a
chmod 644 /usr/local/apache2/modules/mod_evasive20.a
PATH="$PATH:/sbin" ldconfig -n /usr/local/apache2/modules
----------------------------------------------------------------------
Libraries have been installed in:
/usr/local/apache2/modules
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
chmod 755 /usr/local/apache2/modules/mod_evasive20.so
注:apxs 用于编译模块工具;如果是用系统自带的软件包,一般位于/usr/sbin目录。如果您是自己编译安装Apache(httpd)的,你应该自己来指定路径;
安装完成之后会在/usr/local/apache2/conf/httpd.conf文件中,默认添加一行
<IfModule mod_ssl.c>
Include conf/ssl.conf
</IfModule>
vi /usr/local/apache2/conf/httpd.conf
LoadModule evasive20_module modules/mod_evasive20.so
<IfModule mod_evasive20.c>
DOSHashTableSize 6195
DOSSiteCount 50
DOSPageCount 2
DOSPageInterval 1
DOSSiteInterval 1
DOSSiteInterval 500
DOSLogDir "/usr/local/apache/logs"
#bai ming dang
DOSWhiteList 127.0.0.1
DOSWhiteList 127.0.0.*
</IfModule>
mkdir -p /usr/local/apache/logs //apache2 ,没有这个apache目录
D:\APMServ5.2.6\Apache\bin>ab.exe -n10000 -c1000 http://http://192.168.1.104/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking http: (be patient)
http://192.168.1.104/
效果果然成了:
Forbidden
You don't have permission to access / on this server.
Apache/2.0.59 (Unix) PHP/5.2.6 Server at 192.168.1.104 Port 80
而在这个机器上:
root@192.168.1.104:~ curl "http://192.168.1.104/"
...
<title>Test Page for Apache Installation</title>
...
依然正常,说明该模块生效。
发现,没有出现这个文件夹,估计是权限的问题,于是:
chmod -R 777 /usr/local/apache/logs/
再使用:
tail -f /usr/local/apache/logs/error_log中日志如下:
[Mon Jan 10 13:16:45 2011] [error] [client 192.168.1.94] client denied by server configuration: /usr/local/apache/htdocs/logo.png
root@192.168.1.104:~ /usr/local/apache/logs # ls
dos-192.168.1.101
本机测试:
root@192.168.1.104:~/usr/local/apache2/bin # ./ab -n10000 -c1000 http://192.168.1.104/
后再看这个页面的情况:
root@192.168.1.104:~/usr/local/apache2/bin # curl "http://192.168.1.104/"
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.</p>
<hr>
<address>Apache/2.0.59 (Unix) PHP/5.2.6 Server at 192.168.1.104 Port 80</address>
</body></html>
看日志,在服务器的 /usr/local/apache/logs/目录下会有
dos-192.168.1.94这样的文件生成[一般是dos加ip],果然有,如下:
ls /usr/local/apache/logs/
dos-192.168.1.101 dos-192.168.1.104
查看日志多了一个:
dos-192.168.1.104
再看:
tail -f /usr/local/apache2/logs/error_log中日志如下:【注意:是错误日志在apache2/Logs,在第在apache2中】
bogon:/usr/local/apache/logs # tail /usr/local/apache2/logs/error_log
[Tue Aug 23 07:00:26 2011] [error] [client 192.168.1.104] client denied by server configuration: /usr/local/apache2/htdocs/
[Tue Aug 23 07:00:26 2011] [error] [client 192.168.1.104] client denied by server configuration: /usr/local/apache2/htdocs/
。。。
========================================================================
以下是这位兄弟的,看自己的不明白再看他的罢,以下来源:
http://hi.baidu.com/suantop/blog/item/33f392a423bbbbe59152ee01.html
安装modsecurity(mod_security 可以加强apache的安全性特别是在防sql 注入上有很好的效果。):
# tar zxvf
modsecurity-apache-1.9.tar.gz
# cd modsecurity-apache-1.9/apache2/
# /apache2/bin/apxs -cia mod_security.c
打开httpd.conf加入
查看是否有
LoadModule security_module modules/mod_security.so
如没有则加上去
添加一段mod_security的配置文件
<IfModule mod_security.c>
SecFilterEngine On
SecFilterCheckURLEncoding
On
SecFilterDefaultAction "deny,log,status:500"
#SecFilterForceByteRange
32 126
#SecFilterScanPOST On
SecAuditLog
logs/audit_log
###
SecFilter "\.\./"
#####
SecFilter
/etc/*passwd
SecFilter /bin/*sh
#for css attack
SecFilter "<( |
)*script"
SecFilter "<(.| )+>"
#for sql attack
SecFilter "delete[
]+from"
SecFilter "insert[ ]+into"
SecFilter "select.+from"
SecFilter
"union[ ]+from"
SecFilter "drop[ ]"
</IfModule>
来源:http://www.dzhope.com/post/752/
阅读全文
在Android系统中,自带的闹钟软件自能设定自己默认的铃声作为提示音。要添加自己的铃声,使用闹钟软件是一个方法。但是物尽所用,能用自身软件解决就用自身软件则好。
其实很简单,在SD卡中建立media\audio\ringtones,notifications,alarms三个文件夹就可以添加自己的铃声了。这三个文件夹“ringtones”对应手机铃声;“notification”对应消息提示音(短信铃声);“alarms”即为闹钟铃声。而在这其中的音乐文件不会在播放器中搜索到。
试试吧。
其实很简单,在SD卡中建立media\audio\ringtones,notifications,alarms三个文件夹就可以添加自己的铃声了。这三个文件夹“ringtones”对应手机铃声;“notification”对应消息提示音(短信铃声);“alarms”即为闹钟铃声。而在这其中的音乐文件不会在播放器中搜索到。
试试吧。