1、安装iptables
centos7默认防火墙是firewalle,要想使用iptables,须要安装。vim
````yum install -y iptables iptables.services 启动:service iptables start 状态:service iptables status 关闭:service iptables stop 重启:service iptables restart 保存新建规则:service iptables save 配置文件:vim /etc/sysconfig/iptables ````
2、iptables工做原理
一、介绍
iptables又能够称做为netfilter,是Linux/Unix自带的一款优秀的且开放源代码的彻底自由的基于包过滤的防火墙工具,他的功能十分的强大,使用很是的灵活,能够对流入和流出的数据包进行很精细的控制。特别它能够在一台硬件很低的机器上跑的很好,提供近400人的上网读取,好不逊色企业级专业路由器防火墙。iptables主要工做在OSI七层的二三层和四层(数据链路层,网络层,传输层),若是从新编译内核iptables也能够支持7层控制。
二、工做流程
防火墙是一层层过滤的,实际是按照配置规则自上而下进行的,从前到后进行过滤的。centos
若是匹配上规则,即明确表示是阻止仍是经过,此时的数据包就不在进行下面的匹配了。
若是全部规则中没有明确是阻止仍是经过这个数据包,也就是没有匹配上规则,向下进行匹配,直到到匹配到默认规则(默认规则会明确代表是经过仍是阻止)。
防火墙的默认规则是对应链的全部的规则 执行完才会执行的。服务器
3、iptables表和链网络
iptables有4表5链。ide
表
filter: 顾名思义,用于过滤的时候
nat: 顾名思义,用于作 NAT 的时候,NAT:Network Address Translator
mangle:不经常使用,路由包的改写
raw:不经常使用工具
链
INPUT: 位于 filter 表,匹配目的 IP 是本机的数据包
FORWARD: 位于 filter 表,匹配穿过本机的数据包,
PREROUTING: 位于 nat 表,用于修改目的地址(DNAT)
POSTROUTING:位于 nat 表,用于修改源地址 (SNAT)
OUTPUT:处理全部源地址就是本机地址的数据包,通俗的讲,就是处理从主机发出去的数据包,存在全部表中centos7
一、filter表介绍
主要和主机自身有关,真正负责主机防火墙功能(过滤流入,流出,流经主机的数据包)。filter是主机默认使用的表。这表定义了三个链。生产场景单台,服务器的防火墙功能全靠这张表
INPUT:负责过滤进入主机的数据包
FORWARD:负责转发流进主机的数据包,起转发的做用,和NAT关系很大,后面会详细介绍,LVS NAT模式。路过 net.ipv4.ip_forward=0 内核模块
OUTPUT : 处理全部源地址就是本机地址的数据包,通俗的讲,就是处理从主机发出去的数据包
对filter表的控制是咱们实现主机防火强的重要功能,特别是对INPUT链的控制。
二、nat表介绍
负责网络地址转换,即来源与目的ip地址和port的转换。开放源代码
应用:和主机自己无关,防火墙通常不用nat,通常用于局域网共享上网或者特殊的端口和ip的转换服务相关rest