Linux防火墙

您所在的位置:网站首页 兜里有糖什么意思 Linux防火墙

Linux防火墙

2024-07-11 01:38| 来源: 网络整理| 查看: 265

一、防火墙简介

     防火墙定义:是通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于其内、外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的一种技术。

     防火墙发展应用:最早是ipfwadm和ipchains(Redhat7.0), 其次是iptables,Centos7开始后friewalld迅速发展,对iptables进行了 改良,目前还是iptables用的比较多。  

     防火墙的布防位置:

前提:架构部署在web与企业服务相连的部分(网站最前端上联口交换机前)。 串联部署:最佳 的存放部署,防护性强,但如果防火墙出问题后,整个企业服务就会受影响。 旁路部署:综合最好的存放部署方式 ,不会因防火墙出问题而导致整个企业服务受影响,但防护相对串联部署较薄弱。

     

二、IPtables介绍 IPtables是什么

            官网解释:iptables是用户空间命令行程序,用于配置 Linux 2.4.x 及更高版本的包过滤规则集。它面向系统管理员,由于网络地址转换也是从包过滤规则集配置的,iptables的包装还包括ip6tables。ip6tables用于配置 IPv6 包过滤器。

             个人理解:是Linux下自带(C7以前)的开源的一款免费的基于包过滤的防火墙工具,可以对流入、流出、流经服务器的数据包进行精细的控制。目前Iptables主要工作在OSI七层的二、三四层(不编译的情况下),如果重新编译内核,Iptables也可以支持7层控制(squid代理+iptables)进行7层过滤。

 三、iptables包过滤流程

       iptables是采用【数据包】过滤机制工作的,所以它会对请求的数据包的【包头数据】进行分析,并根据我们预先设定的规则进行匹配来决定是否可以进入主机。

       【数据包的包头】是传输数据流经OSI七层模型中,经过各个层时,各个层根据遵循的协议给数据进行层层打包,如下图所示:

      

         iptables工作流程 防火墙是一层层过滤的。实际是按照配置规则的顺序从上到下,从前到后进行过滤的。 防火墙如果根据设置的规则匹配上了规则,即明确表明是阻止还是通过,此时数据包就不在向下匹配新规则了。 如果数据包在所有规则中没有匹配到明确的规则是阻止还是通过,从而会向下进行匹配直到匹配默认规则后,得到明确的默认规则,从而得出确认是阻止还是通过。 防火墙的默认规则是对应链里的所有规则执行完以后才会执行的(最后执行的规则)。

             如图所示:

           

四、iptables的4表5链作用关系及工作原理

   根据 IPtables的内部结构可以细化分为以功能为做区分的称呼为表,以IPtables动作为区分的称呼为链;其中包含关系为:IPtables(用户空间)-->netfilter (内和空间)-->tables(4表) -->chains(5链)--> 规则policy。

 

      注:可以通过man IPtables 命令查看系统中具体的表和链的说明

  1.tables四表的作用 filter(主机防火墙):对主机的数据包进出进行控制,主要是IPtables默认的表;   表中包含的对应的链:INPUT(进入),OUTPUT(出去),FORWARD(流经,转发) nat  :用于端口或者IP映射或共享上网;     表中包含的链:POSTROUTING(流出主机后路由),PREROUTING(进入主机前路由),OUTPUT(流出主机) mangle:用于配置路由标记  ttl \ tos \ mark(拆解报文,做出修改,并重新封装起来); 表中包含的链: INPUT,OUTPUT,FORWARD,POSTROUTING,PREROUTING raw:关闭nat表上启用的连接追踪机制;表中包含的链: OUTPUT,PREROUTING   2.chains链的作用 INPUT:进入主机的数据包。主机防火墙最关键的链(filter表的INPUT链) OUTPUT:流出主机的数据包 FORWARD:流经主机的数据包 PREROUTING:进入服务器最先经过的链,NAT端口或IP映射(导向)。(nat表的PREROUTING链) POSTROUTIN:在流出服务器最后经过的链,NAT共享上网。局域网共享上网(nat表的POSTROUTING链)  五、iptables安装   1.关闭selinux

     不关闭selinux ,iptables不读取配置文件

   临时关闭命令:getenforce 0

      永久关闭命令:

sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config #修改完成后需要重启才能生效     2.关闭firewalld,并且关闭开机自启

    关闭防火墙

systemctl stop firewalld

    关闭开机自启

systemctl disable firewalld

     查看防火墙状态

systemctl status firewalld    3.查看IPtables是否安装

    命令:systemctl status iptables

    

   4.安装iptables

   安装命令: yum install iptables-services -y

     启动和查看iptables状态

systemctl start iptables systemctl enable iptables

 查看配置文件信息

  查看配置文件命令:cat /etc/sysconfig/iptables 1 filter


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3