防御保护笔记02

防火墙

防火墙的主要职责在于:控制和防护 ---- 安全策略 --- 防火墙可以根据安全策略来抓取流量

防火墙分类

  • 按物理特性划分

    • 软件防火墙

    • 硬件防火墙

  • 按性能划分

    • 百兆级防火墙

      • 吞吐量:指对网络、设备、端口、虚电路或其他设施,单位时间内成功地传送数据的数量(以比特、字节、分组等测量)。

    • 千兆级防火墙

    • ……

  • 按防火墙结构划分

    • 单一主机防火墙

    • 路由集成防火墙

    • 分布式防火墙

    • ……

  • 按防火墙技术划分

    • 包过滤防火墙

    • 应用代理防火墙

    • 状态检测防火墙

    • ……

防火墙的发展历史

传统防火墙

包过滤防火墙

缺点:

  1. 很多安全风险集中在应用层的,所以,仅关注三四层的数据无法做到完全隔离安全风险。

  2. 逐包进行包过滤检测,将导致防火墙的转发效率过低,成为网络中的瓶颈。

与ACL匹配规则的区别

在ACL列表中,华为体系下,末尾是没有隐含规则的,即如果匹配不到ACL列表,则认为ACL列表不存在,之前可以通过,则还可以通过;但是,在防火墙的安全策略中,为了保证安全,末尾会隐含一条拒绝所有的规则,即只要没有放通的流量,都是不能通过的。

应用代理防火墙

工作范围在应用层(七层),所以会仍然处理三四层的数据包,只是工作集中在七层

缺点:

  1. 因为需要防火墙进行先一步安全识别,所以,转发效率会降低(原来的三层握手就会变成6次握手)

  2. 可伸缩性差:每一种应用程序需要代理的话,都需要开发对应对应的代理功能,如果没有开发,则无法进行代理。

状态检测防火墙

核心技术:”会话表技术“ --- 首包检测——一股数据流过来,只检测第一个数据包,通过检测第一个数据包中的五元组信息,并且根据五元组信息查找路由条目,然后转发,并且通过哈希计算。之后接收到的数据包五元组通过和之前的信息对比,如果通过就直接按照上一个转发。

下一代防火墙 (NGFW )
专用设备
入侵检测系统 (IDS)

缺点

  • IDS ---- 一种侧重于风险管理的安全机制,有很大的滞后性

特点

  • 运用旁路部署:是一种并联部署的模式,不影响其他路。

    • 交换机上的镜像口:复制其他接口抓发的数据包,并且从到镜像接口转发出去

入侵防御系统 (IPS)

特点

  • 串联部署:串接在网络里面,所有都经过监控系统

防病毒网关 (AV)

IPS检测主体是根据流量检测的,而AV检测主体是根据文件检测的

Web应用防火墙 (WAF)

C/S架构是Client/Server,B/S架构的全称为Browser/Server。

统一威胁管理 (UTM)

因为众多的专用设备导致企业在部署安全防护时需要同时不是大量的设备进行防护,则设备维护成本大大提高,所有设备都需要对流量进行检测,所以,效率很低。

在UTM中,各功能模块是串联工作,所以,检测效率并没有得到提升。但是,因为继承在了一台设备中,所以,维护成本得到降低。

下一代防火墙 (NGFW )

改进点核心:相较于之前UTM中各模块的串联部署,变为了并联部署,仅需要一次检测,所有功能模块都可以做出对应的处理。大大提高了工作效率.

为什么还要单独部署专用设备?

  • 范围问题:NGFW部署之后,部分地方无法检测到,用单独设备部署。

  • 性能问题:NGFW性能有限,多部署专用设备联动工作。

下一代防火墙的优势

防火墙的其他功能

  1. 访问控制:安全,包过滤;

  2. 地址转换:NAT;

  3. 网络环境支持:可以提供在不同环境下的支持;

  4. 带宽管理功能:

  5. 入侵检测和攻击防御:

  6. 用户认证:

  7. 高可用性:

