IT猫扑网:您身边最放心的安全下载站! 最新更新| 软件分类| 专题汇总| 手机版

您当前所在位置:IT猫扑网 > 操作系统 > LINUX > Linux Iptables命令详解

Linux Iptables命令详解

时间:2015-06-28 00:00 来源:IT猫扑网|http://www.itmop.com/ 作者:网管联盟 我要评论(0)

  用iptables -ADC 来指定链的规则,-A添加 -D删除 -C 修改

  iptables - [RI] chain rule num rule-specification[option]

  用iptables - RI 通过规则的顺序指定

  iptables -D chain rule num[option]

  删除指定规则

  iptables -[LFZ] [chain][option]

  用iptables -LFZ 链名 [选项]

  iptables -[NX] chain

  用 -NX 指定链

  iptables -P chain target[options]

  指定链的默认目标

  iptables -E old-chain-name new-chain-name

  -E 旧的链名 新的链名

  用新的链名取代旧的链名

  说明

  Iptalbes 是用来设置、维护和检查Linux内核的IP包过滤规则的。

  可以定义不同的表,每个表都包含几个内部的链,也能包含用户定义的链。每个链都是一个规则列表,对对应的包进行匹配:每条规则指定应当如何处理与之相匹配的包。这被称作'target'(目标),也可以跳向同一个表内的用户定义的链。

  TARGETS

  防火墙的规则指定所检查包的特征,和目标。如果包不匹配,将送往该链中下一条规则检查;如果匹配,那么下一条规则由目标值确定.该目标值可以是用户定义的链名,或是某个专用值,如ACCEPT[通过], DROP[删除], QUEUE[排队], 或者 RETURN[返回]。

  ACCEPT 表示让这个包通过。DROP表示将这个包丢弃。QUEUE表示把这个包传递到用户空间。RETURN表示停止这条链的匹配,到前一个链的规则重新开始。如果到达了一个内建的链(的末端),或者遇到内建链的规则是RETURN,包的命运将由链准则指定的目标决定。

  TABLES

  当前有三个表(哪个表是当前表取决于内核配置选项和当前模块)。

  -t table

  这个选项指定命令要操作的匹配包的表。如果内核被配置为自动加载模块,这时若模块没有加载,(系统)将尝试(为该表)加载适合的模块。这些表如下:filter,这是默认的表,包含了内建的链INPUT(处理进入的包)、FORWORD(处理通过的包)和OUTPUT(处理本地生成的包)。nat,这个表被查询时表示遇到了产生新的连接的包,由三个内建的链构成:PREROUTING (修改到来的包)、OUTPUT(修改路由之前本地的包)、POSTROUTING(修改准备出去的包)。mangle 这个表用来对指定的包进行修改。它有两个内建规则:PREROUTING(修改路由之前进入的包)和OUTPUT(修改路由之前本地的包)。

  OPTIONS

  这些可被iptables识别的选项可以区分不同的种类。

  COMMANDS

  这些选项指定执行明确的动作:若指令行下没有其他规定,该行只能指定一个选项.对于长格式的命令和选项名,所用字母长度只要保证iptables能从其他选项中区分出该指令就行了。

  -A -append

  在所选择的链末添加一条或更多规则。当源(地址)或者/与 目的(地址)转换为多个地址时,这条规则会加到所有可能的地址(组合)后面。

  -D -delete

  从所选链中删除一条或更多规则。这条命令可以有两种方法:可以把被删除规则指定为链中的序号(第一条序号为1),或者指定为要匹配的规则。

  -R -replace

  从选中的链中取代一条规则。如果源(地址)或者/与 目的(地址)被转换为多地址,该命令会失败。规则序号从1开始。

  -I -insert

  根据给出的规则序号向所选链中插入一条或更多规则。所以,如果规则序号为1,规则会被插入链的头部。这也是不指定规则序号时的默认方式。

  -L -list

  显示所选链的所有规则。如果没有选择链,所有链将被显示。也可以和z选项一起使用,这时链会被自动列出和归零。精确输出受其它所给参数影响。

  -F -flush

  清空所选链。这等于把所有规则一个个的删除。

  --Z -zero

  把所有链的包及字节的计数器清空。它可以和 -L配合使用,在清空前察看计数器,请参见前文。

  -N -new-chain

  根据给出的名称建立一个新的用户定义链。这必须保证没有同名的链存在。

  -X -delete-chain

  删除指定的用户自定义链。这个链必须没有被引用,如果被引用,在删除之前你必须删除或者替换与之有关的规则。如果没有给出参数,这条命令将试着删除每个非内建的链。

  -P -policy

  设置链的目标规则。

  -E -rename-chain

  根据用户给出的名字对指定链进行重命名,这仅仅是修饰,对整个表的结构没有影响。TARGETS参数给出一个合法的目标。只有非用户自定义链可以使用规则,而且内建链和用户自定义链都不能是规则的目标。

  -h Help.

  帮助。给出当前命令语法非常简短的说明。

  PARAMETERS

  参数

  以下参数构成规则详述,如用于add、delete、replace、append 和 check命令。

  -p -protocal [!]protocol

  规则或者包检查(待检查包)的协议。指定协议可以是tcp、udp、icmp中的一个或者全部,也可以是数值,代表这些协议中的某一个。当然也可以使用在/etc/protocols中定义的协议名。在协议名前加上&!&表示相反的规则。数字0相当于所有all。Protocol all会匹配所有协议,而且这是缺省时的选项。在和check命令结合时,all可以不被使用。

  -s -source [!] address[/mask]

  指定源地址,可以是主机名、网络名和清楚的IP地址。mask说明可以是网络掩码或清楚的数字,在网络掩码的左边指定网络掩码左边&1&的个数,因此,mask值为24等于255.255.255.0。在指定地址前加上&!&说明指定了相反的地址段。标志 --src 是这个选项的简写。

  -d --destination [!] address[/mask]

  指定目标地址,要获取详细说明请参见 -s标志的说明。标志 --dst 是这个选项的简写。

  -j --jump target

  -j 目标跳转

  指定规则的目标;也就是说,如果包匹配应当做什么。目标可以是用户自定义链(不是这条规则所在的),某个会立即决定包的命运的专用内建目标,或者一个扩展(参见下面的EXTENSIONS)。如果规则的这个选项被忽略,那么匹配的过程不会对包产生影响,不过规则的计数器会增加。

