当前位置: 首页 > news >正文

iptables规则表及规则链及语法

一、Linux防火墙基础

1、Linux包过滤防火墙

netfilter:Linux2.4.x引入了一个子系统,它作为一个通用的、抽象的框架,提供一整套的hook函数的管理机制,使得诸如数据包过滤、网络地址转换(NAT)和基于协议类型的连接跟踪成为了可能。位于Linux内核中的包过滤功能体系,称为Linux防火墙的“内核态”。
iptables:与最新的3.5版本Linux内核集成的IP信息包过滤系统。如果Linux系统连接到因特网或LAN、服务器或连接LAN和因特网的代理服务器,则该系统有利于在Linux系统上更好地控制IP信息包过滤和防火墙配置。iptables位于/sbin/iptables,是用来管理防火墙规则的工具。iptables称为Linux防火墙的“用户态”。

2、包过滤原理

包过滤主要是在网络层,针对IP数据包。包过滤主要体现在对包内的IP地址、端口等信息的处理上。
在这里插入图片描述

二、iptables

iptables其实并不是真正的防火墙,我们可以把它理解成一个客户端代理,用户通过iptables这个代理,将用户的安全设定执行到对应的“安全框架”中,这个“安全框架”才是真正的防火墙,这个框架的名字叫netfilter。netfilter才是防火墙真正的安全框架。netfilter位于内核空间。iptables其实是一个命令行工具,位于用户空间,我们用这个工具操作真正的框架。netfilter/iptables组成的Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤、封包重定向和网络地址转换等功能。
iptables是一个基于命令行的防火墙工具,它使用规则链来允许/阻止网络流量。当一条网络连接试图在你的系统中建立时,iptables会查找其对应的匹配规则。如果找不到,iptables在作用是区分不同功能的规则,并且存储这些规则。iptables的结构是由表组成,而tables是由链组成,链又是由具体的规则组成。因此我们在编写iptables规则时,要先指定表,再指定链。tables的作用是区分不同功能的规则,并且存储这些表。

1、安装与配置

CentOS 7之后系统默认使用Firewalld防火墙,这里如果要使用iptables需要进行安装并停用Firewalld防火墙。
在这里插入图片描述
在这里插入图片描述

2、规则链

基于防火墙策略设置的各种防护规则,防火墙规则的执行顺序认为从前到后依次执行、遇到匹配的规则就不在向下检查,如果遇到不匹配的规则则会继续向下进行。
在这里插入图片描述
在这里插入图片描述

3、规则表

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、匹配流程

在这里插入图片描述
在这里插入图片描述

三、iptables语法

在这里插入图片描述

1、语法构成

在这里插入图片描述

2、常见控制类型

在这里插入图片描述

3、常见选项

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、永久性保存修改的规则

在这里插入图片描述

5、提供状态化链接

在这里插入图片描述

相关文章:

  • “云”上交通,“翼”路畅行
  • java计算机毕业设计科学评价系统源码+数据库+系统+lw文档+mybatis+运行部署
  • 【分享】“简道云“ 在集简云平台集成应用的常见问题与解决方案
  • springboot保险公司车辆事故跟踪系统毕业设计源码011444
  • k8s如何部署kubernetes-dashboard
  • uniapp开发微信、支付宝小程序订阅消息
  • IC入行第一步:怎样选择岗位和公司?
  • flink1.13报错:The file STDOUT does not exist on the TaskExecutor
  • java计算机毕业设计口腔医院网站源码+数据库+系统+lw文档+mybatis+运行部署
  • 比较两个文本,找出在另一文本中出现过的串并换某种格式输出
  • Windows下安装虚拟环境
  • SpringMVC之注解驱动的控制器
  • Flask--路由配置
  • Linux定时器
  • iNFTnews | 一词解答区块链技术普及的制胜关键
  • [case10]使用RSQL实现端到端的动态查询
  • 3.7、@ResponseBody 和 @RestController
  • Android Studio:GIT提交项目到远程仓库
  • flask接收请求并推入栈
  • IIS 10 PHP CGI 设置 PHP_INI_SCAN_DIR
  • Java小白进阶笔记(3)-初级面向对象
  • Material Design
  • Spring核心 Bean的高级装配
  • 从0实现一个tiny react(三)生命周期
  • 对超线程几个不同角度的解释
  • 经典排序算法及其 Java 实现
  • 开源地图数据可视化库——mapnik
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 浏览器缓存机制分析
  • 如何利用MongoDB打造TOP榜小程序
  • 思考 CSS 架构
  • !!【OpenCV学习】计算两幅图像的重叠区域
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (4) PIVOT 和 UPIVOT 的使用
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (floyd+补集) poj 3275
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (九)c52学习之旅-定时器
  • (亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)...
  • (译) 函数式 JS #1:简介
  • (转)Android学习笔记 --- android任务栈和启动模式
  • (总结)Linux下的暴力密码在线破解工具Hydra详解
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .net 7 上传文件踩坑
  • .NET Framework杂记
  • .net 使用$.ajax实现从前台调用后台方法(包含静态方法和非静态方法调用)
  • .Net 中的反射(动态创建类型实例) - Part.4(转自http://www.tracefact.net/CLR-and-Framework/Reflection-Part4.aspx)...
  • .net反混淆脱壳工具de4dot的使用
  • .NET开发者必备的11款免费工具
  • .net流程开发平台的一些难点(1)
  • @DependsOn:解析 Spring 中的依赖关系之艺术
  • [ 渗透工具篇 ] 一篇文章让你掌握神奇的shuize -- 信息收集自动化工具
  • [AX]AX2012 R2 出差申请和支出报告