补充知识点

  • 三层交换机的定义:是一种具备路由功能的交换机。与传统的二层交换机相比,三层交换机不仅可以像二层交换机一样转发数据包,还可以像路由器一样识别IP地址,并对数据包进行路由转发。

  • 二层接口和三层接口的区别

    • 二层接口:可以简单理解为只具备二层交换能力的接口。

      • 二层接口不能直接配置IP地址,并且不直接终结广播帧。二层接口收到广播帧后,会将其从同属一个广播域(VLAN)的所有其他接口泛洪出去。

      • 二层接口在收到单播帧后,会在MAC表中查询该数据帧的目的MAC地址,然后依据表项指引进行转发,如果没有任何表项匹配,则进行泛洪。

    • 三层接口:三层接口维护IP地址与MAC地址。

      • 三层接口终结广播帧,三层接口在收到广播帧后,不会进行泛洪处理。

      • 三层接口在收到单播帧后,首先判断其目的MAC地址是否为本地MAC地址,如果是,则将数据帧解封装,并解析出报文目的IP地址,然后进行路由查询及转发。

防火墙的控制

  • 带内管理 --- 是指网络的管理控制信息与用户网络的承载业务信息通过同一个逻辑信道传送(通过网络环境对设备进行控制,如telnet,ssh,web。注意登录设备和被登录设备之间网络需要联通)。

  • 带外管理 --- 网络的管理控制信息与用户网络的承载业务信息在不同的逻辑信道传送(使用 console线,mini usb线)。

防火墙的配置

防火墙基本配置

华为防火墙的MGMT接口(G0/0/0)出厂时默认配置的有IP地址:192.168.0.1/24,并且该接口默认开启了DHCP和web登录的功能(真机开启web服务和DHCP服务,模拟器没有默认开启),方便进行web管理。

  1. 在eNSP中导入USG6000V镜像包。

  2. 登录防火墙、

    • 用户名:admin

    • 密码:Admin@123

    • 第一次登录强制要求改密码

  3. 开启管理口web登录服务

    • 进入G0/0/0接口开web登录服务。

    • [USG6000V1-GigabitEthernet0/0/0]service-manage all permit

      • all --- 表示全部

        • all ALL service

        • enable Service manage switch on/off

        • http HTTP service

        • https HTTPS service

        • ping Ping service

        • snmp SNMP service

        • ssh SSH service

        • telnet Telnet service

      • permint/deny --- 允许/拒绝

  4. Cloud 可以将虚拟机和电脑连接起来。

    • 绑定虚拟网卡,绑定公网网卡可能会导致网络瘫痪。

  5. 修改防火墙G0/0/0 接口IP地址,让它和虚拟网卡的IP地址在同一个广播域。

  6. 在主机游览器上打开防火墙的Web界面

    • https://防火墙IP地址:8443

    • 华为默认防火墙端口号8443。

    • 用户和密码是修改后的账号密码。

防火墙的管理员

在系统界面里面可以管理管理员角色。(默认角色不可修改)

用户权限等级

可以修改一些命令的等级,例如save 等级设置为4,那么只有用户等级大于 4 的才可以使用save命令。可以更精细化管理。

缺省的管理员账号

创建管理员
  • 认证类型

    • 本地认证

      • 用户信息存储在防火墙上,登录时,防火墙根据输入的用户名和密码进行判断,如果通过验证,则成功登录。

    • 服务器认证

      • 和第三方的认证服务器对接,登录时,防火墙将登录信息发送给第三方服务器,之后由第三方服务器来进行验证,通过则反馈给防火墙,防火墙放行。

      • 一般适用于企业本身使用第三方服务器来存储用户信息,则用户信息不需要重复创建。

    • 服务器认证/本地认证

      • 优先使用服务器认证,如果服务器认证失败,则也不进行本地认证。只有在服务器对接不上的时候,采用本地认证。

  • 信任主机 #1

    • 可以添加一个地址或者网段,则其含义是只有在该地址活着地址段内,可以登录管理设备;如果发来登录的数据包不是这个IP地址段内的,则拒绝登录。最多可以添加10条信息。

防火墙的组网

