大并发的情况,iptables不能开,因为会非常影响性能,采用数据包过滤的机制工作的,同时会做数据连接跟踪,根据包头数据进行分析,并根据我们预先设定的规则进行匹配来决定是否可以进入主机



可以针对流入和流出服务器的数据包进行精细的控制

内核2.4和2.6集成的内容

iptables 工作在osi七层模型的 2 3 4层

数据包的流向从左向右

client请求数据 -----------》Iptables Filter  -------------》获取数据server


iptables规则的配置是 从上到下,如果第一个规则匹配上了 比如允许通过/拒绝,则就通过了/拒绝,不在经过第二个规则过滤了;


真正的过滤规则是在

iptables是表的容器

iptables包含四张表

表是链的容器,每个表中都包含若干个链

链是规则的容器,真正的过滤规则是属于链里面的

iptables属于国家

表相当于省

链相当于市

规则相当于县


链是chains
规则是policy

表是链的容器,每个表中都包含若干个链






filter表-------和主机自身相关,真正的防火墙功能(重要)
    包括三个链
    input   进,负责过滤所有目标地址是本机地址的数据包,通俗的讲,就是过滤进入主机的数据包-----一般在对流入的数据流做控制
    output  出,处理所有源地址是本机地址的数据包,同岁的讲,就是处理从主机发出去的数据包-----一般不对流出的数据流做控制
    forward 流经,不会进入主机的数据包,只负责转发流经主机的数据包,起转发作用,和NAT的关系很大,

NET表-------负责数据包改写,网关共享上网,(重要),负责ip地址和port的转换,
    包括三个链
    PREROUTING
    POSTROUTING
    OUTPUT


MANGOLE表---路由标记,用的不多
    input   进
    output  出
    forward 流经
    PREROUTING
POSTROUTING
OUTPUT



工作原理

[root@node2 ~]# iptables -V
iptables v1.4.21


查看表中的链,默认查砍filter表
[root@node2 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination



[root@node2 ~]# lsmod |egrep -i "filter|nat"
iptable_filter         12810  0
ip_tables              27240  1 iptable_filter


清除所有规则,只留下默认规则,默认规则都是accept
[root@node2 ~]# iptables -F
[root@node2 ~]#



清除用户自定义的链
[root@node2 ~]# iptables -X
[root@node2 ~]#


清空 链的计数器

[root@node2 ~]# iptables -Z
[root@node2 ~]#


配置拒绝规则
iptables -t filter -A INPUT -p tcp --dport xxxx -j DROP

-t指定表
-A指定链会把规则添加到指定链的结尾,最后一条
-I指定链,会把规则添加到指定的链的开头,第一条
iptables -t filter -I INPUT -p tcp --dport xxxx -j DROP

可以指定插入的序号,可以把指定的规则插到第二条上
iptables -t filter -I 2 INPUT -p tcp --dport xxxx -j DROP

-p指定协议(默认是all  有tcp udp icmp all四种),协议也可以非
--dport指定目的端口或者范围18:100
--sport指定源端口
-m multiport --dport 12,4,5,342 可以指定多个不连续的端口
-j指定操作和行为(DROP \ACCEPT\REJECT(会给访问方透露拒绝信息))
-s指定源地址,可以指定网段和ip
-i指定网卡,指定进入的网卡
-o指定网卡,指定出去的网卡




可以限制网段
iptables -t filter -I INPUT 2 -p tcp --dport xxxx -j DROP -s 10.1.0.0/24

可以限制网段,可以取反
iptables -t filter -I INPUT 2 -p tcp --dport xxxx -j DROP !-s 10.1.0.0/24
iptables -t filter -I INPUT 2 -p tcp --dport xxxx -j DROP !-s 10.1.0.1

查看序号
[root@node2 ~]# iptables -nL --line-number
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination       


规则id删除规则  
[root@node2 ~]# iptables -D INPUT 1

禁ping操作
iptables -t filter -I INPUT -p icmp --icmp-type 8 -j DROP


工作中默认是拒绝的,用什么开什么

配置防火墙规则

在filter表的intput链上配置规则,先配置一条规则把所有数据都拒绝

iptables -t filter -A INPUT -j DROP







posted on 2020-09-09 15:07  bainianminguo  阅读(72)  评论(0)    收藏  举报