手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

[转]Iptables 指南 1.1.19

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

CONFIG_IP_NF_COMPAT_IPCHAINS - ipchains 的,这只是为内核从2.2转换到2.4而使用的,他会在2.6中删除。

CONFIG_IP_NF_COMPAT_IPFWADM - 同上,这只是 ipfwadm的暂时使用的兼容模式。

上面,我简要介绍了很多选项,但这只是内核2.4.9中的。要想看看更多的选项,建议您去Netfilter 看看patch-o-matic。在那里,有其他的一些选项。POM可能会被加到内核里,当然现在还没有。这有很多原因,比如,还不稳定,Linus Torvalds没打算或没坚持要把这些补丁放入主流的内核,因为他们还在实验。

把以下选项编译进内核或编译成模块,rc.firewall.txt才能使用。

  • CONFIG_PACKET

  • CONFIG_NETFILTER

  • CONFIG_IP_NF_CONNTRACK

  • CONFIG_IP_NF_FTP

  • CONFIG_IP_NF_IRC

  • CONFIG_IP_NF_IPTABLES

  • CONFIG_IP_NF_FILTER

  • CONFIG_IP_NF_NAT

  • CONFIG_IP_NF_MATCH_STATE

  • CONFIG_IP_NF_TARGET_LOG

  • CONFIG_IP_NF_MATCH_LIMIT

  • CONFIG_IP_NF_TARGET_MASQUERADE

以上是为确保 rc.firewall.txt正常工作而需要的最少的选项。其他脚本需要的选项,在相应的章节里都有说明。现在,我们只需注意要学习的这个脚本。


2.3. 编译和安装

下面,我们来看看如何编译iptables。iptables很多组件的配置、编译是和内核的配置、编译相关联的,了解这一点是很重要的。某些Linux产品预装了iptables,比如Red Hat,但是他的缺省配置是不启用iptables的。后文我们会介绍如何启用他,也会介绍一下其他 Linux产品里的iptables情况。


2.3.1. 编译

首先要解压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文档有很多对编译、运行有用的信息。

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

Note

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

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

make pending-patches KERNEL_DIR=/usr/src/linux/

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

Note

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

make most-of-pom KERNEL_DIR=/usr/src/linux/

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

make patch-o-matic KERNEL_DIR=/usr/src/linux/

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

Note

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

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

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

make KERNEL_DIR=/usr/src/linux/

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

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

make install KERNEL_DIR=/usr/src/linux/

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

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!