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

安全技术和防火墙

1、安全技术

1.1入侵检测系统

特点是不阻断网络访问,主要提供报警和事后监督。不主动介入,默默的看着你(类似于监控)

1.2入侵防御系统

透明模式工作, 数据包,网络监控,服务攻击,木马,蠕虫,系统漏洞等进行准确的分析和判断。

在判定为攻击行为后会立即阻断,主动的防御(所有的数据在进入本机之前必须要通过的设备或者软件)

2、防水墙

是一种防止内部信息泄露的产品。对外有防火墙的功能,对内是透明模式,类似于监控。事前事中事后都知道。

3、防火墙

3.1概念

核心:隔离

工作在网络或者主机的边缘

对网络或者主机的数据包基于一定的规则进行检查。匹配到的规则放行或者拒绝(数据包将会被丢弃。

只开放允许访问的策略(白名单机制,拒绝所有,允许个别)

iptables:linux自带的防火墙,一般用于内部配置,对外一般不适用(对外都使用专业的)

firewalld:linux自带的防火墙,centos7默认的防火墙。

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

iptables:linux自带的防火墙,一般用于内部配置,对外一般不适用(对外都使用专业的)。工作在网络层,针对数据包实施过滤和限制,包过滤防火墙

firewalld:linux自带的防火墙,centos7默认的防火墙。

3.2包过滤防火墙

特点:在网络层对数据包进行选择,选择的依据是防火墙设置的策略。策略包括:ip地址,端口,协议。

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

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

3.3应用层防火墙

在应用层对数据进行检查,比较安全

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

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

4、通信的要素

4.1五大要素

源ip、目的ip、源端口、目的端口、协议(TCP/UDP)

4.2四大要素

源ip、目的ip、源端口、目的端口

5、内核态和用户态

5.1内核态

涉及到软件的底层代码或者是系统的基层逻辑,以及一些硬件的编码。开发人员更关注内核态

数据如果是内核态处理,速度相对较快

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

5.2用户态

应用层软件层面,人为控制的一系列操作,使用功能。运维人员只考虑用户态

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

6、iptables的配置和策略

四表五链

6.1四表

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

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

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

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

6.2五链

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

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

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

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

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

表里面有链,链里面有规则

6.3优先级

7、iptables的设置

7.1管理选项

在表的链中插入、增加、删除、查看规则

-t:指定表名

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

-I:指定位置插入一条规则

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

-D:删除规则

-R:修改规则(慎用)

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

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

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

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

7.2匹配的条件

根据数据包的ip地址、端口、协议

-p:指定协议类型

-s:指定匹配的源ip地址

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

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

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

--sport:指定源端口

--dport:指定目的端口

7.3控制类型

允许、拒绝、丢弃

ACCEPT:允许数据包通过

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

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

SNAT:修改数据包的源地址

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

7.4注意事项

(1)不指定表名,默认的就是filter表

(2)不指定链名,默认的就是所有链(禁止行为)

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

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

8、iptables的命令格式

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

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

匹配原则:每个链中的规则都是从上到下的顺序匹配,匹配到之后就不再向下匹配
如果链中没有规则,则执行链的默认策略(ACCEPT)进行处理

查看规则:

iptables -L

查看指定表:

iptables -t 表名 -L

数字化形式查看规则:

iptables -vnL

 查看行号:

iptables -vnL --line-number(s)

iptables --line-number(s) -vnL

添加规则:

#拒绝所有其他主机ping本机

iptables -A INPUT -p icmp -j REJECT

插入规则:

#在INPUT的第一条插入ACCEPT

iptables -I INPUT 1 -p icmp -j ACCEPT

指定一个ip地址:

#禁止20ping主机

iptables -A INPUT -s 192.168.230.20 -p icmp -j REJECT

指定多个ip地址:

iptables -A INPUT -s 192.168.230.20,192.168.230.30 -p icmp -j DROP

指定端口:

#拒绝22端口

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

拒绝ip和端口访问:

#拒绝20访问22端口

iptables -A INPUT -s 192.168.230.20 -p tcp --dport 22 -j REJECT

 #20无法访问
[root@test2 ~]# ssh root@192.168.230.10
ssh: connect to host 192.168.230.10 port 22: Connection refused

 #10可以访问
[root@test1 ~]# ssh root@192.168.230.10
root@192.168.230.10's password: 
Last login: Wed Jun 26 16:40:33 2024 from test1

拒绝20访问nginx:

iptables -A INPUT -s 192.168.230.20 -p tcp --dport 80 -j REJECT

 [root@test2 ~]# curl 192.168.230.10
curl: (7) Failed connect to 192.168.230.10:80; 拒绝连接

删除规则:

iptables -D INPUT 序号

修改策略:

#将INPUT序号1的策略改为REJECT,源ip改为20

-R INPUT 1 -s 192.168.230.20 -p tcp --dport 80 -j REJECT

修改链的默认策略:

#将INPUT的默认策略改为DROP

iptables -P INPUT DROP

指定网络设备:

#拒绝20通过ens33网卡访问80服务

iptables -A INPUT -i ens33 -s 192.168.230.20 -p tcp --dport 80 -j REJECT

 [root@test2 ~]# curl 192.168.230.10

curl: (7) Failed connect to 192.168.230.10:80; 拒绝连接

拒绝整个网段:

iptables -A INPUT -s 192.168.230.0/24 -p tcp --dport 80 -j REJECT

 [root@test1 ~]# curl 192.168.230.10

curl: (7) Failed connect to 192.168.230.10:80; 拒绝连接

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

#禁止所有主机访问22和80端口(端口从小到大,只能禁止两个端口)

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

 [root@test2 ~]# ssh root@192.168.230.10

ssh: connect to host 192.168.230.10 port 22: Connection refused

[root@test2 ~]# curl 192.168.230.10

curl: (7) Failed connect to 192.168.230.10:80; 拒绝连接

-m 扩展模块,一次性禁止多端口,ip范围,指定mac地址:

iptables -A INPUT -p tcp -m multiport --dport 22,80,3306 -j REJECT

指定ip范围:

#拒绝20-30的ip地址访问本机的80端口

iptables -A INPUT -p tcp -m iprange --src-range 192.168.230.20-192.168.230.30 --dport 80 -j REJECT

 [root@test2 ~]# curl 192.168.230.10

curl: (7) Failed connect to 192.168.230.10:80; 拒绝连接

一次性指定多个端口:

-m multiport --sport 源端口池 ​

-m multiport --dport 目的端口池 ​

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

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

9、备份和还原

格式:

iptables-save > /opt/iptables.bak ​

 一键导入,设置为当前防火墙设置:

iptables-restore </opt/iptables.bak 

 修改iptables的默认设置:

cat /etc/sysconfig/iptables

 直接把配置导入配置文件:

cat /opt/iptables.bak >/etc/sysconfig/iptables
#立即生效了,实验环境下,了解就可以了。不要尝试

systemctl restart iptables

#重启之后生效的就是配置文件中的内容,操作需谨慎

10、自定义链

添加自定义链: 

iptables -N 链名

 自定义链改名:

iptables -E 原链名 自定义链名

 在自定义链中添加规则:

iptables -I aaa -p tcp -j REJECT

 删除自定义链:

#先删除iptables INPUT链中的对应关系,然后删除自定义链中的规则

iptables -D INPUT 1

iptables -D ky27 1
然后再用iptables -X ky27 删除这个链

11、snat和dnat

11.1snat

源地址转换

内网——外网 内网ip转换成可以访问的外网ip

内网的多个主机可以使用一个有效的公网ip地址访问外部网络

11.2dnat

目的地址转换

外部用户可以通过一个公网地址访问服务内部的私网服务。私网的ip和公网的ip做一个映射

12、实验

关闭防火墙

test1、3安装nginx,重启

test2安装iptables,添加一个新网卡

配置test2网卡ens33ip地址

把ens33复制给ens36,并且配置地址

cp ifcfg-ens33 ifcfg-ens36

配置test3的网关和ip地址


配置test1的网关

test2 进入linux内核参数的配置文件

vim /etc/sysctl.conf

打开路由器数据包的转发功能

使内核参数的配置立刻生效

[root@test2 opt]# sysctl -p ​

net.ipv4.ip_forward = 1#表明已生效

源地址转换

iptables -t nat -A POSTROUTING -s 192.168.230.0/24 -o ens36 -j SNAT --to 10.0.0.10

-t nat:指定表为nat表
-A POSTROUTING:添加链
-s:指定源ip
-o:指定输出网络设备
-j:控制类型
--to:指定整个网段192.168.230.0/24,从ens36出去时,做源地址转换,转换成10.0.0.10

重启test1、2、3的网卡

systemctl restart network

进入test1、3的虚拟机

打开test3的终端,打开nginx的access日志

tail -f /var/log/nginx/access.log

在test1访问test3的地址12.0.0.100,访问成功

此时test3的access日志ip地址变为12.0.0.100,实现了源地址转换


目的地址转换DNAT

iptables -t nat -A PREROUTING -d 11.0.0.11 -i ens36 -p tcp --dport 80 -j DNAT --to 192.168.230.10

-d 11.0.0.11:指定作为目的地址转换的ip地址
-i:从指定的设备进入本机
-dport:指定端口
-j DNAT:使用目的地址转换
--to 192.168.230.10:外网想要访问内网的192.168.230.10这个web服务,只需要访问11.0.0.11就可以访问内网的web服务

test3访问11.0.0.11成功

13、在linux当中如何抓包

tcpdump是linux自带的抓包工具(最小化安装是不带的,需要额外安装)

静态抓包:

tcpdump tcp -i ens33 -t -s0 -c 10 and dst port 80 and src net 192.168.230.0/24 -w /opt/target.cap

tcp:指定抓包的协议udp icmp第一个参数,可以不指定协议
-i:只抓经过指定设备的包
-t:不显示时间戳
-s0:抓完整的数据包
-c 10:抓10个包
dst port:指定抓包的目的端口
src net 192.168.230.0/24:指定抓包的IP地址
net:网段
host:主机(ip地址)
src host 192.168.230.10
-w:保存指定路径

动态抓包:

tcpdump -i ens33 -s0 -w ./ens33.cap

如果要用wireshark对数据包进行分析,tcpdump在抓包时,要使用-s0,抓取完整格式,否则wireshark无法分析

14、firewalld

14.1定义

firewalld是centos7自带的,也是默认的,7以前默认是iptables

和iptables一样,也是包过滤防火墙

ip 端口 协议

14.2firewalld按照区域来划分

public:公共区域,默认配置了ssh以及DHCPv6预定服务是放通的,其他的全部都是拒绝。是默认区域

trusted:信任区域,允许所有的数据包放通

block:限制区域,拒绝所有

drop:丢弃区域,丢弃所有数据包

dmz:非军事区域,默认只允许ssh通过

home:家庭区域,默认只允许ssh通过

internal:内部区域,和home一模一样

external:外部区域,默认允许ssh通过,其他的全部拒绝

work:工作区域,默认放通ssh

14.3firewall-cmd 命令行工具

14.3.1区域管理

显示当前系统的默认区域:

firewall-cmd --get-default-zone

显示默认区域的所有规则:

firewall-cmd --list-all

 显示当前正在使用的区域及其对应的网卡接口:

firewall-cmd --get-active-zones

设置默认区域:

firewall-cmd --set-default-zone=block

firewall-cmd --get-default-zone #查看当前的默认区域。

14.3.2服务管理

查看默认区域内允许访问的所有服务:

firewall-cmd --list-service

#dhcpv6 -client 获取ipv6的地址

该区域默认使用的网卡设备

 添加httpd服务到public 区域:

firewall-cmd --add-service=http --zone=public

 查看public区域已配置规则:

firewall-cmd --list-all --zone=public

 删除public区域的httpd 服务:

firewall-cmd --remove-service=http --zone=public

 添加多个服务:

firewall-cmd --add-service=http --add-service=ftp --zone=public #方法一


firewall-cmd  --add-service={ftp,http} #方法二

同时添加httpd、ftp服务到默认区域,设置成永久生效:

firewall-cmd --add-service=http --add-service=ftp --permanent
firewall-cmd  --add-service={ftp,http} --zone=public --permanent  #两种方式
firewall-cmd --reload    
firewall-cmd --list-all  

添加使用 --permanent选项表示设置成永久生效,需要重新启动firewalld服务或执行firewall-cmd --reload命令 
重新加载防火墙规则时才会生效。若不带有此选项,表示用于设置运行时规则,
但是这些规则在系统或firewalld服务重启、停止时配置将失效。     

14.3.1端口管理

允许TCP的443端口到internal区域:

firewall-cmd --zone=internal --add-port=443/tcp
firewall-cmd --list-all --zone=internal

 从internal 区域将TCP的443端口移除:

firewall-cmd --zone=internal --remove-port=443/tcp

 允许UDP的2048~2050端口到默认区域:

[root@localhost ~]# firewall-cmd --add-port={21,80,23,24}/tcp
success
[root@localhost ~]# firewall-cmd --add-port=30-35/tcp
success
firewall-cmd --add-port=2048-2050/udp
firewall-cmd --list-all

添加源地址进行操作:

[root@localhost ~]# firewall-cmd --add-source=192.168.233.20 --zone=block
 
[root@localhost ~]# firewall-cmd --get-active-zone
 
[root@localhost ~]# firewall-cmd --remove-source=192.168.233.20 --zone=block
 
[root@localhost ~]# firewall-cmd --get-active-zone

相关文章:

安全技术和防火墙

1、安全技术 1.1入侵检测系统 特点是不阻断网络访问&#xff0c;主要提供报警和事后监督。不主动介入&#xff0c;默默的看着你&#xff08;类似于监控&#xff09; 1.2入侵防御系统 透明模式工作&#xff0c; 数据包&#xff0c;网络监控&#xff0c;服务攻击&#xff0c;…...

Webpack: 开发 PWA、Node、Electron 应用

概述 毋庸置疑&#xff0c;对前端开发者而言&#xff0c;当下正是一个日升月恒的美好时代&#xff01;在久远的过去&#xff0c;Web 页面的开发技术链条非常原始而粗糙&#xff0c;那时候的 JavaScript 更多用来点缀 Web 页面交互而不是用来构建一个完整的应用。直到 2009年5月…...

python处理txt文件, 如果第一列和第二列的值在连续的行中重复,则只保留一行

处理txt文件, 如果第一列和第二列的值在连续的行中重复,则只保留一个实例,使用Python的内置函数来读取文件,并逐行检查和处理数据。 一个txt文件,里面的数据是893.554382324,-119.955825806,0.0299997832626,-0.133618548512,28.1155740884,112.876833236,46.7922,19.62582…...

C++17中引入了什么新的重要特性

C17是C标准的一个重要版本&#xff0c;它在语言核心和标准库中引入了许多新特性和改进&#xff0c;使得C编程更加现代化和高效。以下是C17中引入的一些重要新特性&#xff1a; 语言核心新特性 结构化绑定&#xff08;Structured Bindings&#xff09;&#xff1a; 结构化绑定…...

Andrej Karpathy提出未来计算机2.0构想: 完全由神经网络驱动!网友炸锅了

昨天凌晨&#xff0c;知名人工智能专家、OpenAI的联合创始人Andrej Karpathy提出了一个革命性的未来计算机的构想&#xff1a;完全由神经网络驱动的计算机&#xff0c;不再依赖传统的软件代码。 嗯&#xff0c;这是什么意思&#xff1f;全部原生LLM硬件设备的意思吗&#xff1f…...

用国内镜像安装docker 和 docker-compose (ubuntu)

替代方案&#xff0c;改用国内的镜像站(网易镜像&#xff09; 1.清除旧版本&#xff08;可选操作&#xff09; for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do apt-get remove $pkg; done 2.安装docker apt-get update 首先安装依赖 apt-g…...

Linux多线程【线程互斥】

文章目录 Linux线程互斥进程线程间的互斥相关背景概念互斥量mutex模拟抢票代码 互斥量的接口初始化互斥量销毁互斥量互斥量加锁和解锁改进模拟抢票代码&#xff08;加锁&#xff09;小结对锁封装 lockGuard.hpp 互斥量实现原理探究可重入VS线程安全概念常见的线程不安全的情况常…...

os实训课程模拟考试(大题复习)

目录 一、Linux操作系统 &#xff08;1&#xff09;第1关&#xff1a;Linux初体验 &#xff08;2&#xff09;第2关&#xff1a;Linux常用命令 &#xff08;3&#xff09;第3关&#xff1a;Linux 查询命令帮助语句 二、Linux之进程管理—&#xff08;重点&#xff09; &…...

QT/QML国际化:中英文界面切换显示(cmake方式使用)

目录 前言 实现步骤 1. 准备翻译文件 2. 翻译字符串 3.设置应用程序语言 cmake 构建方式 示例代码 总结 1. 使用 file(GLOB ...) 2. 引入其他资源文件 再次生成翻译文件 5. 手动更新和生成.qm文件 其他资源 前言 在当今全球化的软件开发环境中&#xff0c;应用程…...

设计模式在Java项目中的实际应用

设计模式在Java项目中的实际应用 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 引言 设计模式是软件开发中重要的思想工具&#xff0c;它提供了解决特定问题…...

js制作随机四位数验证码图片

<div class"lable lable2"><div class"l"><span>*</span>验证码</div><div class"r"><input type"number" name"vercode" placeholder"请输入验证码"></div>&l…...

[开源软件] 支持链接汇总

“Common rules: 1- If the repo is on github, the support/bug link is also on the github with issues”" label; 2- Could ask questions by email list;" 3rd party software support link Note gcc https://gcc.gnu.org openssh https://bugzilla.mindrot.o…...

从零开始搭建spring boot多模块项目

一、搭建父级模块 1、打开idea,选择file–new–project 2、选择Spring Initializr,选择相关java版本,点击“Next” 3、填写父级模块信息 选择/填写group、artifact、type、language、packaging(后面需要修改)、java version(后面需要修改成和第2步中版本一致)。点击“…...

Iot解决方案开发的体系结构模式和技术

前言 Foreword 计算机技术起源于20世纪40年代&#xff0c;最初专注于数学问题的基本原理&#xff1b;到了60年代和70年代&#xff0c;它以符号系统为中心&#xff0c;该领域首先开始面临复杂性问题&#xff1b;到80年代&#xff0c;随着个人计算的兴起和人机交互的问题&#x…...

02.C1W1.Sentiment Analysis with Logistic Regression

目录 Supervised ML and Sentiment AnalysisSupervised ML (training)Sentiment analysis Vocabulary and Feature ExtractionVocabularyFeature extractionSparse representations and some of their issues Negative and Positive FrequenciesFeature extraction with freque…...

Stable Diffusion秋叶AnimateDiff与TemporalKit插件冲突解决

文章目录 Stable Diffusion秋叶AnimateDiff与TemporalKit插件冲突解决描述错误描述&#xff1a;找不到模块imageio.v3解决&#xff1a;参考地址 其他文章推荐&#xff1a;专栏 &#xff1a; 人工智能基础知识点专栏&#xff1a;大语言模型LLM Stable Diffusion秋叶AnimateDiff与…...

PCL 渐进形态过滤器实现地面分割

点云地面分割 一、代码实现二、结果示例🙋 概述 渐进形态过滤器:采用先腐蚀后膨胀的运算过程,可以有效滤除场景中的建筑物、植被、车辆、行人以及交通附属设施,保留道路路面及路缘石点云。 一、代码实现 #include <iostream> #include <pcl/io/pcd_io.h> #in…...

第十四届蓝桥杯省赛C++B组E题【接龙数列】题解(AC)

需求分析 题目要求最少删掉多少个数后&#xff0c;使得数列变为接龙数列。 相当于题目要求求出数组中的最长接龙子序列。 题目分析 对于一个数能不能放到接龙数列中&#xff0c;只关系到这个数的第一位和最后一位&#xff0c;所以我们可以先对数组进行预处理&#xff0c;将…...

Ubuntu 20.04.4 LTS 离线安装docker 与docker-compose

Ubuntu 20.04.4 LTS 离线安装docker 与docker-compose 要在Ubuntu 20.04.4 LTS上离线安装Docker和Docker Compose&#xff0c;你需要首先从有网络的环境下载Docker和Docker Compose的安装包&#xff0c;然后将它们传输到离线的服务器上进行安装。 在有网络的环境中&#xff1a…...

vue3+ts 写echarts 中国地图

需要引入二次封装的echarts和在ts文件写的option <template><div class"contentPage"><myEcharts :options"chartOptions" class"myEcharts" id"myEchartsMapId" ref"mapEcharts" /></di…...

CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型

CVPR 2025 | MIMO&#xff1a;支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题&#xff1a;MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者&#xff1a;Yanyuan Chen, Dexuan Xu, Yu Hu…...

Java如何权衡是使用无序的数组还是有序的数组

在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)