接口配置

  • 物理接口

    • 二层接口 --- 不能配IP

      • 普通的二层接口

      • 接口对 --- “透明网线”

        • 可以将两个接口绑定成为接口对,如果流量从一个接口进入,则必定从另一个接口出去,不需要查看MAC地址表。其实一个接口也可以做接口对,从该接口进再从该接口出。

      • 旁路检测接口

        • 主要用于防火墙的旁路部署,用于接收镜像口的流量。

    • 三层接口 --- 可以配IP

  • 虚拟接口

    • 换回接口

    • 子接口

    • 链路聚合

    • 隧道接口

    • .....

  • 拓展接口

    • Bypass:4个千兆口其实是两队bypass口。如果设备故障,则两个接口直通,保证流量不中断。

虚拟系统 --- VRF技术

  • “ VRF技术 ”:相当于逻辑上将一台设备分割为多台设备,平行工作,互不影响。需要通过接口区分虚拟系统的范围。

  • 管理口和其余物理接口默认不在同一个虚拟系统中。

防火墙接口配置

路由模式 --- 三层接口
  • IP地址可以选用静态、DHCP、PPPoE

  • 填写默认网关,则会在路由表中默认生成一条指向这个地址的缺省路由。

    • 如果要ping通,则在这里勾选。

      • 接口配置页面权力高于安全策略。

交换模式 --- 二层接口
  • 可以跳过创建vlan,直接将接口划分vlan。

旁路检测
  • 接受镜像流量

接口对

选择之后,该接口就具有配置成为接口对的资格。

  • 接口对默认为trunk链路。

虚拟接口
  • 虚拟接口:不同的虚拟空间之间通信使用的虚拟接口,只需要配置IP地址即可。新创建一个虚拟系统会自动生成一个虚拟的接。

安全区域

安全区域分类

  • Trust :一般企业内网会被规划在trust区域中。

  • Untrust: 一般公网区域被规划在untrust区域中。

  • Local:指设备本身,所有接口默认都属于Local区域。

    • 凡是由设备构造并主动发出的报文均可以认为是从local区域发出的,凡是需要设备响应并处理的报文均可以认为是由Local区接受。我们无法修改local区的配置,并且我们无法将接口划入该区域。接口本身属于该区域。

  • Dmz:非军事化管理区域

    • 这个区域主要是为内网的服务器所设定的区域。这些服务器本身在内网,但是需要对外提供服务。他们相当于处于内网和外网之间的区域。所以,这个区域就代表是严格管理和松散管理区域之间的部分管理区域。

注意:将某个接口划分到某个区域时,则代表该接口所连接的整片网络都属于这个区域。区域是靠接口来划分的。

区域优先级

  • 优先级取值范围:1~100(越大越优)

  • 优先级作用

    • 定义方向

      • 流量从优先级高的区域到优先级低的区域 --- 出方向(outbound)

      • 流量从优先级低的区域到优先级高的区域 --- 入方向(inbound)

防火墙组网方式

  • 路由模式

    • 特点:三层部署,三层接口为主。

    • 防火墙配置过程。

      1. 接口、区域配置完成,并且做安全策略

      2. 内网配置回包路由

      3. 是否需要配置服务器映射

      4. 配置内网访问外网的NAT

      5. 针对内外网的安全策略

  • 透明模式

    • 特点:二层部署,二层接口为主

  • 旁路模式

    • 特点:可以实现流量检测,对原始链路没有影响,但是控制能力很小。

    • 镜像:进行二层数据分析。

    • 管理:配置三层接口,用于方便管理。防火墙上网,或者升级设备。

  • 混合模式

    • 特点:部分接口走二层,部分接口走三层

安全策略

传统的包过滤防火墙其本质为ACL列表,根据数据报中的特征进行过滤,之后对比规制,执行动作。

  • 五元组:源IP、目标IP 、源端口、目标端口、协议

安全策略相较于ACL的改进之处在于,首先,可以在更细的颗粒度下匹配流量,另一方面是可以完成内容安全的检测。

包过滤和安全策略的对比


安全策略


