iptable防火墙

news2024/9/27 16:53:38

主要作用:

  • 隔离功能,在工作中,防火墙 的主要作用决定哪些数据可以被外网访问以及哪些数据可以进入内网访问

一般部署在网络边缘或者主机边缘,作用于网络层

安全技术:

1、入侵检测系统:

  • 检测病毒、木马,不会阻断网络访问 ,时候提供报警和监督。类似监控 ,看着你。但是不干预,出事以后再来找你

2、入侵防御系统:

  • 一旦检测出威胁,会立即阻断,主动的方式保护网络安全。透明模式工作,一般都是在线部署的方式(所有数据进出的必经之路 )

现在市面上大部分的防火墙都是上述二者的结合体

防火墙的类型 :

  1. 软件防火墙:例:360、金山毒霸 、iptables、firewalld
  2. 硬件防火墙 :例:路由器 、交换机 、三成交换机

防火墙保护范围:

  1. 主机防火墙 :服务范围就是当前自己的主机
  2. 网络防火墙 :必经之路

实现方式:

  1. 硬件防火墙,既有专业的硬件来实现防火墙功能,又有软件来进行配合
  2. 软件防火墙 :代码实现,判断

linux防火墙:

firewalld    centos7专门自带的

iptables包过滤防火墙

selinux自带的安全工具

集成在一个内核中:netfilter组件

iptables包过滤防火墙:

工作在:网络层

针对数据包进行过滤和限制iptables属于用户态

netfilter属于内核态

过滤数据包: ip地址、端口、协议。都可以在iptables中进行配置,可以限制,也可以放行

协议:tcp协议  需要三次握手和四次挥手,安全性高

iptables的构成和工作机制

由四表五链组成 (selinux也是一个表,不在讨论范围之内 )
四表:
  1. raw:连接跟踪机制,加快封包穿过防火墙的速度。,数据包跟踪
  2. mangle:数据标记
  3. nat:地址转换表
  4. filter:过滤规则表,根据规则来定义或老过滤符合条件的数据包,默认表

四表优先级:

raw——mangle——nat——filter

五链:
  1. INPUT:处理数据包进入本机的规则
  2. OUTPUT:处理数据包发出的规则,一般不做处理
  3. prerouting:处理数据包进入的规则
  4. postrouting:处理数据包离开本机之后规则 结合地址转换使用
  5. FORWARD:处理数据转发规则

iptables的规则:

  • 表里面有链,链里面有规则,规则就是我们自定义的对于数据包的控制命令。

匹配顺序:

  1. 根据表的优先级匹配,在表中从上到下进行检查,找到匹面规则立即停止,不再表中向下继续查找,如果匹配不到规则,按照链的默认规则进行处理。
  2. 报文流向;
  • 流入本机: prerouting --->iuput--->用户进程(httpd服务)--->请求---->响应---->数据要返回用户
  • 流出本机: httpd--->响应--->output------>postrouting-(地址转换) ---------->用户

转发: 数据包进来,肯定不是同一网段,路由转发--->forward--->数据包出去,不允许转发,数据包直接丢弃

iptables的命令格式

  • iptabless [ -t 表名 ] 管理选项 [链名] [匹配选项] [ -j 控制类型]

       注:如不指定表名,默认filter表

管理选项:除了v和n,其他都是大写

  • -A:在链的末尾追加一条 添加

  • -I :在链中插入一条新的规则,可以指定序号, -I后加数字表示序号

  • -Р:修改链的默认策略

  • -D:删除

  • -R:修改,替换规则

  • -L:查看链中的规则

    vnL (v、n小写 ,要在L前面 )

  • v:显示详细信息

  • n:把规则以数字形式进行展示

  • -F:清空链中的所有规则(慎用!)

匹配条件: 小写

  • -p:指定匹配的数据包协议类型

  • -s:指定匹配的数据包源ip地址

  • -d:指定匹配数据包的目的ip地址

  • -i:指定数据包进入本机的网络接口

  • -o:指定数据包离开本机使用的网络接口

  • -sport:指定源端口号

  • -dport:指定目的端口号

控制类型:大写

  • ACCEPT:允许数据包通过

  • DROP:拒绝,直接丢弃数据包,不给出任何信息回应

  • REJECT:拒绝,会给响应相信信息

  • SNAT:修改数据包源ip地址

  • DNAI:修改数据包的目的地址

例:
iptables  -A INPUT  -s 192.168.86.10,192.168.86.30 -p icmp -j REJECT
表示拒绝10-30访问本机  (指定多个IP地址要用逗号隔开)
例:
iptables -A INPUT -d tcp --dport 80 -i REJECT
表示拒绝访问80端口

(拒绝端口是协议在前,端口在后)
例:
iptables -A IPUT -s 192.168.233.20 -p tcp --dport 80 -j ACCEPT