参考官方文档&#xff1a;https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java&#xff08;供 Kotlin 使用&#xff09; 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...

以光量子为例,详解量子获取方式

光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学&#xff08;silicon photonics&#xff09;的光波导&#xff08;optical waveguide&#xff09;芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中&#xff0c;光既是波又是粒子。光子本…...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...

MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释

以Module Federation 插件详为例&#xff0c;Webpack.config.js它可能的配置和含义如下&#xff1a; 前言 Module Federation 的Webpack.config.js核心配置包括&#xff1a; name filename&#xff08;定义应用标识&#xff09; remotes&#xff08;引用远程模块&#xff0…...

【java面试】微服务篇

【java面试】微服务篇 一、总体框架二、Springcloud&#xff08;一&#xff09;Springcloud五大组件&#xff08;二&#xff09;服务注册和发现1、Eureka2、Nacos &#xff08;三&#xff09;负载均衡1、Ribbon负载均衡流程2、Ribbon负载均衡策略3、自定义负载均衡策略4、总结 …...

Vuex:Vue.js 应用程序的状态管理模式

什么是Vuex&#xff1f; Vuex 是专门为 Vue.js 应用程序开发的状态管理模式 库。它采用集中式存储管理应用的所有组件的状态&#xff0c;并以相应的规则保证状态以一种可预测的方式发生变化。 在大型单页应用中&#xff0c;当多个组件共享状态时&#xff0c;简单的单向数据流…...

山东大学深度学习2025年期末考试

一、名词解释&#xff08;24&#xff09; 1.反向传播 2.激活函数 3.梯度裁剪 4.数据增强 5.迁移学习 6.过拟合 7.word2Vec 8.注意力机制 二、简答题&#xff08;48&#xff09; 1.池化的概念&#xff08;作用&#xff09;以及常见的两种池化操作 2.LSTM为什么能解决…...