安全策略内容
  1. 访问控制(允许和拒绝)。

  2. 内容检测:如果允许通过,则可以进行内容检测。

安全策略的全过程

注意
  • 一个区域内部访问是不受安全策略的控制。

  • 匹配规则从上自下匹配。

安全策略的配置

位置:策略 --- 安全策略

流量抓取和条件匹配

  • 策略组:多条策略存储在一个组里面,可以批量的去启用策略和禁止策略;

  • 标签:分类,通过颜色区分;

  • VLAN ID :针对二层携带标签的流量经行匹配管理;

  • 源地址和目标地址:选择匹配的地址或者地址范围;

  • 用户:针对用户匹配;

  • 服务:针对服务内容经行匹配,可以写协议或者端口号;

  • 应用:更细致的应用匹配,可以进行数据层次的关键字识别匹配;

内容安全检测

安全策略中条件匹配规则

  • 每一项之间的关系为 ”与“的关系;

  • 如果不选择,则默认为any(没有限制);

  • 多选的里面,每一项之间的关系是 “或” 关系;

防火墙的状态检测和会话表

状态检测

状态检测的核心 --- ”会话表“

基于流的流量检测:即设备仅对流量的第一个数据包进行过滤,并将结果作为这一条数据流的“特征”记录下来(记录在本地的会话表),之后,该数据流后续的报文都将基于这个特征来进行转发,而不再去匹配安全策略。这样做的目的是为了提高转发效率

传统防火墙的缺点

  1. 安全风险高

  2. 转发效率第

包过滤防火墙的安全漏洞

状态检测防火墙访问过程

当web服务器给PC进行回报时,来到防火墙上,防火墙会将报文中的信息和会话表的信息进行性比对,如果,发现报文中的信息与会话表中的信息相匹配,并且,符合协议规范对后续报文的定义,则认为该数据包属于PC,可以允许该数据包通过。

会话表

  • 会话表本身也是基于五元组来区分流量,会话表在比对时,会通过计算HASH来比较五元组。因为HASH定长,所以,可以基于硬件进行处理,提高转发效率。

  • 会话表的目的:提高转发效率

  • 因为会话表中的记录只有在流量经过触发时才有意义,所以,如果记录长时间不被触发,则应该删除掉。即会话表中的记录应该存在老化时间。如果会话表中的记录被删除掉之后,相同五元组的流量再通过防火墙,则应该由其首包重新匹配安全策略,创建会话表。如果无法创建会话表,则将丢弃该数据流的数据

  • 会话表老化时间

    • 老化时间太长:会造成系统资源的浪费,同时,有可能导致新的会话表项无法正常建立;

    • 老化时间过短:会导致一些需要长时间首发一次的报文连接被系统强行中断,影响业务的转发;

    • 不同协议的会话表老化时间不同。

状态检测技术

目的:提高安全性

状态检测主要检测协议逻辑上的后续报文,以及仅允许逻辑上的第一个报文通过后创建会话表。可以选择开启或者关闭该功能。

配置

  • 防火墙查看老化时间

    • [USG6000V1]display firewall session table ---- 查看老化时间

    • [USG6000V1]display firewall session table verbose ---- 查看会话表详情

  • 开启TCP状态检测功能 (默认开启)

    • 防火墙web页面配置

    • 防火墙命令行页面配置

      • 开启

        • [USG6000V1]firewall sessiong link-state tcp check

      • 关闭

        • [USG6000V1]undo firewall sessiong link-state tcp check

数据通过防火墙的流程

文件传输协议

1. FTP FTP代表文件传输协议。这种类型的协议用于将文件从一台主机传输或复制到另一台主机。但是在不同的主机或系统中发送和接收文件时可能会出现文件名不同、文件目录不同等问题。并且在 FTP 中,不提供安全通道来在主机或系统之间传输文件。


  • FTP协议是一个典型的C/S架构的协议。

  • FTP工作过程中存在两个进程,一个是控制进程 (21) ,另一个是数据的传输进程 (20) ,所以,需要使用两个端口号20,21。

  • FTP传输模式:ASCII模式和二进制模式

    • ASCII模式用于传输文本。发送端的字符在发送前被转换成ASCII码格式之后进行传输,接收端收到之后再将其转换成字符。

    • 二进制模式常用于发送图片文件和程序文件。发送端在发送这些文件时无需转换格式,即可传输。

  • 像FTP这种使用多个端口号的协议叫做多通道协议(双通道协议)。