#p#副标题#e#

  -i -in-interface [!] [name]

  i -进入的(网络)接口 [!][名称]

  这是包经由该接口接收的可选的入口名称,包通过该接口接收(在链INPUT、FORWORD和PREROUTING中进入的包)。当在接口名前使用&!&说明后,指的是相反的名称。如果接口名后面加上&+&,则所有以此接口名开头的接口都会被匹配。如果这个选项被忽略,会假设为&+&,那么将匹配任意接口。

  -o --out-interface [!][name]

  -o --输出接口[名称]

  这是包经由该接口送出的可选的出口名称,包通过该口输出(在链FORWARD、OUTPUT和POSTROUTING中送出的包)。当在接口名前使用&!&说明后,指的是相反的名称。如果接口名后面加上&+&,则所有以此接口名开头的接口都会被匹配。如果这个选项被忽略,会假设为&+&,那么将匹配所有任意接口。

  [!] -f, --fragment

  [!] -f --分片

  这意味着在分片的包中,规则只询问第二及以后的片。自那以后由于无法判断这种把包的源端口或目标端口(或者是ICMP类型的),这类包将不能匹配任何指定对他们进行匹配的规则。如果&!&说明用在了&-f&标志之前,表示相反的意思。

  OTHER OPTIONS

  其他选项

  还可以指定下列附加选项:

  -v --verbose

  -v --详细

  详细输出。这个选项让list命令显示接口地址、规则选项(如果有)和TOS(Type of Service)掩码。包和字节计数器也将被显示,分别用K、M、G(前缀)表示1000、1,000,000和1,000,000,000倍(不过请参看-x标志改变它),对于添加,插入,删除和替换命令,这会使一个或多个规则的相关详细信息被打印。

  -n --numeric

  -n --数字

  数字输出。IP地址和端口会以数字的形式打印。默认情况下,程序试显示主机名、网络名或者服务(只要可用)。

  -x -exact

  -x -精确

  扩展数字。显示包和字节计数器的精确值,代替用K,M,G表示的约数。这个选项仅能用于 -L 命令。

  --line-numbers

  当列表显示规则时,在每个规则的前面加上行号,与该规则在链中的位置相对应。

  MATCH EXTENSIONS

  对应的扩展

  iptables能够使用一些与模块匹配的扩展包。以下就是含于基本包内的扩展包,而且他们大多数都可以通过在前面加上!来表示相反的意思。

  tcp

  当 --protocol tcp 被指定,且其他匹配的扩展未被指定时,这些扩展被装载。它提供以下选项:

  --source-port [!] [port[:port]]

  源端口或端口范围指定。这可以是服务名或端口号。使用格式端口:端口也可以指定包含的(端口)范围。如果首端口号被忽略,默认是&0&,如果末端口号被忽略,默认是&65535&,如果第二个端口号大于第一个,那么它们会被交换。这个选项可以使用 --sport的别名。

  --destionation-port [!] [port:[port]]

  目标端口或端口范围指定。这个选项可以使用 --dport别名来代替。

  --tcp-flags [!] mask comp

  匹配指定的TCP标记。第一个参数是我们要检查的标记,一个用逗号分开的列表,第二个

关键词标签:Linux,Iptables命令

相关阅读 安装红帽子RedHat Linux9.0操作系统教程 Tomcat9.0如何安装_Tomcat9.0环境变量配置方法 多种操作系统NTP客户端配置 Linux操作系统修改IP Linux实现SCSI硬盘热插拔及在线识别 Linux下用CDMA modem拨号上网

文章评论
发表评论

热门文章 安装红帽子RedHat Linux9.0操作系统教程 安装红帽子RedHat Linux9.0操作系统教程 Linux服务器:设计高性能网站架构-LLMP Linux服务器:设计高性能网站架构-LLMP 使用Clonezilla迁移到虚拟Linux环境 使用Clonezilla迁移到虚拟Linux环境 Linux上的MRTG流量监控中心 Linux上的MRTG流量监控中心 Linux 双网卡绑定一个IP原理及实现 Linux 双网卡绑定一个IP原理及实现 linux和windows等系统远程控制ubuntu桌面 linux和windows等系统远程控制ubuntu桌面

相关下载

人气排行 Linux下获取CPUID、硬盘序列号与MAC地址 dmidecode命令查看内存型号 linux tc实现ip流量限制 安装红帽子RedHat Linux9.0操作系统教程 linux下解压rar文件 lcx.exe、nc.exe、sc.exe入侵中的使用方法 Ubuntu linux 关机、重启、注销 命令 查看linux服务器硬盘IO读写负载 linux命令行浏览器的使用方法 Linux NFS服务固定端口及防火墙配置 U盘安装Ubuntu 10.04 Linux清除用户登录记录和命令历史方法