Linux防火墙基础

一、Linux防火墙的状态机制

        1.iptables是可以配置有状态的防火墙,其有状态的特点是能够指定并记住发送或者接收信息包所建立的连接状态,其一共有四种状态,分别为established  invalid  new  related。

        established:该信息包已建立连接,该连接一直用于发送和接收信息包完全有效

        invalid:该信息包和其他都无关联,可能包含错误的信息

        new:该信息包已经或即将启动新的连接,或者还未与用于发送和接收信息包相关联

        related:表示该信息包已经或正在启动新的连接并和已建立的连接相关联

二、Linux防火墙语法

        1.数据包流向:

                prerouting -> forward -> postrouting

                prerouting -> input -> 本机output -> postrouting

        2.iptables根据不同的数据包处理功能使用不同的规则表,其包括三个表:filter  nat  mangle

                filter:默认的表,包含真正的的防火墙过滤规则,其中的规则链包括:input  output  forward

                nat:包含源地址、目标地址及端口转换使用规则,其中的规则链包括:prerouting  output和postrouting

                mangle:包含用于设置特殊的数据包路由标志的规则,这些标志随后被filter表中的规则检查,其中的规则链包括:prerouting  input  forward  postrouting  output

        3.表对应的相关规则链的功能:

                input链:当一个数据包由内核中的路由计算确定为本地的linux系统后,会通过input链检查

                output链:保留给系统自身生成的数据包

                froward链:经过linux系统路由的数据包

                prerouting链:用于修改目的地址(DNAT)

                postrouting链:用于修改源地址(SNAT)

        4.定义默认策略

                默认策略定义格式:iptables  -t(表名)  -P(链名) (动作)

                -t:表示指定默认策略应用于哪个表,可以使用filter nat  mangle,如果没有指定使用哪个,默认使用filter表

                链名:指定默认策略应用于哪个链,可以使用input  ouput等

                动作:处理数据包的动作,可以使用accept(接收数据包)和 drop(丢弃数据包)

        5.查看iptables规则:

                命令格式:

                        iptables  -t(表名)    -L(链名)

                        -L:查看指定表和指定链的规则列表

        6.增加、插入、删除、替换iptables规则

                参数说明:

                        -t 表名:定义默认策略将应用于哪个表

                        -A:新增一条规则,该规则将会增加到规则列表的最后一行,该参数不能使用规则编号

                        -I:插入一条规则,原本该位置上的规则会往后顺序移动,如果指定规则编号,则在第一条规则前插入

                        -D:从规则列表中删除一条规则,可以输入完整规则或直接指定规则编号来删除

                        -R:替换某条规则,规则被替换并不会改变顺序,必须指定要替换的规则编号

                规则编号:规则编号在插入、删除和替换规则时使用,编号按照规则列表的顺序排列,第一条规则编号为1

                        -i | o 网卡名称:i用于指定数据包从哪块网卡进入,o用于指定数据包从那快网卡输出

                        -p 协议类型:指定规则应用的协议,包含tcp  udp和icmp等

                        -s 源IP地址 |  源子网:后面接源主机IP地址或子网地址

                        --sport 源端口号:数据包的ip源端口号

                        -d 目标ip地址 | 目标子网:后面接目标主机的ip地址或子网地址

                        --dport 目标端口号:数据包的ip目标的端口号

                        -j 动作:

                                accept:接收数据包

                                drop:丢弃数据包

                                redirect:将数据包重新转向本机本机或另一台主机的某一个端口

                                reject:拦截该数据包并发回包通知对方

                                snat:源地址切换,改变数据包的源地址

                                dnat:目标地址切换,改变数据包的目的地址

                                masquerade:ip伪装。主机的ip地址由isp分配动态

                                log:日志功能,将符合规则的数据包相关信息记录在日志中

        7.清除规则和计数器

                在新建规则时往往需要清除原有的旧规则以免影响新设定的规则

                iptables  -t表名  -F  |  Z

                        -F:删除指定表中的所有规则

                        -Z:将指定规则中的数据包计数器和流量计数器归零

三、iptables基础知识

        1.iptables的状态 state

                new:本机向远程机器发送一个连接请求,这个数据包的状态时new

                established:在连接建立之后,远程主机和本机通信数据的状态

                related:和现有联机相关的新联机封包,类似于ftp这样的服务,用21号端口传送命令,用20号端口传送数据

                invalid:无效的数据包,不能识别属于哪个连接状态或没有任何连接状态,一般会被丢弃

        

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[论文学习]Adaptively Perturbed Mirror Descent for Learning in Games

[论文学习]Adaptively Perturbed Mirror Descent for Learning in Games 前言概述前置知识和问题约定单调博弈(monotone game)Nash均衡和Gap函数文章问题定义Mirror Descent 方法评价 前言 文章链接 我们称集合是紧的,则集合满足&#xff1…

Go学习:类型转换需注意的点 以及 类型别名

目录 1. 类型转换 2. 类型别名 1. 类型转换 在从前的学习中,知道布尔bool类型变量只有两种值true或false,C/C、Python、JAVA等编程语言中,如果将布尔类型bool变量转换为整型int变量,通常采用 “0为假,非0为真”的方…

使用Pygame制作“吃豆人”游戏

本篇博客展示如何使用 Python Pygame 编写一个简易版的“吃豆人(Pac-Man)” 风格游戏。这里我们暂且命名为 Py-Man。玩家需要控制主角在一个网格地图里移动、吃掉散布在各处的豆子,并躲避在地图中巡逻的幽灵。此示例可帮助你理解网格地图、角…

ubuntu磁盘扩容

