shitou's blog 
Home About Feed | 十人族 MIX BOY 塌客

Tags "apache"

24
Feb

Apache Cassandra NoSQL Database by shitou

0

NoSQL Database越来越多了,也映射出了Web2.0在数据存储上的特点,数据量大,结构简单。之前有介绍过CouchDB, 这次是Cassandra, Cassandra已经成为Apache的顶级项目(貌似现在Apache下的项目越来越多了..),Cassandra不是简单的key/value存储,支持Hash的数据结构, 如:

 

Keyspace1.Standard1['jsmith']['first'] = 'John'

       \            \         \        \          \

        \            \         \_ key   \          \_ value

         \            \                  \_ column

          \_ keyspace  \_ column family

 

在存储数据形式方面更有利于把当前的关系数据库进行迁移.

 

架构上Cassandra支持分布式,容错,写同步等,官方说Rackspace, Digg, Facebook, Twitter, Cisco, Mahalo, Ooyala都在使用Cassandra

 

个人认为这种NoSQL数据库发展还是非常不错的.

 

链接

http://blog.evanweaver.com/articles/2009/07/06/up-and-running-with-cassandra/

 

Tags: apache

2010-02-24 10:26:37, 642 reviews

send to mailbox

Your email:

17
Feb

Apache同一域名不同端口的虚拟主机设置 by shitou

0

首先要开启模块mod_proxy, httpd.conf:

Listen 80

Listen 81

NameVirtualHost *:80

<VirtualHost *:80>

  ServerName b.com

  DocumentRoot /b.com

</VirtualHost>


NameVirtualHost *:81

<VirtualHost *:81>

  ServerName b.com

  DocumentRoot /b2.com

</VirtualHost>

 

 

Tags: apache

2009-02-17 17:35:40, 883 reviews

send to mailbox

Your email:

24
Jun

【转载】关于Apache (httpd)服务器防DDOS模块mod_evasive的使用说明 by shitou

0

作者:北南南北
来自:LinuxSir.Org
摘要:在服务器管理中,经常遇到DDOS攻击WWW服务器。对于Apache(httpd)服务器来说,防御DDOS是通过mod_evasive来实现的。本文将介绍mod_evasive模块的安装、配置;


目录


  •  

      2.1  mod_evasive 的下载地址;
      2.2  mod_evasive 的安装;
      2.3  mod_evasive 的配置;
      2.4  对mod_evasive测试验证 ;

  • 1、 mod_evasive 介绍;
    2、 mod_evasive 的安装和配置;
    3、mod_evasive 的高级配置;
    4、关于本文;
    5、参考文档;
    6、相关文档;





+++++++++++++++++++++++++++++++++++++++++++
正文
+++++++++++++++++++++++++++++++++++++++++++


1、 mod_evasive 介绍;

mod_evasive 是Apache(httpd)服务器的防DDOS的一个模块。对于WEB服务器来说,是目前比较好的一个防护DDOS攻击的扩展模块。虽然并不能完全防御 DDOS攻击,但在一定条件下,还是起到缓服Apache(httpd)服务器的压力。如果配合iptables、硬件防火墙等防火墙设备配合使用,可能 有更好的效果。可惜LinuxSir.Org 并没有硬件防火墙,所以是否这种组合效果有更好的效果,我没办法验证。

mod_evasive 的官方地址: http://www.zdziarski.com/projects/mod_evasive


2、 mod_evasive 的安装和配置;


2.1  mod_evasive 的下载地址;

mod_evasive_1.10.1.tar.gz


2.2  mod_evasive 的安装;

安装 mod_evasive 之前,你要用安装Apache(httpd)服务器软件包,还要安装httpd-devel或 apache-dev。在Slackware 12.0中,安装httpd软件即可;

对于Apache 1.x 请用下面的编译方法;

#/usr/sbin/apxs -iac mod_evasive.c

对于Apache 2.x 可以用下面的办法;

#tar zxvf mod_evasive_1.10.1.tar.gz
#cd mod_evasive
#/usr/sbin/apxs -i -a -c mod_evasive20.c

注:apxs 用于编译模块工具;如果是用系统自带的软件包,一般位于/usr/sbin目录。如果您是自己编译安装Apache(httpd)的,你应该自己来指定路径;

我 们然后修改/etc/ld.so.conf 文件,把编译出来的动态模块的所在位置指定在 ld.so.conf中;比如我用的是Aapche 2.x ,编译完成后,模块mod_evasive20.so 安装到了 /usr/lib/httpd/modules 目录中;那我们就要把 这个目录写入到ld.so.conf中。

#echo "/usr/lib/httpd/modules" >> /etc/ld.so.conf
#ldconfig

注: 具体要与你的系统环境为准,不要照搬照抄,如果你对Linux不太熟的话;


2.3  mod_evasive 的配置;

在编译安装完成后,会自动插入一行到Apache 配置文件中,对于Apache 2.x 版本中,应该在其配置文件中有类似下面的一行;

LoadModule evasive20_module   lib/httpd/modules/mod_evasive20.so

对于Apache 1.x来说,也应该差不多,大体只是路径不同罢了;

然后我们再修改 Apache 的配置文件,配置文件名为httpd.conf;

在Apache v1.x 版本中,要加入;

<IfModule mod_evasive.c>
    DOSHashTableSize    3097
    DOSPageCount        2
    DOSSiteCount        50
    DOSPageInterval     1
    DOSSiteInterval     1
    DOSBlockingPeriod   10
</IfModule>

在Apache v2.x加入;

<IfModule mod_evasive20.c>
    DOSHashTableSize    3097
    DOSPageCount        2
    DOSSiteCount        50
    DOSPageInterval     1
    DOSSiteInterval     1
    DOSBlockingPeriod   10
