安全技术和防火墙(iptables)

安全技术

入侵检测系统:特点是不阻断网络访问,主要是提供报警和事后监督,不主动介入,类似于监控。

入侵防御系统:透明模式工作,对数据包,网络监控,服务攻击,木马,蠕虫,系统漏洞等等进行准确的分析和判断,在判定攻击行为后会立即阻断。它是主动防御(所有的数据在进入本机之前必须要通过的设备或者是软件)

防火墙

作用就是隔离,工作在网络或者主机的边缘。对网络或者主机的数据包基于一定的规则进行检查,匹配到的规则放行,匹配不到的规则拒绝,数据包将会被丢弃。只开放允许访问的策略(白名单机制,拒绝所有,允许个别)

防水墙:是一种防止内部信息泄露的产品,对外有防火墙的功能,对内是透明模式工作。类似于监控

应用层防火墙

在应用层对数据进行检查

优点:更安全,精准定位问题

缺点:所有数据都会检查,增加防火墙的负荷

包过滤防火墙(对数据包进行控制)

特点:网络层对数据包进行选择,选择的依据是防火墙设置的策略

策略:包含ip地址、端口、协议

优点:处理速度快,易于维护

缺点:无法检查应用层数据,就是病毒无法进行处理

iptables这个是Linux自带的防火墙,一般用于内部配置,对外一般不使用(对外使用专业的)

firewalld 这个是Linux自带的防火墙,它是centos7版本以后默认的防火墙

iptables

需要安装iptables 和 iptables-services

iptables:工作在网络层,针对数据包实施过滤和限制(包过滤防火墙)

面试题

通信的要素:五大要素和四大要素

五大要素:源ip、目的ip、源端口、目的端口、协议(TCP、UPD)

四大要素:源ip、目的ip、源端口、目的端口

内核态和用户态:

内核态:涉及到软件的底层代码或者系统的基层逻辑,以及一些硬件的编码,如果数据是内核态处理,速度相对较快

iptables的过滤规则就是由内核来进行控制的

用户态

应用层软件层面,人为控制的一系列操作,使用功能

数据只通过用户态处理,速度是比较慢的

面试题

iptables的配置和策略:四表五链

iptables四表:1.raw表:用于控制数据包的状态,跟踪数据包的状态

                       2.mangle表:修改数据包的头部信息

                       3.NAT表:网络地址转换,可以改变数据包的源地址和目的地址

                       4.filter表:也是iptables的默认表,不做声明,默认就是filter表,它的作用就是过滤                            数据包,控制数据包的进出,以及接受和拒绝数据包

iptables五链:1.PREROUTING链:处理数据包进入本机之前的规则(NAT表)

                        2.INPUT链:处理数据包进入本机的规则(filter表,即是否允许数据包进入)

                        3.OUTPUT链:处理本机发出的数据包的规则,或者是数据包离开的本机的规则                                   (filter表,一般不做设置)

                        4.FORWADR链:处理数据包转发到其他主机的规则,或者是否允许本机进行数据                             包转发

                        5.POSTROUTING链:处理数据包离开本机之后的规则(NAT表)

表里有链,链里有规则

管理选项:在表的链中插入,增加,删除,查看规则

匹配条件:数据包的ip地址、端口、协议

控制类型:允许,拒绝,丢弃

注意事项:1.不指定表名,默认就是filter表

                  2.不指定链名,默认就是所有链(必须要指定链名)

                  3.除非设置了链的默认策略,否则必须执行匹配条件(一般都是指定匹配条件)

                  4.选项,链名和控制类型都是大写,其余的都是小写

控制类型

ACCEPT:允许数据包通过

DROP:直接丢弃数据包,没有任何回应信息

REJECT:拒绝数据包通过,数据包也会被丢弃,但是会有一个响应的信息

SNAT:修改数据包的源地址  

DNAT:修改数据包的目的地址

管理选项(都是大写)

-A  在链中添加一条规则,是在链尾添加

-I( i 的大写) 指定位置插入一条规则

-P  指定默认规则,链的规则一般都是设置成拒绝(默认是允许)

-D 删除规则

-R 修改规则(一般不用)

-vnL  查看规则     v是显示详细信息  n是以数字形式展示内容   L是查看

--line-numbers:显示规则的编号,和查看一起使用  -vnL --line-numbers

-F  清空链中所有规则

-X  清除自定义链中的规则

匹配条件

-p  指定协议类型

-s  指定匹配的源ip地址

-d  指定匹配的目的ip地址

-i 指定数据包进入本机的网络设备(ens33)

-o  指定数据包离开本机的网络设备

--sport  指定源端口

--dport  指定目的端口

iptables的命令格式

iptables -t  表名  管理选项  链名(大写)   匹配条件   -j   控制类型

所有的控制类型前面都是-j

iptables 基于的是本机策略 ,谁来访问本机 

