在Centos 上Xtables-Addons 和Iptables GeoIP 6及过滤实现和安装

这篇文章将讲述怎样安装iptable 在内核的的使用,Xtables-addons 是 patch-o-matic(-ng).的继承, 同样他也延续了接受了iptable的安装包。Xtables-addons不同于patch-o-matic,但不需要补丁和编译安装。

一个列表里可用的模块点here这里和它们的使用here这里.

1 初步:

在我们开始前,确保SELinux被禁用:

 

接着编辑 /etc/selinux/config

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted
使SELinux失效:

 

4 编辑 xtables-addons

xtables-addons源和unarchive得到

wget http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons/1.37/xtables-addons-1.37.tar.xz

tar xvf xtables-addons-1.37.tar.xz

编写模块:

xtables- -addons- cd / 1.37

您可以编辑“mconfig "文件选择什么是模块创建和安装。enabled.默认情况下,使所有模块。

 

./configure

make && make install

5 设置建立geoip 模块

创建geoip数据文件,和iptable 的匹配:

cd geoip/

使用脚本形式  下载和编译文件夹MaxMind GeoIPCountrydatabase:数据库

./xt_geoip_dl

./xt_geoip_build GeoIPCountryWhois.csv

把文件移动到系统默认位置:

mkdir -p /usr/share/xt_geoip/

cp -r {BE,LE} /usr/share/xt_geoip/

测试是这样的:

iptables -I INPUT -m geoip --src-cc CN -j DROP

6 连接:

Xtables-addons:http://xtables-addons.sourceforge.net/

Xtables-addons modules:Xtables-addons:http://xtables-addons.sourceforge.net/modules.php

Xtables-addons man page:Xtables-addons:http://dev.medozas.de/files/xtables/xtables-addons.8.html

MaxMind GeoIP:MaxMind GeoIP:http://geolite.maxmind.com/download/geoip/database

CentOS:CentOS:http://www.centos.org/http://www.centos.org/


 

echo 0 > /selinux/enforce

... for the change to take effect

2 配置支持:

* iptables >= 1.4.3

* kernel-source >= 2.6.29

For ipset-6 you need:

* libmnl

* Linux kernel >= 2.6.35

3 安装包:

注意:你会需要同样的版本的kernel-devel软件包,因为安装包必须和内核保持一致。

uname -r

2.6.32-71.el6.i686

yum install gcc gcc-c++ make automake unzip zip xz kernel-devel-`uname -r` iptables-devel

在这种情况下 kernel-devel-2.6.32-71.el6.i686kernel- -devel- -el6.i686 -2.6.32- 71.

安装rpmforge repo包:perl-Text-CSV_XS package:

rpm -i http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm

yum install perl-Text-CSV_XS

system-config-securitylevelsystem-config-securitylevel