防火墙

来源:互联网 发布:软件技术支持面试题 编辑:程序博客网 时间:2024/04/29 20:10

防火墙

所谓的防火墙,就是处于两个区域(zone)之间,通过制定一些规则分析和过滤进入到我们管控的网域内的数据包的一种机制

防火墙可以分为硬件和软件防火墙,软件防火墙是系统本身提供的一套软件;硬件防火墙这里不做讨论

何时需要防火墙

1、区分哪类服务可以向外提供服务,哪些服务需被保护
2、规划被信任与不被信任的网段
3、过滤哪些数据包,放行哪些数据包

Iptables

流程

iptables的规则netfilter是有顺序的,所以规则顺序一定要排好
防火墙至少有三个表,表格都定义出自己的默认政策与规则,每个表中还有chain(链)

   filter(专门过滤包的):       INPUT:管理进入Linux本机的数据包       OUTPUT:管理从Linux本机发出的数据包       FORWARD:不是本机产生的并且目的地不是本机   nat(网络地址转换):       PREROUTING:进行路由判断之前要进行的规则,例如在包刚刚到达防火                  墙时改变它的目的地址       POSTROUTING:进行路由判断之后要进行的规则,例如离开防火墙之                  前改变其源地址       OUTPUT:可以改变本地产生的包的目的地址   mangle(用来mangle数据包)

查看iptables规则:

iptables [-t tables] [-L] [-nv]-L:列出目前table的规则-n:不进行IP与HOSTNAME的反查iptables-save [-t tables]

清除iptables规则:

iptables [-t tables] [-FXZ]-F :清除所有的已订定的规则;-X :杀掉所有使用者 "自定义" 的 chain (应该说的是 tables )啰;-Z :将所有的 chain 的计数与流量统计都归零但是这个清除规则不会改变预设政策

iptables政策:

iptables [-t nat] -P [INPUT,OUTPUT,FORWARD] [ACCEPT,DROP]-P :定义政策( Policy )当数据包不在设置的规则内时,则数据包是根据设定的政策来决定是否可以通过的。

iptables规则:

iptables [-t table] command [match] [target/jump]1、表名 mangle,nat,filter等2、命令 -A,-I,-D等3、匹配 如-p tcp, -m state –state RELATED,ESTABLISHED4、target/jump,如-j ACCEPT或-j DROP等最基础的OSI三层谈起:iptables [-AI 链名] [-io 网络接口] [-p 协议][-s 来源IP/网域] [-d 目标IP/网域] -j [ACCEPT|DROP|REJECT|LOG]-A :新增加一条规则,该规则增加在原本规则的最后面。例如原本已经有四条规则, 使用 -A 就可以加上第五条规则!-I :插入一条规则。如果没有指定此规则的顺序,默认是插入变成第一条规则。例如原本有四条规则,使用 -I 则该规则变成第一条,而原本四条变成 2~5 号-s 来源 IP/网域:设定此规则之封包的来源项目,可指定单纯的 IP 或包括网段,例如:IP  :192.168.0.100网段:192.168.0.0/24, 192.168.0.0/255.255.255.0 均可。若规范为『不许』时,则加上 ! 即可,例如:-s ! 192.168.100.0/24 表示不许 192.168.100.0/24 之封包来源;-j LOG 是指对匹配这个规则的数据包进行记录,记录在/var/log/message文件中OSI四层:iptables [-AI 链] [-io 网络接口] [-p tcp,udp][-s 来源IP/网段] [--sport 端口范围][-d 目标IP/网段] [--dport 端口范围] -j [ACCEPT|DROP|REJECT]模块:iptables -A INPUT [-m state] [--state 状态] -j [ACCEPT|DROP|REJECT]-m:模块,有stat、mac模块--stat:数据包的状态,INVALID    :无效的封包,例如数据破损的封包状态ESTABLISHED:已经联机成功的联机状态;NEW        :想要新建立联机的封包状态;RELATED    :这个最常用!表示这个封包是与我们主机发送出去的封包有关iptables -A INPUT [-m mac] --mac-source ... -j  [ACCEPT|DROP|REJECT]针对ICMP:iptables -A INPUT [-p icmp] [--icmp-type 类型] -j ACCEPT
0 0
原创粉丝点击