匹配原则:每个链中规则都是从上到下的顺序匹配,匹配到之后就不再向下匹配

如果链中没有规则,则执行链的默认策略进行处理

查看规则 

iptables -vnL --line-numbers

添加规则 
指定ip

iptables -A INPUT -p icmp -j REJECT 拒绝其他所有主机ping本机

iptables  -I INPUT   1  -p  icmp -j  ACCEPT  插入规则到第一条 

iptables -A INPUT -s 192.168.233.20 -p icmp -j REJECT 指定20的主机拒绝ping本机

iptables -A INPUT -s  192.168.233.20,192.168.233.30 -p icmp -j DROP 指定多个主机拒绝ping本机

指定端口

iptables -A INPUT -p tcp --dport 22  -j REJECT  拒绝端口22的主机访问本机

iptables -AINPUT -s 192.168.233.20 -p tcp --dport 22 -j REJECT  拒绝ip20主机访问端口22的本机

删除规则

iptables -D INPUT 1

修改规则

iptables -R INPUT 1 -s 192.168.233.30 -p tcp --dport 80 -j REJECT 拒绝30的主机访问端口80的本机

修改链的策略

网络设备

iptables -A INPUT -i ens33 -s 192.168.233.20 -p tcp --dport 80 -j ACCEPT 允许网卡是ens33的20主机访问端口是80的本机

iptables -A INPUT -s 192.168.233.0/24 -p tcp --dport 80 -j REJECT 拒绝整个网段访问本机

一次性对多个端口进行操作

iptables -A INPUT -p tcp --dport 22:80 -j REJECT

-m拓展模块

一次禁止多端口或ip范围或mac地址

iptables -A INPUT -p tcp -m multiport --dport 80,22,21,23,3306 -j REJECT 禁止多端口

iptables -A INPUT -p tcp -m iprange --src-range 192.168.233.20-192.168.233.30  --dport 80 -j REJECT 拒绝20-30的IP访问本机的80端口

--src-range  源地址池

--dst-range 目的地址池

-m multiport --sport 源端口池

-m multiport --dport  目的端口池

-m iprange --src-range  源地址池

-m iprange --dst-range 目的地址池

匹配mac地址

iptables -A INPUT -m mac --mac-source 00:0c:29:94:6d:dd0 -j DROP

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

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

相关文章

HTTP协议中的各种请求头、请求类型的作用以及用途