2. TFTP TFTP 代表普通文件传输协议。TFTP 用于在不需要 FTP 功能的情况下从客户端到服务器或从服务器到客户端传输文件。TFTP的软件比FTP小。TFTP 工作在 69 端口号上,其服务由 UDP 提供。

FTP和TFTP的区别

  1. FTP 是完整、面向会话、常规用途文件传输协议;而 TFTP 用作 bones bare - 特殊目的文件传输协议。

  2. 因为 TFTP 不支持验证, 所以Windows NT FTP服务器不支持 TFTP

  3. 可以以交互方式使用 FTP; TFTP 允许文件只能单向的传送。

  4. FTP 提供用户身份验证; TFTP 却不。

  5. FTP 依赖于 TCP 是面向连接并提供可靠的控件; TFTP 依赖 UDP,需要减少开销, 几乎不提供控件。

  6. FTP 使用周知 TCP 端口号: 数据和连接对话框的 21,20; TFTP 使用它的文件传输活动 UDP 端口号 69。

  7. FTP使用的是TCP21端口,而TFTP使用的是UDP69端口; 一般防火墙都会封TCP端口而不会封UDP的,所以TFTP有时比FTP好用,不过TFTP传输的文件一般较小,你要传大文件就要用FTP了。

  8. FTP相较于Tftp拥有一套完整的命令集

FTP工作模式

FTP还存在两种不同的工作模式:主动模式,被动模式。

  • 主动模式

    • FTP客户端通过向FTP服务器发送PORT命令,告诉服务器该客户端用于传输数据的临时端口号;

    • 当需要传送数据时,服务器通过TCP端口号20与客户端的临时端口建立数据传输通道,完成数据传输;

    • 在建立数据连接的过程中,由服务器主动发起连接,因此被称为主动方式。

  • 被动模式

    • FTP客户端通过向FTP服务器发送PASV命令,告诉服务器进入被动方式。服务器选择临时端口号并告知客户端;

    • 当需要传送数据时,客户端主动与服务器的临时端口号建立数据传输通道,完成数据传输;

    • 在整个过程中,由于服务器总是被动接收客户端的数据连接,因此被称为被动方式。

FTP建立在防火墙中的问题

  • 问题:两个端口号第一个控制程序来创建会话表,当第二个程序传输数据时,由于五元组信息不同,所有不能匹配第一个控制程序创建的会话表,就应该去建立新的会话表,但是由于无法建立会话表,所有数据包就该被丢弃数据包。

  • 原因:由于建立会话表需要匹配安全策略,传输数据开放的端口号是随机端口号,所以无法通过提前放通安全策略来经行会话表的创建,所以无法建立会话表

在交换机上的抓包信息

主动

被动

  • (192,168,1,1,8,2)

    • 前面4位是IP地址信息,后面的8,2代表的是端口号信息,计算方法:8 * 256 + 2 = 2050

解决办法

ASPF:针对应用层的包过滤,用来抓取多通道协议中协商端口的关键数据包,之后,将端口算出,将结果记录在sever-map表中,相当于开辟了一条隐形的通道。使得像FTP 这样的特殊应用的报文可以正常转发。FTP默认开启ASPF。

配置

  • 配置ASPF

  • 查看server-map表

    • [USG6000V1]display firewall server-map

防火墙的用户认证

  • 防火墙管理员登录认证目的:检验身份的合法性,划分身份权限。

  • 用户认证的目的:上网行为管理的一部分。

    • 用户,行为,流量 ---- 上网行为管理三要素

