Chinaunix首页 | 论坛 | 博客
  • 博客访问: 610389
  • 博文数量: 132
  • 博客积分: 6010
  • 博客等级: 准将
  • 技术积分: 1520
  • 用 户 组: 普通用户
  • 注册时间: 2005-03-13 17:00
文章分类

全部博文(132)

文章存档

2017年(1)

2014年(1)

2011年(1)

2009年(1)

2008年(3)

2007年(1)

2006年(1)

2005年(123)

我的朋友

分类: LINUX

2005-03-15 12:05:50

iptables扩展功能的增加,及安装使用方法

[原创]iptables扩展功能的增加
作者:无花果 发表于:2003-05-28 13:56:48

iptables有许多很有实际用途的功能是未被现在的内核支持的,其中我最感兴趣的就是iplimit,可以用来限定同一IP(或同一段IP)同时连接服务器(或某端口)的数目。

经过许多天的试验,终于搞定。

服务器环境:redhat7.2

1. 从下载并安装最新的内核源码

kenrel-source-2.4.20-13.7-i386.rpm。
rpm -Uvh kenrel-source-2.4.20-13.7-i386.rpm

2. 进入/usr/include目录,执行以下操作:
mv asm asm_old
mv linux linux_old
mv scsi scsi_old
ln -s /usr/src/linux-2.4/include/asm ./asm
ln -s /usr/src/linux-2.4/include/linux ./linux
ln -s /usr/src/linux-2.4/include/scsi ./scsi

3. 从下载patch-o-matic-20030107.tar.tar并解压到

/usr/local/patch-o-matic-20030107,执行以下操作:
export KERNEL_DIR="/usr/src/linux-2.4"
./runme extra
按提示只需要安装自己想要的那些扩展功能补丁,我就只选择了iplimit。

4. 返回/usr/src/linux-2.4,执行make mrproper,然后用make menuconfig设置内核选项,依次进入"Networking options"->"IP: Netfilter Configuration",选择您刚才加入的扩展功能,在这里我只要把iplimit选定成M模式就可以了。然后:
make dep
make bzImage
make install
make modules
make modules_install
最后再用新内核重启系统。
5. 到下载最新的iptables源代码包,解压到

/usr/local/iptables-1.2.8,执行以下操作:
make KERNLE_DIR="/usr/src/linux-2.4"
make install KERNLE_DIR="/usr/src/linux-2.4"
make install-devel

安装完成,现在您可以输入命令检查一下你要的功能是否已经可以使用了:
iptables -A INPUT -p tcp --dport 22 --syn -m iplimit --iplimit-above 3 -j REJECT
这样,从同一个IP到服务器的SSH的连接就只不能超过3个了。 这个功能如果应用在网站上限制某些人下载网站内容是很有帮助的,比apache加载连接数限制模块的方法有效得多。

(注意:我在安装时是先下载的相应内核的rpm安装之后再进行源码包安装的,因为在安装新内核的过程中可能需要其它的支持包需要安装,利用rpm的依赖性检查将这些软件显示出来并安装,可能会减少直接用源码编译安装遇到的问题,纯属个人意见。)

阅读(1088) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~