目录 一、http协议介绍二、http协议的请求头三、http协议的请求类型四、http协议中的各种请求头、请求类型的作用以及用途 一、http协议介绍 HTTP(HyperText Transfer Protocol,超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应…

python flask 入门-helloworld

学习视频链接: 01-【前奏】课程介绍_哔哩哔哩_bilibili 1.安装flask pip install flask 踩坑记:本机不要连代理,否则无法install 提示报错valueError: check_hostname requires server_hostname 2.程序编写 在根目录下创建 app.py fr…

React实现二级评论

1. 什么是二级评论 图片来源–blackfrog的掘金文章 口语化的讲当我发布一个评论的时候就是一级评论,当我回复我发布的评论的时候就是二级评论并且将所有回复二级评论的评论也归于二级评论。 2. 二级评论功能的实现逻辑 在这里后端设计了四个接口分别是 获取所有…

jdk1.8升级到jdk11遇到的各种问题

一、第三方依赖使用了BASE64Decoder 如果项目中使用了这个类 sun.misc.BASE64Decoder,就会导致错误,因为再jdk11中,该类已经被删除。 Caused by: java.lang.NoClassDefFoundError: sun/misc/BASE64Encoder 当然这个类也有替换方式&#xf…

第 27 篇 : 搭建maven私服nexus

官网文档 1. 下载应该很慢, 最好是能翻墙 nexus-3.69.0-02-java8-unix.tar.gz 2. 上传到/usr/local/src, 解压及重命名 tar -zxvf nexus-3.69.0-02-java8-unix.tar.gz rm -rf nexus-3.69.0-02-java8-unix.tar.gz mv nexus-3.69.0-02 nexus ls3. 修改配置 cd /usr/local/sr…

作 业 二

cs与msf权限传递 1、进入cs界面,首先来到 Cobalt Strike 目录下,启动 Cobalt Strike 服务端 2、用客户端进 3、建立监听 4、生成脚本文件 5、开启服务,让win_2012 下载木马文件并运行 6、显示已经获取到了win的权限 转到Metasploit Framework 7、进去m…

智慧仓储的秘密武器:数据可视化的应用

智慧仓储中数据可视化是如何应用的?在现代物流和供应链管理中,智慧仓储已成为企业提升效率、降低成本和优化运营的重要手段。而数据可视化作为智慧仓储的重要工具,通过将复杂的数据转化为直观、易理解的图表和图形,极大地提升了仓…

MySQL实训--原神数据库

原神数据库 er图DDL/DML语句查询语句存储过程/触发器 er图 DDL/DML语句 SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS 0;DROP TABLE IF EXISTS artifacts; CREATE TABLE artifacts (id int NOT NULL AUTO_INCREMENT,artifacts_name varchar(255) CHARACTER SET utf8 COLLATE …

玩机进阶教程----MTK芯片使用Maui META修复基带 改写参数详细教程步骤解析

目前mtk芯片与高通芯片在主流机型 上使用比较普遍。但有时候版本更新或者误檫除分区等等原因会导致手机基带和串码丢失的故障。mtk芯片区别与高通。在早期mtk芯片中可以使用工具SN_Writer_Tool读写参数。但一些新版本机型兼容性不太好。今天使用另外一款工具来演示mtk芯片改写参…

Cesium 基本概念:创建实体和相机控制

基本概念 Entity // 创建一个实体 const entity_1 viewer.entities.add({position: new Cesium.Cartesian3(0, 0, 10000000),point: {pixelSize: 10,color: Cesium.Color.BLUE} });// 通过经纬度创建实体 const position Cesium.Cartesian3.fromDegrees(180.0, 0.0); // 创…

MySQL——自连接及联表查询练习

自连接 自己的表和自己的表连接,核心:一张表拆为两张一样的表即可。 父类: categoryidcategoryName2信息技术3软件开发5美术设计 子类: pidcategoryidcategoryName34数据库28办公信息36web开发57ps技术 子类的pid 父类的cate…

计算机缺失d3dx9_43.dll的多种解决方法,哪种更推荐使用

我在使用计算机时遇到了一个问题,系统提示我丢失了d3dx9_43.dll文件。丢失d3dx9_43.dll文件通常是由于DirectX组件未正确安装或损坏所致,这直接影响到依赖于DirectX的游戏和应用的运行。经过一番搜索和尝试,我找到了多种修复这个问题的方法&a…

2024最新SCI期刊影响因子发布(JCR2023)(含Top100榜单)

Clarivate Analytics(科睿唯安)2024年度《期刊引证报告》(Journal Citation Reports,简称JCR)发布了SCI期刊2023年影响因子(IF)。该指数备受访问学者、联培博士及博士后研究者关注。今天知识人网小编就简要介绍最新SCI…

【STM32 RTC实时时钟如何配置!超详细的解析和超简单的配置,附上寄存器操作】

STM32 里面RTC模块和时钟配置系统(RCC_BDCR寄存器)处于后备区域,即在系统复位或从待机模式唤醒后,RTC的设置和时间维持不变。因为系统对后备寄存器和RTC相关寄存器有写保护,所以如果想要对后备寄存器和RTC进行访问,则需要通过操作…

一文详解:什么是企业邮箱?最全百科

什么是企业邮箱?企业邮箱即绑定企业自有域名作为邮箱后缀的邮箱,是企业用于内部成员沟通和客户沟通的邮箱系统。 一、企业邮箱概念拆解 1.什么是企业邮箱? 企业邮箱即使用企业域名作为后缀的邮箱系统。它不仅提供专业的电子邮件收发功能&a…

【学习】使用PyTorch训练与评估自己的ResNet网络教程

参考:保姆级使用PyTorch训练与评估自己的ResNet网络教程_训练自己的图像分类网络resnet101 pytorch-CSDN博客 项目地址:GitHub - Fafa-DL/Awesome-Backbones: Integrate deep learning models for image classification | Backbone learning/comparison…

PyScada(四)构建用户 HMI

构建用户 HMI(前端)的简短说明 在后端HMI部分: 图表,添加新图表页面,添加页面Widget,添加一个 Widget,在 Page 下选择您在 2 中添加的页面,并在Content下选择1 中的图表。小部件控…

【M1/M2】详细说明Parallels Desktop虚拟机的安装使用

希望文章能给到你启发和灵感~ 如果觉得有帮助的话,点赞+关注+收藏支持一下博主哦~ 阅读指南 开篇说明什么是Paralles Desktop一、基础环境说明1.1 硬件环境1.2 软件环境二、安装Parallels DeskTop2.1 下载软件安装包三、Parallels 下配置Windows 11 系统3.1 Windows 11安装3…

PostgreSQL 简介与基础(一)

1. 什么是 PostgreSQL 1.1 概述 PostgreSQL(常简称为Postgres)是一种功能强大的开源关系型数据库管理系统(RDBMS)。它以其可靠性、强大的功能和符合标准的特性著称。PostgreSQL 支持大部分 SQL 标准,并且具有许多现代…

护网面试内容

1.自我介绍 2.如何判断是不是误判 分析请求、响应内容,判断是否攻击成功首先看告警事件名称判断是网络攻击事件还是web攻击事件,网络攻击事件:定位五元组信息(源IP、目的IP、源端口、目的端口、协议),对整…