用户认证分类

  1. 上网用户认证

    • 三层认证

    • 所有的跨网段的通信都可以属于上网行为。正对这些行为,我们希望将行为和产生行为的人进行绑定,所以,需要进行上网用户认证。

  2. 入网用户认证

    • 二层认证

    • 我们的设备在接入网络中,比如插入交换机或者接入wifi后,需要进行认证才能正常使用网络。

  3. 接入用户认证

    • 远程接入(VPN)

    • 主要是校验身份的合法性的。

上网用户认证

  • 本地认证

    • 用户信息在防火墙上,整个认证过程都在防火墙上执行

  • 服务器认证

    • 对接第三方服务器,防火墙将用户信息传递给服务器,之后,服务器将认证结果返回,防火墙执行对应的动作即可

  • 单点登录 --- 和第三方服务器认证类似。

配置

新建认证域

用户组织结构的容器,防火墙缺省存在default认证域,用户可以根据需求新建认证域。

不同的认证域之间是或的关系

  • 认证域: 可以决定认证的方式和组织结构。

新建用户/用户组

用户按树形结构组织,用户隶属于组(部门)。管理员可以根据企业的组织结构来创建部门和用户。


  • 登录名:作为登录凭证使用,一个认证域下登录名不能触发

  • 显式名:不能用来作为登录凭证,只是用来进行描述是,可以重复。

  • 账号过期时间:可以设定一个时间点到期,但是,如果到期前号已登录,到期后,防火墙不会强制下线该用户。

  • 允许多人同时使用该账号登录。

    • 私有用户:仅允许一个人使用,第二个人使用时,将顶替到原先的登录;

    • 公有用户:允许多个人同时使用一个账户。

  • IP/MAC绑定:用户和设备进行绑定(IP地址/MAC地址)

    • 单向绑定:该用户只能使用指定的地址登录 (IP或者MAC),同时该地址也可被其他用户使用;

    • 双向绑定:该用户只能在绑定设备下登录,并且该绑定设备也仅允许该用户登录。

安全组和用户组区别

  • 安全组和用户组都可以被策略调用;

    • 用户组调用是可以递归,递归到用户组下的子用户组;

    • 安全组调用不会递归,子安全组不生效。

认证策略

  1. 抓流量

  2. 执行的动作

  • 认证方式

    • portal认证

      • 这是一种常见的认证方式。我们一般见到的网页认证就是portal认证。我们做上网认证,仅需要流量触发对应的服务时,弹出窗口,输入用户名和密码进行认证。

    • 免认证

      • 需要在IP/MAC双向绑定的情况下使用,则对应用户在对应设备上登录时,就可以选择免认证,不做认证。

    • 不认证

    • 匿名认证

      • 和免认证的思路相似,认证动作越透明越好,选择匿名认证,则登录者不需要输入用户名和密码,直接使用IP地址作为其身份进行登录。

认证域的配置

策略针对一个点,认证域是针对整个组织架构的

  • 如果这里的上网方式选择protal认证,则认证策略里面也要选择portal认证。

  • 如果这里的上网方式选择免认证或者单点登录,则认证策略中对应动作为免认证

  • 如果认证策略中选择的是匿名认证,则不触发这里的认证动作。

  • 可以多选

新用户的认证选项

  • 匿名用户登录上来的也算新用户。IP地址本身不属于架构里面的,上来都属于新用户。

  • 临时用户

    • 如果默认是以/666部上线,就要遵守/666的策略/安全组。

防火墙的NAT

NAT分类

  • 源NAT

    • 基于源IP地址进行转换。

    • 我们之前接触过的静态NAT,动态NAT,NAPT都属于源NAT,都是针对源IP地址进行转换的。源NAT主要目的是为了保证内网用户可以访问公网。

    • 先执行安全策略,后执行NAT

  • 目标NAT

    • 基于目标IP地址进行转换。我们之前接触过的服务器映射 (端口映射) 就属于目标NAT。是为了保证公网用户可以访问内部的服务器。

  • 双向NAT

    • 同时转换源IP和目标IP地址。

NAT配置

