您的位置:首页 > 其它

28_01_iptables系列之基础原理

2017-06-01 17:40 267 查看
Linux:网络防火墙
netfilter:内核中的规则生效的过滤框架
iptables:是一个生成防火墙规则并且将其附加在netfilter上真正实现数据报文过滤、NAT、mangle等规则生成的工具。

网络知识:IP报文首部,TCP报文首部

hook function:钩子函数
preouting
input
output
forword
postrouting

规则链
preouting
input
output
forword
postrouting

filter(过滤)表:
input
output
forword

nat(地址转换(源地址,目标地址))表:
preouting
output
postrouting

mangle(修改报文,再封装):表
preouting
input
output
forword
postrouting
raw():表
preouting
output

iptables有四个表五个链

能否使用自定义链?
可以使用自定义链,但只能被调用的时候发挥作用,而且没有自定义链中的任何规则匹配,还应该有返回机制。
可以删除自定义的空链
默认链无法删除

每个规则都有两个内置的计数器
被匹配的报文个数
被匹配的报文大小之和

规则:匹配标准、处理动作

iptables [ -t TABLE ] COMMAND CHAIN [ num ] 匹配标准 -j 处理办法

匹配保准:
通用匹配

-s ,--src:指定源地址

-d , --dst:指定目标地址

-p { tcp | udp | icmp }:指定协议

-i INTERFACE:指定数据报文流入的接口

-o INTERFACE :指定数据报文流出的接口
扩展匹配
隐含扩展:不用特别指明由哪个模块进行的扩展,因为此时使用 -p{tcp | udp | icmp}
显示扩展:必须指明由哪个模块进行的扩展,在iptables中使用-m选项可以完成此功能

-j TARGET

ACCETP:接收

DROP:丢弃

REJECT:老子就不让你过

iptables -t filter -A INPUT -s 172.16.0.0/16 -d 172.16.100.7 -j DROP

(地址来源为 172.16... 并且 目标地址为172.16.100.7 丢弃 )
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: