IPTables
原创
©著作权归作者所有:来自51CTO博客作者VickyDu的原创作品,如需转载,请与作者联系,否则将追究法律责任
IPTables
实现包过滤,
基于硬件实现的防火墙
主机防火墙:工作在主机边沿,网卡上
netfilter,就是一内核空间的framework即框架
iptables,用户空间的管理规则的工具
防火墙根据工作的层不同分为:
⑴包过滤型:根据OSI模型中2,3,4层首部信息特征进行处理的。封闭端口,提取地址
①简单包过滤 静态
⑵应用层网关防火墙
默认的5种规则链
INPUT:处理入站数据包
FORWARD:处理转发数据包
OUTPUT:处理出站数据包
PREROUTING链:在进行路由选择前处理数据包
POSTROUTING链:在进行路由选择后处理数据包
为了代理内网用户上网:源地址转换,在路由决策后,要离开网卡之前做。而目标地址转换,在路由决策前做。
四种功能:每种功能代表对数据包的处理机制不同。有四个表:
①filter过滤 内含的链:INPUT,FORWARD,OUTPUT
②nat地址转换 OUTPUT,PREROUTING,POSTROUTING
③mangle对数据包的首部特征做更改,添加标记等。 含有5条链。
④raw
自上而下做检查,若被第一条链匹配到,则直接处理;没被匹配到,就向下继续匹配……直到第五条链,如果都没被匹配到,就由默认规则链处理。(定义规则链时要注意,要把限制范围小的链放上面)
iptables语法结构:
iptables [–t table] command CHAIN [num] criteria -j target
-t table指定修改的表,
对链做什么管理,有以下子命令:
rules(管理规则的命令):
-A追加规则,在链的尾部加入规则
-I [num]插入规则
-D [num]删除规则
-R [num]替换规则
chains(管理链的命令):
-N chain_name 新建一条链
-X chain_name 用来删除用户自定义的空链
-F [chain_name] 用来清空所有的规则链
-P chain_name {DROP|ACCEPT} 对某条链设置默认策略
-Z chain_name 清零计数器
-E oldchain_name newchain_name重命名用户自定义的规则链
view(显示规则的命令):
-L (list)
-v,-vv,-vvv v越多显示的越详细
-n 以数字形式而不是主机名显示信息
--line-numbers 给每条规则编号后显示
criteria(匹配条件):
l 通用匹配
n -s,--src,--source用来匹配源地址
n -d,--dst 用来匹配目标地址
n -i [interface]用来匹配数据包的流入接口
n -o [interface]用来匹配数据包的流出接口
n -p {tcp|udp|icmp}用来匹配协议
l 扩展匹配
n -p tcp
u --sport
u --dport
u --tcp-flags syn,ack,rst syn 检查表中每位必须为0,检查syn必须为1。--syn就可实现此目的
(SYN,ACK,FIN,RST,URG,PSH)
n -p udp
u --sport
u --dport
n -p icmp
u -icmp-type 进来是8,出去是0
-m {state|multiport|limit|string|…}
--state
--ports
tcp 21命令连接端口,
tcp 20数据连接
控制连接没打开时就不会打开数据连接
NEW:新建立的连接
ESTABLISHED:响应之前连接的
RELATED:一个协议的两个连接之间
INVALID:无法识别的
若主机中有两块网卡,实现转发功能的话要先打开主机的路由转发功能。
在firewall上做日志,在做规则之前做日志,只记录请求的不记录相应的。
eg. iptables -I FORWARD 1 -s 192.168.0.0/24 -d 192.168.10.2 -p tcp --dport 80 -j LOG –log-prefix “Web Server:”
在做firwall的源地址转换时,既要在nat表中的POSTROUTING链上定义,还要在filter表中的FORWARD链上定义。
-j 处理办法
-s,-d不指定时就是所有地址
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
详解网络知识:iptables规则
本文主要为大家详解介绍iptables规则。
IP iptables规则 云容器网络 -
iptables 穿透 iptables --to
功能 过滤数据包 地址转换 端口转换 QoS硬件防火墙软件防火墙节点数据包流向 目标地址就是防火墙 源地址就是防火墙 经过防火墙iptables的结
iptables 穿透 网络 运维 源地址 服务器