新建NAT

  • NAT类型

    • NAT

    • NAT64:ipv4 和ipv6的NAT转换。

  • 转换模式

    • 仅转换源地址 --- 源NAT

    • 仅转换目的地址 --- 目标NAT

    • 源地址和目的地址同时转换 --- 双向NAT

    • 不做转换

  • 转换后的数据包

    • 把源地址转换成什么?

      • 地址池的地址 --- 多对多的NAPT或者动态NAT

      • 出接口地址 --- easy ip

  • 新建安全策略

    • 观察安全策略的源目区域:匹配的是私网地址,所以先执行安全策略,后执行源NAT,即源NAT是在安全策略之后执行。。

补充内容

  • 现在静态NAT作用

    • 入方向,跟服务器做一对一的映射。

  • easy ip 不产生server-map

  • 填写默认网关,则生产缺省静态

    • 协议 Unr:(U)用户(n)网络(r)路由,一般情况由于策略生成的路由。

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

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

相关文章

架构整洁之道-价值维度与编程范式

1 设计与架构究竟是什么 结论:二者没有任何区别,一丁点区别都没有。 架构图里实际上包含了所有底层设计细节,这些细节信息共同支撑了顶层的架构设计,底层设计信息和顶层架构设计共同组成了整个架构文档。底层设计细节和高层架构信…

最新GPT4.0使用教程,AI绘画-Midjourney绘画,GPT语音对话使用,DALL-E3文生图+思维导图一站式解决

一、前言 ChatGPT3.5、GPT4.0、GPT语音对话、Midjourney绘画,文档对话总结DALL-E3文生图,相信对大家应该不感到陌生吧?简单来说,GPT-4技术比之前的GPT-3.5相对来说更加智能,会根据用户的要求生成多种内容甚至也可以和…

【HarmonyOS应用开发】ArkUI 开发框架-基础篇-第一部分(七)

常用基础组件 一、组件介绍 组件(Component)是界面搭建与显示的最小单位,HarmonyOS ArkUI声明式开发范式为开发者提供了丰富多样的UI组件,我们可以使用这些组件轻松的编写出更加丰富、漂亮的界面。组件根据功能可以分为以下五大类…

深入理解Redis:如何设置缓存数据的过期时间及其背后的机制

目录 Redis 给缓存数据设置过期时间 Redis是如何判断数据是否过期的呢? 过期的数据的删除策略 Redis 内存淘汰机制 Redis 给缓存数据设置过期时间 一般情况下,我们设置保存的缓存数据的时候都会设置一个过期时间。为什么呢? 因为内存是有…

Django模型(一)

一、介绍 模型,就是python中的类对应数据库中的表 1.1、ORM ORM 就是通过实例对象的语法,完成关系型数据库的操作的技术,是"对象-关系映射"(Object/Relational Mapping) 的缩写 ORM 把数据库映射成对象 1.…

【Linux】压缩脚本、报警脚本

一、压缩搅拌 要求: 写一个脚本,完成如下功能 传递一个参数给脚本,此参数为gzip、bzip2或者xz三者之一; (1) 如果参数1的值为gzip,则使用tar和gzip归档压缩/etc目录至/backups目录中,并命名为/backups/etc…

Java-并发高频面试题

