Chinaunix首页 | 论坛 | 博客
  • 博客访问: 235933
  • 博文数量: 57
  • 博客积分: 1149
  • 博客等级: 少尉
  • 技术积分: 584
  • 用 户 组: 普通用户
  • 注册时间: 2011-10-29 11:35
文章分类

全部博文(57)

文章存档

2016年(1)

2014年(1)

2013年(2)

2012年(27)

2011年(26)

分类: LINUX

2012-02-16 14:49:14

iptables内有3table 每个table内有不同的chain()每个链都有策略动作

 

例如:iptables默认使用的是filter  table

Filter table chain内容使用iptables -L 查看:

[root@CentOS6-78 ~]# iptables -L

Chain INPUT (policy ACCEPT)

target     prot opt source               destination        

ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED

ACCEPT     icmp --  anywhere             anywhere           

ACCEPT     all  --  anywhere             anywhere           

ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh

ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:http

REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited

 

Chain FORWARD (policy ACCEPT)

target     prot opt source               destination        

REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited

 

Chain OUTPUT (policy ACCEPT)

target     prot opt source               destination        

 

filter内有3个链,input,forward,output

 

 

策略规则和动作:

 

-A -append

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

例如:iptables -A INPUT -s 192.168.2.219 -p tcp  --dport 22 -j ACCEPT

以上是添加一条规则, 允许从219 发送ssh连接请求到本机

 

-D -delete

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

例如:iptables -D INPUT 7    删除刚刚添加的规则,是input链中的第七条规则

 

 

-R -replace

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

 

 

-L -list

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

 

-F -flush

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

 

 

-X -delete-chain

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

 

 

 

 

参数:

 

-p  [!]protocol  协议类型tcp udp icmp

:iptables -A INPUT -p ! tcp -j ACCEPT

只允许除tcp协议意外的包进入

 

-s  [!] source  包来源主机地址,(ip,域名)

:iptables -A INPUT -s 192.168.2.1 -j Drop

不允许来自192.168.2.1 的任何数据进入

 

-d [!] destination  包的目的主机地址

 

-j jump 跳转

-j ACCEPT符合此规则的包跳转允许,-j DROP 符合此条件包被丢弃

 

-i [!] in-interface 进入网络接口

 

-o [!] out-interface 输出网络接口

 

 

 

-p protocol选择tcp时有以下选项可选:

 

--sport --source-port [!] 源端口

 

--dport --destionation-port [!] 目的端口

 

--tcp-flags [!] 匹配指定的tcp标记包

 

标记如下:SYN ACK FIN RST URG PSH ALL NONE

 

 

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