表示只允许20网络连接80端口
例:
iptables -vnL --line-number       #给规则加上序号

iptables -D INPUT 4         指定链里的规则序号删除 
例:
iptables -R INPUT 1 -p icmp -j REJEcl
修改链的默认规则  (一般不用)

在生产中 ,iptable所有的链的默认规则都是 DROP (相当于白名单)

通用匹配

可以匹配网络协议、端口、IP地址等多个条件

例:
iptables -A INPUT -s 192.168.86.0/24  -p tcp --dport 80 - REJECT

表示禁止整个网段访问80端口的服务
例:
iptables -AINPUT -p tcp --dport 22:80

禁止22端口和80端口 (多个端口之间用冒号隔开,小的在前,大的在后)

隐藏模块

-p指定协议时,如tcp、udm 指明了是什么协议,就不再需要用-m指明扩展模块

指定多端口可以用冒号的形式也可以用-m隐藏模块来实现

-m可以用明确的形式指出类型 :多端口、mac地址、IP地址、数据包状态

  • -m形式指定多端口 (要用逗号隔开,不考虑大小顺序)

  1. -m multiport --dport  源端口号 
  2. -m multiport --sport  目的端口号
例:
iptables -A INPUT -p tcp -m multiport --dport 22,20,443,80 -j REJECT
  • -m形式指定ip地址范围
  1. -m iprange--src-range 源ip地址的范围
  2. -m iprange --dst-range 目的地址范围
例:
iptables -A INPUT -p icmp -m iprange --src-range 192.168.86.20-192.168.86.30 -j REJECT
 
  • -m形式指定mac地址(用的少 )
  1. -m mac --mac -source
例:
iptables -A INPUT -p icmp -m mac --mac-source 00:0c:29:92:4e:48 -j DRoP

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/789815.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何进行SQL优化

一、SQL优化的主要步骤 在应用的的开发过程中,由于初期数据量小,开发人员写 SQL 语句时更重视功能上的实现,但是当应用系统正式上线后,随着生产数据量的急剧增长,很多 SQL 语句开始逐渐显露出性能问题,对生…

Oracle转Mysql出现的问题记录

学海无涯,旅“途”漫漫,“途”中小记,如有错误,敬请指出,在此拜谢! 文章目录 前言函数错误concat函数使用有区别代码示例导致问题区别及分析解决方法 时间相减代码示例导致问题区别与分析解决方法 or 不走索…

入门Linux基本指令(1)

本篇文章介绍Linux中的一些常用基本指令来供大家学习和参考。 目录 ls指令 pwd指令 cd指令 .和.. touch指令与mkdir指令 rm指令 man指令 ls指令 语法 : ls [ 选项 ][ 目录或文件 ] 功能 :对于目录,该命令列出该目录下的所有子目录与…

无符号数和有符号数的“bug”

1. 起因 在实现kmp算法时&#xff0c;出现了诡异的现象&#xff0c;看下面的代码&#xff1a; int KMP (const char *s, const char *t) {int lenS strlen (s);int lenT strlen (t);int next[lenT];get_next (next, t);int i 0;int j 0;while (i < lenS && j …

C#安装包制作过程详解

本文讲解C#安装包制作过程。 文章目录 一、安装打包插件二、项目的部署与安装三、制作安装包时注意路径一、安装打包插件 打开VS2017:工具 --> 扩展和更新 --> 联机,搜索Microsoft Visual Studio Installer Projects,如图: 下载Microsoft Visual Studio Installe…

PostgreSQL数据库动态共享内存管理器——Dynamic shared memory areas

dsm.c提供的功能允许创建后端进程间共享的共享内存段。DSA利用多个DSM段提供共享内存heap&#xff1b;DSA可以利用已经存在的共享内存&#xff08;DSM段&#xff09;也可以创建额外的DSM段。和系统heap使用指针不同的是&#xff0c;DSA提供伪指针&#xff0c;可以转换为backend…

Hbase基础概念

HBase 一、HBase的数据模型1.HBase数据存储结构2.HBase存储概念3.HBase基本架构 二、HBase Shell1.DDL(Data Definition Language)2.DML&#xff08;Data Manipulation Language&#xff09; 三、HBase组成架构1. Master架构2. RegionServer架构 四、HBase读写流程1.写流程MemS…

AI数字人:金融数字化转型的“关键先生”

今年年初ChatGPT的火热&#xff0c;在全球掀起一阵生成式AI&#xff08;AIGC&#xff09;热潮。国外的OpenAI、国内的百度等企业&#xff0c;都在AIGC上强力布局。 各种应用场景中&#xff0c;AIGC助力的数字人引起了市场注意。 事实上&#xff0c;数字人不是个新鲜事。早在1…

Linux 系统下 “Verilog” 编程配置

