首页 > 系统相关 >[转]Linux下系统防火墙的发展历程和怎样学好防火墙(iptalbes和firewalld)

[转]Linux下系统防火墙的发展历程和怎样学好防火墙(iptalbes和firewalld)

时间:2023-08-03 10:11:26浏览次数:54  
标签:iptables 防火墙 firewalld nftables iptalbes Linux 管理工具

原文地址:Linux下系统防火墙的发展历程和怎样学好防火墙(iptalbes和firewalld) - Repetition_Maximum - 博客园

有关firewalld和iptables详细使用的文章

iptables详解

firewalld详解

=====================================华丽的分割线=====================================

 

1. 认识防火墙

从逻辑上讲防火墙可以分为主机防火墙和网络防护墙。

  主机防火墙:针对个别主机对出站入站的数据包进行过滤。(操作对象为个体)

  网络防火墙:处于网络边缘,针对网络入口进行防护。(操作对象为整体)

从物理上讲防火墙可以分为硬件防火墙和软件防火墙。

  硬件防火墙:通过硬件层面实现防火墙的功能,性能高,成本高。

  软件防火墙:通过应用软件实现防火墙的功能,性能低,成本低。

 

2. 系统防火墙发展过程

防火墙的发展史就是从墙到链再到表,也是从简单到复杂的过程。

防火墙工具变化如下:

ipfirewall--->ipchains--->iptables-->nftables(正在推广)

  Linux 2.0版内核中:包过滤机制为ipfw,管理工具是ipfwadm。

  Linux 2.2版内核中:包过滤机制为ipchain,管理工具是ipchains。

  Linux 2.4,2.6,3.0+版内核中:包过滤机制为netfilter,管理工具是iptables。

  Linux 3.1(3.13+)版内核中:包过滤机制为netfilter,中间采取daemon动态管理防火墙,管理工具是firewalld。

    # 目前低版本的firewalld通过调用iptables(command),它可以支持老的iptables规则(在firewalld里面叫做直接规则),

    # 同时firewalld兼顾了iptables,ebtables,ip6tables的功能。

 

3. iptables和nftables

nftables

    nftables诞生于2008年,2013年底合并到Linux内核,从 Linux 3.13起开始作为iptables的替代品提供给用户。

    它是新的数据包分类框架,新的linux防火墙管理程序,旨在替代现存的 {ip,ip6,arp,eb}_tables,它的用户空间管理工具是nft。

由于iptables的一些缺陷,目前正在慢慢过渡用nftables替换iptables,同时由于这个新的框架的兼容性,

所以nftables也支持在这个框架上运行直接iptables这个用户空间的管理工具。

  nftables实现了一组被称为表达式的指令,可通过在寄存器中储存和加载来交换数据。

也就是说,nftables的核心可视为一个虚拟机,nftables的前端工具nft可以利用内核提供的表达式去模拟旧的iptables匹配,

维持兼容性的同时获得更大的灵活性。

  而未来最新的firewalld(0.8.0)默认使用将使用nftables。详情可以看www.firewalld.org

iptables、nftables和firewalld之间的区别与联系

   firewalld同时支持iptables和nftables,未来最新版本(0.8.0)默认将使用nftables。

简单的说firewalld是基于nftfilter防火墙的用户界面工具。而iptables和nftables是命令行工具。

firewalld引入区域的概念,可以动态配置,让防火墙配置及使用变得简便。

  准确的说:iptables(command)的最底层是netfilter,它的用户空间管理工具是iptables

nftables(command)是iptables(command) 的一个替代品并兼容iptables(command),最底层依然是netfilter,它的用户空间管理工具是nft,

同时未来firewalld最新版(0.8.0)也将默认支持nftables(command)。https://firewalld.org/

  iptables会把配置好的防火墙策略交给内核层的netfilter网络过滤器来处理

  firewalld会把配置好的防火墙策略交给内核层的nftables包过滤框架来处理

下图为iptables、firewalld、nftables之间的关系图:

 

 

4. centos6.X到centos7.X

centos6.X:防火墙由netfilter和iptables构成。其中iptables用于制定规则,又被称为防火墙的用户态;

  而netfilter实现防火墙的具体功能,又被称为内核态。简单地讲,iptables制定规则,而netfilter执行规则。

centos7.X:防火墙在6.X防火墙的基础之上提出了新的防火墙管理工具,提出了区域的概念,通过区域定义网络链接以及安全等级。

 