</IfModule>

如果您不知道把这些插入到哪,用下面的办法做也是可以的;

在/etc目录中创建一个文件,比如mod_evasive.conf;

#touch /etc/mod_evasive.conf

然后把根据自己的Apache版本来加入相应的内容;

接着我们再修改 httpd.conf ,在最后一行加入

Include /etc/mod_evasive.conf

修改完成后,我们要重启Apache服务器;

比如在Slackware 12.0中,Apache 2.x的重启,我们要用到

#/etc/rc.d/rc.httpd restart

在Redhat、Fededora、Debian、Ubuntu、CentOS中的Apache,可以用;

#/etc/init.d/httpd restart
或
#/etc/init.d/apache restart

大体上差不多是这样的……


2.4  对mod_evasive测试验证 ;

防DDOS的模块做好后,我们可以要验证,可以用Apache 自带的ab工具,系统默认安装在/usr/sbin目录中;比如;

#/usr/sbin/ab -n 1000 -c 50 http://www.google.com:80/

注:上面的例子的意思是,如果您的服务器是google的WEB服务器,我们要发送数据请求包,总共1000个,每次并发50个;

另外一个测试工具就是mod_evasive的解压包的目录中,有个test.pl ,你可以修改IP地址,然后用

#perl test.pl

是不是有效果,请根据 ab工具或 测试脚本出来的结果来查看;

因为我们编译mod_evasive时,用的是默认配置,所以日志被存放在/tmp目录中。如果有DDOS攻击,会在/tmp产生日志。日志的文件是以 dos-开头的;


3、mod_evasive 的高级配置;

如果想更改一些适合自己的参数,有些必要的参数,并不是通过配置文件修改就一下起作用的,我们要修改源码包中的   mod_evasive.c(Apache 1.x用之) 或 mod_evasive20.c  (Apache 2.x用之);

#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

比如我们改改其中的数字,根据英文很容易理解。比如修改日志存放目录,就把/tmp改成别的目录。如果您不知道放在哪好,还是用默认的吧;

如果您在这里更改了参数,不要忘记修改Apache 配置文件中关于mod_evasive 的参数;

如果您想加入一些其它的参数,请查阅源码包中的README,里面有详细说明,大多来说没太大的必要……

这个文件相当重要,如果您想更改某些设置,就要修改这个文件……


4、关于本文;

mod_evasive 还是有点用的,安装也不费力气。如果你需要的时候,会想到这个模块的 …… mod_evasive 是否有更高级的用法,也不是在这篇文章里能说的清楚的。如果不懂怎么办?请查看源码包中的README。

本文权当做软件说明 ……  

北南 记之

From LinuxSir.Org


5、参考文档;

参考 mod_evasive 源码包中的README ……

Tags: webserver,apache,模块

2008-06-24 00:37:11, 508 reviews

send to mailbox

Your email:

Tags

tenerer MooseFS gearman-ruby Gearman MongoDB MochiChat TCP U-ka saegusa IN db command Mai Kuraki Norah Jones log iPhoneException ACG Mac Safari objective-c CouchDB LVS AJAX debian 推荐 AMQP google mail bug gettext Erlang 北京 iptables 架构 tips mysql backup function 我看 postfix 监控 SEO cache Etag memcache thread 进程 线程 无锡 yield file column mixboy xml rss gems ruby shitou shell lighttpd 安全 csrf 公司 nginx linux 模块 apache webserver 朋友 大学 生活 尼古拉斯凯奇 movie 文件同步 笑笑 歌词 auto complete plugin rails music ubuntu blog

Category

  • iPhone[17]
  • Erlang[8]
  • google[9]
  • 生活[41]
  • 音乐[11]
  • 电影[11]
  • linux[24]
  • web server[6]
  • mail server[3]
  • cluster[1]
  • system manage[8]
  • ruby[18]
  • ruby on rails[27]
  • 开源[3]

Episode

  • MochiChat
  • iPhoneException
  • shell
  • thread
  • memcache

Recent Comments

  • cancer planeta famosas, minal http://zewero.cen...
  • moskowitz mofos, bedroom http://biiili.centerbl...
  • exploit 3pic, julien http://zewero.centerblog.n...
  • Thanks funny site jp imageboard bbs pthc cp :...
  • essence vidz, escalation http://liili.centerblo...
  • arab black singles, sleepwalking http://biiili....
  • Hello good day freeforum.tw pthc 557 valya pt...
  • upenn hand job, sanglah http://liili.centerblog...
  • Thanks funny site ukrainian nymphet rfd nymph...
  • Jonny was here nymphets land ckw topless nymp...

Popular Posts

  • 准备开始学习Erlang了(恶狼, 二郎..)
  • MySQL Innodb备份
  • Lighttpd配置参数
  • iPhone上的HelloWorld终于跑起来了
  • Etag和Expire

Recommended Posts

  • 再次被和谐-_-
  • 十人族: 上线了
  • MooseFS vs. NFS
  • Mochichat新版本上线
  • Gearman
  • MongoDB入门
  • find使用非业余研究
  • MochiChat: 一个基于erlang的web聊天室(beta)
  • /dev/shm和swap的区别
  • gen_tcp的packet参数
  • Beauty - Mai Kuraki
  • awk多维数组
  • We Lost Google.cn
  • Erlang TCP Server例子
  • Mai Kuraki -永远より ながく

Friends' blogs

  • levy
  • sphance
  • andreas

Login

   注册

留言 查看留言

留言

   取消

留言 查看留言


Statistics

  • 访问次数: 87198
  • 今天访问: 16
  • 日志: 187
  • 评论: 167
  • 音乐: 9
  • 用户: 485


 

just DO NOT support IE

close