linux作为网络防火墙,Linux:网络防火墙原理(示例代码)

Linux:网络防火墙

netfilter:Frame

iptables: 数据报文过滤,NAT,mangle等规则生成的工具

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

防火墙:硬件,软件:规则(匹配标准,处理办法)

Framework:

默认规则:

开放: 堵

关闭: 通

规则:匹配标准

IP:源IP,目标IP

TCP:源端口,目标端口

tcp三次握手: SYN=1,FIN=0,RST=0,ACK=0;

SYN=1,ACK=1,FIN=0,RST=0;

ACK=1,SYN=0.RST=0,FIN=0(ESTABLISHED);

UDP:源端口,目标端口

ICMP:icmp-type

数据报文过滤:

Linux2.0

ipfw/firwall

Linux2.2

ipc

Linux2.4

iptables/netfilter

hook function:钩子函数

prerouting

input

output

forward

postrouting

规则链:

filter(过滤):表

INPUT

OUTPUT

FORWARD

nat(地址转换):表

PREROUTING

OUTPUT

POSTROUTING

mangle(修改报文首部,拆开,修改,封装):表

prerouting

input

output

forward

postrouting

raw():

PREROUTING

OUTPUT

iptables:

自定义链:只能在被调用时才能发挥作用,而且如果没有被自定义链中任何一条规则匹配到,还应该有返回机制

用户可以删除自定义的空链

默认链不能被删除

每个规则都有内置的计数器

被匹配到的报文个数

被匹配到的报文大小之和

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

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

匹配标准:

通用匹配:

-s ,--src 指定原地址

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

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

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

可用于定义的链:PREROUTING,INPUT,FORWARD

-o , INTERFACE: 指定数据报文的流出接口

可用于标准定义的链OUTPUT,POSTROUTING,FORWARD

扩展匹配:

隐含扩展:不用特别指明由哪个模块进行的扩展,因为此时使用-p {tcp|udp|icmp}

显示扩展:必须指明由哪个模块进行的扩展,在iptables中使用-m选项可完成此功能

-j TARGET

ACCEPT

DROP

REJECT

本文出自 “运维成长路” 博客,谢绝转载!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值