文章目录 简介Verilog HDLIverilogGtkwave 环境搭建软件的安装Vim 之 Verilog 语法高亮配置 简单的计数器示例计数器程序的编写仿真测试 简介 Verilog HDL Verilog HDL 是一种用于设计数字电路的硬件描述语言&#xff0c;它可以用来描述数字电路的功能和结构&#xff0c;并且可…

云服务器AccessKey执行命令

人之所以痛苦&#xff0c;在于追求错误的东西。如果你不给自己烦恼&#xff0c;别人也永远不可能给你烦恼。因为你自己的内心&#xff0c;你放不下。 好好的管教你自己&#xff0c;不要管别人。 漏洞实战 查看所有实例信息 A.exe -a xxx -s xxx ecs -list执行命令 A.exe -a…

新能源汽车充电桩最重要的模块设备是什么

你是否曾经遇到过充电桩无法给你电动汽车提供电源的问题?或者你曾经怀疑过为什么充电桩速度如此缓慢?其实&#xff0c;这一切都可能与充电桩最重要的模块设备——控制主板有关。 交流充电桩由充电桩外壳、控制主板、刷卡模块、计费控制、显示屏、通信模块、继电器、开关电源等…

JumpServer堡垒机

文章目录 JumpServer堡垒机堡垒机介绍堡垒机产生的原因堡垒机主要功能 Jumpserver安装与配置Jumpserver Web界面用户管理资产管理添加Linux主机 命令过来规则创建审计台操作说明会话审计日志审计 工作台操作说明邮箱配置 JumpServer堡垒机 堡垒机介绍 下图来自百度百科 堡垒机…

面试常问八股文之java篇

JAVA篇 1、为什么重写equals方法的时候要重写hashCode方法&#xff1f; 为了不违背“相同对象必须要有相同hash值"的约定&#xff0c;对于基本数据类型比较的是数值是否相等&#xff0c;对于引用类型数据比较的是对象地址是否同等&#xff0c;在object中equal方法也是默…

(学习笔记-IP)IP协议相关技术

DNS 我们在上网的时候&#xff0c;通常使用的方式是域名&#xff0c;而不是IP地址&#xff0c;因为域名方便人类记忆。 那么实现这一技术的就是DNS域名解析器&#xff0c;DNS可以将域名网址自动转换为具体的IP地址。 域名的层级关系 DNS中的域名都是用句点来分隔的&#xff0…

软件升级相关

文章目录 一、升级方案1、移动端升级2、window 升级SquirrelSparkle 一、升级方案 1、移动端升级 腾讯Bugly &#xff0c;支持Android 平台、iOS平台、Cocos2D、Unity3D。 2、window 升级 windows的exe的打包及升级工具 Squirrel Squirrel 是一款免费的开源exe升级工具&a…

NFT市场泡沫破裂了吗?投资NFT是否仍然安全?

近期&#xff0c;NFT市场的价格出现了明显的下跌趋势&#xff0c;许多人开始担心NFT市场是否已经进入了泡沫破裂的阶段。但是&#xff0c;我们需要认真分析这个问题&#xff0c;并且探讨投资NFT是否仍然安全。 NFT&#xff08;Non-Fungible Token&#xff09;是一种非同质化代币…

JMerter安装配置以及使用(笔记记录)

JMerter安装配置以及使用&#xff08;笔记记录&#xff09; 安装JDK安装JMeterJMeter使用元件执行的顺序参数详解参数配置之CSV数据文件设置断言响应断言JSON断言 数据提取XPath提取器JSON提取器 JMeter属性JMeter录制脚本JMeter直连数据库逻辑控制器如果&#xff08;IF&#x…

reference文献引用列表要求

目录 1、基本要求 2、文献格式 3、引用技巧 4、特殊情况&#xff1a; 有新闻和网络文章的引用&#xff1a; 1、基本要求 对于每一篇paper&#xff0c;我们需要按照文中出现的顺序&#xff0c;列出文中引用的所有文献。 对于文献的引用有如下要求&#xff1a; a】顺序要求…

【node.js】03-http模块

目录 一、什么是http模块 二、创建基本的WEB服务器 三、req请求对象 四、res响应对象 五、根据不同的url响应不同的JSON内容 一、什么是http模块 http 模块是 Node.js 官方提供的、用来创建 web 服务器的模块。通过 http 模块提供的 http.createServer() 方法&#xff0c;…

回归预测 | MATLAB实现TCN-BiLSTM时间卷积双向长短期记忆神经网络多输入单输出回归预测

回归预测 | MATLAB实现TCN-BiLSTM时间卷积双向长短期记忆神经网络多输入单输出回归预测 目录 回归预测 | MATLAB实现TCN-BiLSTM时间卷积双向长短期记忆神经网络多输入单输出回归预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.MATLAB实现TCN-BiLSTM时间卷积…