1.说一下你对Java内存模型(JMM)的理解? 其实java内存模型是一种抽象的模型,具体来看可以分为工作内存和主内存。 JMM规定所有的变量都会存储再主内存当中,再操作的时候需要从主内存中复制一份到本地内存(c…

C++(6) 继承

文章目录 继承1. 继承1.1 什么是继承1.2 C 继承方式1.2.1 基本案例1.2.2 继承权限组合1.2.3 继承中构造函数的说法1.2.4 继承中析构函数的执行顺序1.2.5 继承中变量名称冲突问题1.2.6 继承中函数【重写】 继承 1. 继承 1.1 什么是继承 面向对象程序设计中最重要的一个概念是继…

【linux】复制cp和硬连接、软连接的区别? innode 关系?

1.命令: cp -r [源文件或目录] [目的目录] #复制 ln -s [被链接的文件] [链接的目录/名称] #软连接 ln [被链接的文件] [链接的目录/名称] #硬连接 注:cp -r 会把所有source当作普通文件(regular文件)&#x…

把批量M3U8网络视频地址转为MP4视频

在数字媒体时代,视频格式的转换已成为一项常见的需求。尤其对于那些经常处理网络视频的用户来说,将M3U8格式的视频转换为更常见的MP4格式是一项必备技能。幸运的是,现在有了固乔剪辑助手这款强大的工具,这一过程变得异常简单。下面…

03:华为云管理|云主机管理|云项目实战

华为云管理|云主机管理|云项目实战 安全组配置部署跳板机配置yum源,安装软件包优化系统服务安装配置ansible管理主机 模版镜像配置配置yum源,安装软件包优化系统 网站云平台部署实战华为云的负载均衡 安全组配置 设置安全组 云…

MongoDB常用命令

3.1 案例需求 存放文章评论的数据存放到MongoDB中,数据结构参考如下: 数据库:articledb 3.2 数据库操作 3.2.1 选择和创建数据库 选择和创建数据库的语法格式: use 数据库名称 如果数据库不存在则自动创建,例如&a…

VirtualBox配置OpenEuler虚拟机双网卡使用

VirtualBox配置NAT模式时,在宿主机使用WIFI时,虽然能访问互联网,能正常安装软件,但是本地不能访问虚拟机,但是可以配置另一个host-only模式的网卡,通过双网卡实现本地访问虚拟机的同时也能访问互联网。 安装…

GitBook可以搭建知识库吗?有无其他更好更方便的?

在一个现代化的企业中,知识是一项宝贵的资产。拥有一个完善的企业知识库,不仅可以加速员工的学习和成长,还能提高工作效率和团队协作能力。然而,随着企业不断发展和扩大规模,知识库的构建和管理变得更加复杂和耗时。 |…

c++入门语法—————引用,内联函数,auto关键字,基于范围的for循环,nullptr

文章目录 一.引用1.引例2.注意事项3.应用场景1.做参数(a:输出型参数b:内容较大参数)2.做返回值(a:修改返回值,b:减少拷贝) 4.引用和指针的区别 二.内联函数1.为什么有内联函数2.用法和底层3.特性 三.auto关键字1.基础示…

vue项目如何打包,java项目如何打包

目录 vue项目如何打包 java项目如何打jar包 使用Maven打包为JAR(方式一)视图: 先双击clean再双击package即可打包 使用Maven打包为JAR(方式二)命令: 1、确保你已经安装了Maven,并且配置了相应…

腾讯云轻量应用Ubuntu服务器如何一键部署幻兽帕鲁Palworld私服?

幻兽帕鲁/Palworld是一款2024年Pocketpair开发的开放世界生存制作游戏,在帕鲁的世界,玩家可以选择与神奇的生物“帕鲁”一同享受悠闲的生活,也可以投身于与偷猎者进行生死搏斗的冒险。而帕鲁可以进行战斗、繁殖、协助玩家做农活,也…

GLog开源库使用

Glog地址:https://github.com/google/glog 官方文档:http://google-glog.googlecode.com/svn/trunk/doc/glog.html 1.利用CMake进行编译,生成VS解决方案 (1)在glog-master文件夹内新建一个build文件夹,用…

使用vs2022将.net8的应用程序发布为一个单独文件

在使用.NetCore3.1时&#xff0c;可以通过设置以下工程配置文本来将项目发布为一个单独的应用程序文件&#xff1a; <Project Sdk"Microsoft.NET.Sdk.WindowsDesktop"><PropertyGroup><TargetFramework>netcoreapp3.1</TargetFramework><…

React进阶 - 14(说一说”虚拟DOM“中的”Diff算法“)

本章内容 目录 一、了解 Diff 算法二、key 值的重要性三、为什么不建议使用 index 做 key 值 上一节我们初步了解了 React中的”虚拟 DOM“ &#xff0c;本节我们来说一说”虚拟DOM“中的”Diff算法“ 一、了解 Diff 算法 在上一篇中&#xff0c;我们有讲到&#xff1a;当 st…