IPtables常用命令及参数指南:
我们将要介绍所有的command以及它们的用途。command指定iptables 对我们提交的规则要做什么样的操作。这些操作可能是在某个表里增加或删除一些东西,或做点儿其他什么。 我们将要介绍所有的command以及它们的用途。command指定iptables常用命令对我们提交的规则要做什么样的操作。这些操作可能是在某个表里增加或删除一些东西,或做点儿其他什么。以下是iptables常用命令可用的command(要注意,如不做说明,默认表的是 filter表。
- Command-A, --append
- Example iptables -A INPUT ...
Explanation在所选择的链末添加规则。当源地址或目的地址是以名字而不是ip地址的形式出现时,若这些名字可以被解析为多个地址,则这条规则会和所有可用的地址结合。
- Command-D, --delete
- Example iptables -D INPUT --dport 80 -j DROP或iptables -D INPUT 1
Explanation从所选链中删除规则。有两种方法指定要删除的规则:一是把规则完完整整地写出来,再就是指定规则在所选链中的序号(每条链的规则都各自从1被编号)。
- Command-R, --replace
- Example iptables -R INPUT 1 -s 192.168.0.1 -j DROP
Explanation在所选中的链里指定的行上(每条链的规则都各自从1被编号)替换规则。它主要的用处是试验不同的规则。当源地址或目的地址是以名字而不是ip地址的形式出现时,若这些名字可以被解析为多个地址,则这条command会失败。
- Command-I, --insert
- Example iptables -I INPUT 1 --dport 80 -j ACCEPT
Explanation根据给出的规则序号向所选链中插入规则。如果序号为1,规则会被插入链的头部,其实默认序号就是1。
- Command-L, --list
- Example iptables -L INPUT
Explanation显示所选链的所有规则。如果没有指定链,则显示指定表中的所有链。如果什么都没有指定,就显示默认表所有的链。精确输出受其它参数影响,如-n 和-v等参数,下面会介绍。
- Command-F, --flush
- Example iptables -F INPUT
Explanation清空所选的链。如果没有指定链,则清空指定表中的所有链。如果什么都没有指定,就清空默认表所有的链。当然,也可以一条一条地删,但用这个command会快些。
- Command-Z, --zero
- Example iptables -Z INPUT
Explanation把指定链(如未指定,则认为是所有链)的所有计数器归零。
- Command-N, --new-chain
- Example iptables -N allowed
Explanation根据用户指定的名字建立新的链。上面的例子建立了一个名为allowed的链。注意,所用的名字不能和已有的链、target同名。
- Command-X, --delete-chain
- Example iptables -X allowed
Explanation删除指定的用户自定义链。这个链必须没有被引用,如果被引用,在删除之前你必须删除或者替换与之有关的规则。如果没有给出参数,这条命令将会删除默认表所有非内建的链。
- Command-P, --policy
- Example iptables -P INPUT DROP
Explanation为链设置默认的target(可用的是DROP 和ACCEPT,如果还有其它的可用,请告诉我),这个target称作策略。所有不符合规则的包都被强制使用这个策略。只有内建的链才可以使用规则。但内建的链和用户自定义链都不能被作为策略使用,也就是说不能象这样使用:iptables -P INPUT allowed(或者是内建的链)。
- Command-E, --rename-chain
- Example iptables -E allowed disallowed
Explanation对自定义的链进行重命名,原来的名字在前,新名字在后。如上,就是把allowed改为disallowed。这仅仅是改变链的名字,对整个表的结构、工作没有任何影响。
在使用iptables时,如果必须的参数没有输入就按了回车,那么它就会给出一些提示信息:告诉你需要哪些参数等等。iptables的选项-v用来显示iptables的版本,-h给出语法的简短说明。。下面将要介绍的就是部分选项,还有它们的作用。
Table 6-3. Options
Option(选项)-v, --verbose(详细的)
可用此选项的命令--list, --append, --insert, --delete, --replace
Explanation(说明)这个选项使输出详细化,常与--list 连用。与--list连用时,输出中包括网络接口的地址、规则的选项、TOS掩码、字节和包计数器,其中计数器是以K、M、G(这里用的是10的幂而不是2的幂哦)为单位的。如果想知道到底有多少个包、多少字节,还要用到选项-x,下面会介绍。如果-v 和--append、--insert、--delete 或--replace连用,iptables会输出详细的信息告诉你规则是如何被解释的、是否正确地插入等等。
- Option-x, --exact(精确的)
- Commands used with--list
Explanation使--list输出中的计数器显示准确的数值,而不用K、M、G等估值。注意此选项只能和--list连用。
- Option-n, --numeric(数值)
- Commands used with--list
Explanation使输出中的IP地址和端口以数值的形式显示,而不是默认的名字,比如主机名、网络名、程序名等。注意此选项也只能和--list连用。
- Option--line-numbers
- Commands used with--list
Explanation又是一个只能和--list连用的选项,作用是显示出每条规则在相应链中的序号。这样你可以知道序号了,这对插入新规则很有用哦。
- Option-c, --set-counters
- Commands used with--insert, --append, --replace
Explanation在创建或更改规则时设置计数器,语法如下:--set-counters 20 4000,意思是让内核把包计数器设为20,把字节计数器设为4000。
- Option--modprobe
- Commands used withAll
Explanation此选项告诉iptables常用命令探测并装载要使用的模块。这是非常有用的一个选项,万一modprobe命令不在搜索路径中,就要用到了。有了这个选项,在装载模块时,即使有一个需要用到的模块没装载上,iptables也知道要去搜索。
【编辑推荐】