iptables的编译

运维 系统运维
iptables的编译:为了运行iptables,需要在内核配置期间,选择一些选项,无论用什么命令。本文讲述的是iptables的编译

  iptables编译

  首先要解压iptables包。这里,我用iptables 1.2.6a做例子(译者注:在我翻译时,***版本已经是 1.2.9,其中又有了不少改进,修补了一些bug,增添了几个match和target。)。命令 bzip2 -cd iptables-1.2.6a.tar.bz2 | tar -xvf -(当然也可以用tar -xjvf iptables-1.2.6a.tar.bz2,但这个命令可能对一些老版的tar不适用 ) 将压缩包解压至目录iptables-1.2.6a,其中的INSTALL文件有很多对编译、运行有用的信息。

  这一步,你将配置、安装一些额外的模块,也可以为内核增加一些选项。我们这里只是检查、安装一些未被纳入内核的标准的补丁。当然,更多的在实验阶段的补丁,仅在进行其他某些操作时才会用到。

   有一些补丁仅仅处在实验阶段,把它们也安装上不是一个好主意。这一步,你会遇到很多十分有趣的匹配和对数据包的操作,但它们还正在实验。

 

  为了完成这一步,我们要在iptables的目录内用到如下一些命令:

  1.   make pending-patches KERNEL_DIR=/usr/src/linux/  
  2.  

  变量KERNEL_DIR指向内核原码的真实路径。一般情况下,都是/usr/src/linux/ ,但也会不一样,这要看你所用的Linux产品了。

   总之,只有某些补丁会被询问是否加入内核,而Netfilter的开发者们有大量的补丁或附件想要加入内核,但还要再实验一阵子才能做到。如果你想安装这些东西,就用下面的命令:

 

  1.   make most-of-pom KERNEL_DIR=/usr/src/linux/  
  2.  

  这个命令会安装部分patch-o-matic(netfilter世界对补丁的称呼),忽略掉的是非常极端的那一部分,它们可能会对内核造成严重的破坏。你要知道这个命令的作用,要了解它们对内核原码的影响,好在在你选用之前,会有所提示。下面的命令可以安装所有的patch-o-matic(译者注:一定要小心哦)。

  1.   make patch-o-matic KERNEL_DIR=/usr/src/linux/  
  2.  

  要仔细的读读每一个补丁的帮助文件,因为有些patch-o-matic会损坏内核,而有些对其他补丁有破坏作用。

   你要是不打算用patch-o-matic修补内核,以上的命令都用不着,它们不是必需的。不过,你可以用这些命令来看看有什么有趣的玩意儿,这不会影响任何东西。

 

  安装好patch-o-matic,现在应该重新编译内核了,因为其中增加了一些补丁。但别忘了重新配置内核,现有的配置文件里可没有你增加的补丁的信息。当然,你也可以先编译iptables , 再来编译内核。

  接下来就该编译iptables了,用下面这个简单的命令:

  1.   make KERNEL_DIR=/usr/src/linux/  
  2.  

  iptables应该编译好了,如果不行,好好考虑考虑问题在哪儿,要么订阅 Netfilter mailing list,那里可能有人能帮助你。

  一切顺利的话,我们该安装iptables了,这几乎不会有什么问题的。我们用下面的命令来完成这一步:

  1.   make install KERNEL_DIR=/usr/src/linux/  
  2.  

  好啦。现在大功告成了。如果你在前面没有重新编译、安装内核,现在就要做了,不然,你还是不能使用更新后的iptables。好好看看推荐的INSTALL吧,那里面有详细的安装信息。

【编辑推荐】

iptables内核配置

Iptables相关命令说明

Iptables相关命令

责任编辑:zhaolei 来源: lupaworld
相关推荐

2011-03-14 13:51:00

iptables编译

2011-03-16 11:39:03

2011-03-18 09:26:13

Iptables规则

2011-03-16 11:17:56

IptablesICMP

2011-03-16 11:12:06

Iptables

2011-03-18 08:52:23

Iptables

2011-03-16 14:38:55

iptables命令

2011-03-16 14:55:36

关闭iptables

2011-03-15 09:59:54

2011-03-14 15:17:40

iptables设定

2011-03-15 09:59:54

2011-03-16 09:30:47

iptables过滤

2011-03-15 15:47:30

netfilteriptables安装

2011-08-22 10:52:30

iptables状态

2011-03-16 15:23:39

UBUNTU关闭iptables

2011-03-17 17:19:24

iptables

2011-03-15 09:10:45

2011-03-16 11:15:12

2011-03-15 09:59:59

iptables实例

2011-03-14 15:46:35

Iptables语法
点赞
收藏

51CTO技术栈公众号