5.怎样学好防火墙的配置?

  1)OSI7层模型以及不同层对应哪些协议必须很熟悉  # 基础必备

  2)TCP/IP三次握手,四次断开的过程,TCP HEADER,状态转换  # 基础必备

  3)常用的服务端口要非常清楚了解。  # 基础必备

  4)常用服务协议的原理,特别是http协议,icmp协议。  # 基础必备

  5)能够熟练的利用tcpdump和wireshark进行抓包并分析,这样会更好  # 拓展

  6)对计算机网络有研究,至少基本路由交换要很熟悉  # 拓展

 

6、企业中安全配置原则

  尽可能不给服务器配置外网IP,可以通过代理转发或者通过防火墙映射。

  并发不是特别大情况有外网IP,可以开启防火墙服务。

  大并发的情况,不能开iptables,影响性能,利用硬件防火墙提升架构安全。

标签:iptables,防火墙,firewalld,nftables,iptalbes,Linux,管理工具
From: https://www.cnblogs.com/dirgo/p/17602517.html

相关文章

  • 开启firewalld或iptables的日志记录
    文件名:ip_fire.sh内容:#!/bin/bash#iptablesiptables_run(){#修改日志文件grep-e"^kern.*"/etc/rsyslog.confflag_k=$?if[$flag_k-eq0]thenecho"rsyslog日志指定文件已存在"elsesed-i'/#kern.*......
  • Proxmox VE软件防火墙的配置
    1软件防火墙的基本概念防火墙是计算机网络中用于保护网络安全的关键技术。防火墙可以是硬件设备部署在网络出口,也可以是软件部署在终端设备出口。本文主要介绍软件防火墙。软件防火墙可以根据网络流量的方向(进/出),以及报文中的源IP地址、目的地址、协议、源端口和目的端口等字段......
  • 【Azure 环境】ARM部署模板大于4MB的解决方案及Linked Template遇见存储账号防火墙无
    问题一:在ADFPipeline部署ARMTemplate报错“Deploymentfailed--therequestcontentsizeexceedsthemaximumsizeof4MB”【解答】4MB是一个固定限制,不可以修改其大小。 如果Template文件太大,需要把拆分成多个后,通过LinkedTemplate的方式部署。 在部署的时候,ARM通过main......
  • 【Azure 环境】ARM部署模板大于4MB的解决方案及Linked Template遇见存储账号防火墙无
    问题一:在ADFPipeline部署ARMTemplate报错“Deploymentfailed--therequestcontentsizeexceedsthemaximumsizeof4MB”【解答】4MB是一个固定限制,不可以修改其大小。 如果Template文件太大,需要把拆分成多个后,通过LinkedTemplate的方式部署。 在部署的时候,ARM通......
  • ufw设置防火墙未生效
    防火墙规则的顺序很重要。由于你一开始就为所有端口都允许使用端口80,因此此规则将与所有请求匹配,并且以后出现的拒绝规则将永远不会被匹配。所以,如果你需要的东西块particluarly,把它放在开头,然后让所有。要查看带有参考号的规则,请使用以下命令:sudoufwstatusnumbered然后,首......
  • iptables和firewalld开通策略日志
    我的iptables中有这个规则:iptables-AINPUT-s192.168.11.0/24-jLOG我的问题是:iptables日志文件在哪里,我该如何更改?这些日志由内核生成,因此它们将转到接收内核日志的文件: /var/log/kern.log 。如果要将这些日志重定向到其他文件,则无法通过iptables完成。它可以在调......
  • firewalld开启防火墙日志记录和指定日志记录位置
    CentOS操作系统中Firewalld防火墙默认是不记录日志的,如果服务器性能允许,可以通过修改配置文件,使Firewalld防火墙记录日志,这样我们可以通过防火墙记录的日志,查询过滤拒绝的非法ip,把这些ip放入到黑名单中。修改配置文件:/etc/firewalld/firewalld.conf 修改为:LogDenied=all......
  • Linux防火墙iptables基础详解
    一、前言防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种。无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘。而我们的任务就是需要去定义到底防火墙如何工作,这就是防火墙的策略,规则,以达到让它对出入网络的IP、数据进行检测。目......
  • 如何使用iptables防火墙模拟远程服务超时
    前言超时,应该是程序员很不爱处理的一种状态。当我们调用某服务、某个中间件、db时,希望对方能快速回复,正确就正常,错误就错误,而不是一直不回复。目前在后端领域来说,如java领域,调用服务时以同步阻塞调用为主,此时一般会阻塞当前线程,等待结果。如果我们设置了超时时间还好,一段时间等不......
  • linux防火墙相关操作
    一、防火操作墙相关命令1、查看防火墙状态:systemctlstatusfirewalld.service注:active是绿的running表示防火墙开启2、关闭防火墙:systemctlstopfirewalld.service3、开机禁用防火墙自启命令:systemctldisablefirewalld.service4、启动防火墙:systemctlstartfirewal......