如何阻止滥用垃圾邮件/黑客与mod_defensible在Apache2(Debian Etch)
版本1.0
作者:Falko Timme
mod_defensible是一个Apache 2.x模块,旨在使用DNSBL服务器来阻止垃圾邮件发送者/黑客/脚本小孩。 它将查看客户端IP并在一个或多个DNSBL服务器中检查,并将403禁止页面返回给客户端。 本指南介绍如何在Debian Etch服务器上安装和使用Apache 2。
我不会保证这将为您工作!
1安装Apache2和mod_defensible
不幸的是, libapache2-mod-defensible
作为Debian软件包仅适用于Debian Lenny(测试)和Sid(unstable),但不适用于Etch。 因此,我们将从Lenny安装libapache2-mod防御
软件包。 为此,打开/etc/apt/sources.list
并添加行deb http://ftp2.de.debian.org/debian/ lenny main
; 您的/etc/apt/sources.list
可能看起来像这样:
vi /etc/apt/sources.list
deb http://ftp2.de.debian.org/debian/ etch main deb-src http://ftp2.de.debian.org/debian/ etch main deb http://ftp2.de.debian.org/debian/ lenny main deb http://security.debian.org/ etch/updates main contrib deb-src http://security.debian.org/ etch/updates main contrib |
当然(为了不弄乱我们的系统),如果Etch没有适当的软件包,我们希望从Lenny安装软件包 - 如果有Etch和Lenny的软件包,我们要安装Etch软件包。 为了做到这一点,我们在Etch中给/ etc / apt / preferences中
优先级较高的软件包:
vi /etc/apt/preferences
Package: * Pin: release a=etch Pin-Priority: 700 Package: * Pin: release a=lenny Pin-Priority: 650 |
(术语etch
和lenny
参考/etc/apt/sources.list中的适当术语;如果您在那里使用稳定
和测试
,则必须在/ etc / apt / preferences
中使用稳定
和测试,
而不是使用etch
和lenny
好。)
之后,我们更新我们的包数据库:
apt-get update
如果您收到以下错误:
Segmentation faultsts... 96%
或这一个:
E: Dynamic MMap ran out of room
打开/etc/apt/apt.conf
并为APT :: Cache-Limit
添加一行非常高的值,例如:
vi /etc/apt/apt.conf
APT::Cache-Limit "100000000"; |
然后跑
apt-get update
再次升级安装的软件包:
apt-get upgrade
(如果您看到任何问题,您可以接受默认值。)
要使用mod_defensible安装Apache2,我们运行:
apt-get install apache2 libapache2-mod-defensible libudns0
之后,启用mod_defensible:
a2enmod defensible
重新加载Apache:
/etc/init.d/apache2 force-reload
2配置mod_defensible
打开/etc/apache2/apache2.conf
并转到配置虚拟主机的末尾,并将mod_defensible配置放在虚拟主机之前:
vi /etc/apache2/apache2.conf
[...] # Include generic snippets of statements Include /etc/apache2/conf.d/ DnsblUse On DnsblServers httpbl.abuse.ch sbl-xbl.spamhaus.org DnsblNameserver 145.253.2.75 # Include the virtual host configurations: Include /etc/apache2/sites-enabled/ |
DnsblUse On
启用mod_defensible; DnsblServers
行列出您要使用的黑名单(例如httpbl.abuse.ch
和sbl-xbl.spamhaus.org
), DnsblNameserver
行定义了mod_defensible将用于查找主机的DNS服务器(我发现Apache永远是如果不指定DnsblNameserver
行,则可以提供页面)。
之后重新启动Apache:
/etc/init.d/apache2 restart
而已。 如果黑名单的IP地址尝试访问您的Web服务器,则会收到HTTP错误403。
3链接
- Apache: http : //httpd.apache.org
- Debian: http : //www.debian.org
- mod_defensible: http : //julien.danjou.info/mod_defensible.html