ubuntu磁盘扩容 描述先在虚拟机设置里面扩容进入Ubuntu 配置使用命令行工具parted进行分区输出如下完成 描述 执行命令,查看 fs 类型是什么 lsblk -o NAME,FSTYPE,MOUNTPOINT将60G扩容到100G,其中有些操作我也不知道什么意思,反正就是成功了&#xff0…

redis底层数据结构

底层数据结构 了解下这些咱常用的数据其底层实现是啥 在提到使用哪类数据结构之前,先来了解下redis底层到底有多少种数据结构 1,sds动态字符串 概念与由来 redis是一种使用C语言编写的nosql,redis存储的key数据均为string结构&#xff0…

ChatGPT怎么回事?

纯属发现,调侃一下~ 这段时间deepseek不是特别火吗,尤其是它的推理功能,突发奇想,想用deepseek回答一些问题,回答一个问题之后就回复服务器繁忙(估计还在被攻击吧~_~) 然后就转向了GPT&#xf…

趣味Python100例初学者练习01

1. 1 抓交通肇事犯 一辆卡车违反交通规则,撞人后逃跑。现场有三人目击该事件,但都没有记住车号,只记下了车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前…

2024-我的学习成长之路

因为热爱,无畏山海

蓝桥杯备考:高精度算法之除法

我们除法的高精度其实也不完全是高精度,而是一个高精度作被除数除以一个低精度 模拟我们的小学除法 由于题目中我们的除数最大是1e9,当它真正是1e9的时候,t是有可能超过1e9的,所以要用long long

Maven jar 包下载失败问题处理

Maven jar 包下载失败问题处理 1.配置好国内的Maven源2.重新下载3. 其他问题 1.配置好国内的Maven源 打开⾃⼰的 Idea 检测 Maven 的配置是否正确,正确的配置如下图所示: 检查项⼀共有两个: 确认右边的两个勾已经选中,如果没有请…

【前端】ES6模块化

文章目录 1. 模块化概述1.1 什么是模块化?1.2 为什么需要模块化? 2. 有哪些模块化规范3. CommonJs3.1 导出数据3.2 导入数据3.3 扩展理解3.4 在浏览器端运行 4.ES6模块化4.1 浏览器运行4.2 在node服务端运行4.3 导出4.3.1 分别导出4.3.2 统一导出4.3.3 默认导出4.3.4 混用 4.…

强化学习笔记(5)——PPO

PPO视频课程来源 首先理解采样期望的转换 变量x在p(x)分布下,函数f(x)的期望 等于f(x)乘以对应出现概率p(x)的累加 经过转换后变成 x在q(x)分布下,f(x)*p(x)/q(x) 的期望。 起因是:求最大化回报的期望,所以对ceta求梯度 具体举例…

20-30 五子棋游戏

20-分析五子棋的实现思路_哔哩哔哩_bilibili20-分析五子棋的实现思路是一次性学会 Canvas 动画绘图(核心精讲50个案例)2023最新教程的第21集视频,该合集共计53集,视频收藏或关注UP主,及时了解更多相关视频内容。https:…

【HTML入门】Sublime Text 4与 Phpstorm

文章目录 前言一、环境基础1.Sublime Text 42.Phpstorm(1)安装(2)启动Phpstorm(3)“启动”码 二、HTML1.HTML简介(1)什么是HTML(2)HTML版本及历史(3)HTML基本结构 2.HTML简单语法(1)HTML标签语法(2)HTML常用标签(3)表格(4)特殊字符 总结 前言 在当今的软件开发领域&#xff0c…

Kubernetes学习之包管理工具(Helm)

一、基础知识 1.如果我们需要开发微服务架构的应用,组成应用的服务可能很多,使用原始的组织和管理方式就会非常臃肿和繁琐以及较难管理,此时我们需要一个更高层次的工具将这些配置组织起来。 2.helm架构: chart:一个应用的信息集合…

Kamailio 不通过 dmq 实现注册复制功能

春节期间找到一篇文章,需要 fg 才能看到: https://medium.com/tumalevich/kamailio-registration-replication-without-dmq-65e225f9a8a7 kamailio1 192.168.56.115 kamailio2 192.168.56.116 kamailio3 192.168.56.117 route[HANDLE_REPLICATION] {i…

grpc 和 http 的区别---二进制vsJSON编码

gRPC 和 HTTP 是两种广泛使用的通信协议,各自适用于不同的场景。以下是它们的详细对比与优势分析: 一、核心特性对比 特性gRPCHTTP协议基础基于 HTTP/2基于 HTTP/1.1 或 HTTP/2数据格式默认使用 Protobuf(二进制)通常使用 JSON/…

Intel 与 Yocto 项目的深度融合:全面解析与平台对比

在嵌入式 Linux 领域,Yocto 项目已成为构建定制化 Linux 发行版的事实标准,广泛应用于不同架构的 SoC 平台。Intel 作为 x86 架构的领导者,在 Yocto 生态中投入了大量资源,为其嵌入式处理器、FPGA 和 AI 加速硬件提供了完整的支持…

kubernetes(二)

文章目录 NamespacePodLabelDeploymentService Namespace 在Kubernetes系统中,Namespace是一种至关重要的资源类型,其主要功能在于实现多套环境的资源隔离或者多租户的资源隔离,默认情况下所有的Pod都能够相互访问,但如果不想让两…

巧妙利用数据结构优化部门查询

目录 一、出现的问题 部门树接口超时 二、问题分析 源代码分析 三、解决方案 具体实现思路 四、优化的效果 一、出现的问题 部门树接口超时 无论是在A项目还是在B项目中,都存在类似的页面,其实就是一个部门列表或者叫组织列表。 从页面的展示形式…