RHCE——九、SELinux

SELinux

  • 一、概念
    • 1、作用
    • 2、SELinux与传统的权限区别
  • 二、SELinux工作原理
    • 1、名词解释
      • 主体(Subject)
      • 目标(Object)
      • 策略(Policy)
      • 安全上下文(Security Context)
    • 2、文件安全上下文查看
      • 1、命令
      • 2、分析
  • 三、SELinux的启动、关闭与查看
    • 1、三种配置模式
    • 2、原理图:
    • 3、模式管理
      • 3.1 查看当前工作模式
      • 3.2 临时开启selinux/临时关闭selinux
      • 3.3 永久性关闭
      • 3.4 注意:
    • 4、selinux的状态
      • 4.1 命令
      • 4.2 分析
    • 5、selinux配置文件
  • 四、修改安全上下文
    • 1、chcon命令
      • 1.1 作用
      • 1.2 格式
      • 1.3 示例
    • 2、restorecon命令
      • 2.1 作用
      • 2.2 格式
    • 3、semanage命令
      • 3.1 作用
      • 3.2 格式
    • 4、常用命令组
  • 五、实验
    • 实验1
    • 实验2

一、概念

  • SELinux(Security-Enhanced Linux)是美国国家安全局在 Linux 开源社区的帮助下开发的一个强制访问控制(MAC,Mandatory Access Control)的安全子系统,用于各个服务进程都受到约束,使其仅获取到本应获取的资源
  • 例如,电脑上下载了一个美图软件,当您全神贯注地使用它给照片进行美颜的时候,它却在后台默默监听着浏览器中输入的密码信息,而这显然不应该是它应做的事情

1、作用

  • SELinux 域限制:对服务程序的功能进行限制,以确保服务程序做不了出格的事情
  • SELinux 安全上下文:对文件资源的访问限制,确保文件资源只能被其所属的服务程序访问

2、SELinux与传统的权限区别

  • 传统的文件权限与账号的关系:属于自主访问控制DAC(Discretionary Access Control),当某个进程想要对文件进行访问时,系统就会根据该进程的所有者/用户组,并比较文件的权限,若通过权限检查,就可以访问该文件,注意:各种权限设置对root用户是无效的
  • SELinux的以策略规则制定特定程序读取特定文件:属于强制访问控制MAC(Mandatory Access Control),可以针对特定的进程与特定的文件资源来进行权限的控制,即使你是root在使用不同的进程时,你所能取得的权限并不一定是root,而得要看当时该进程的设置而定,则就可以针对进程来进行访问控制

二、SELinux工作原理

1、名词解释

主体(Subject)

  • 主体就是想要访问文件或目录资源的进程。
  • 进程得到资源流程:由用户调用命令,由命令产生进程,由进程去访问文件或目录资源。
  • 自主访问控制系统中(Linux 默认权限中),靠权限控制的主体是用户
  • 强制访问控制系统中(SELinux 中),靠策略规则控制的主体则是进程

目标(Object)

  • 目标就是需要访问的文件或目录资源

策略(Policy)

  • Linux 系统中进程与文件的数量庞大,限制进程是否可以访问文件的 SELinux 规则数量就更加烦琐,如果每个规则都需要管理员手工设定,那么 SELinux 的可用性就会极低,所以SELinux 默认定义了两个策略来制订规则
  • 2个默认策略
    • -targeted:默认策略,用于限制网络服务(dhcpd,httpd,named,nscd,ntpd,portmap,snmpd,squid,以及 syslogd),对本机系统的限制极少
    • -mls:多级安全保护策略,该策略限制更为严格

安全上下文(Security Context)

  • 所有进程、文件和目录都有自己的安全上下文
  • 进程是否能够访问文件或目录,就要其安全上下文是否匹配
  • 例:找对象时,男人看作主体,女人就是目标,男人是否可以追到女人(主体是否可以访问目标),主要看两人的性格是否合适(主体和目标的安全上下文是否匹配),但两个人的性格是否合适,是需要靠生活习惯、为人处世、家庭环境等具体的条件来进行判断的(安全上下文是否匹配是需要通过策略中的规则来确定的)
  • 关系图:
  • 解释:
    • 当主体(进程)访问目标(文件)时,首先和 SELinux 中定义好的策略进行匹配
    • 若符合定义的规则,且主体的安全上下文和目标的安全上下文匹配则允许访问文件
    • 若安全上下文比较失败,则拒绝访问,并通过 AVC(Access Vector Cache,访问向量缓存,主要用于记录所有和 SELinux 相关的访问统计信息)生成拒绝访问信息
    • 注意:最终是否可以访问到目标文件,还要匹配产生进程(主体)的用户是否对目标文件拥有合理的rwx权限

2、文件安全上下文查看

1、命令

[root@server ~]# ls  -Z
unconfined_u:object_r:admin_home_t:s0 公共  unconfined_u:object_r:admin_home_t:s0 下载
unconfined_u:object_r:admin_home_t:s0 模板  unconfined_u:object_r:admin_home_t:s0 音乐
unconfined_u:object_r:admin_home_t:s0 视频  unconfined_u:object_r:admin_home_t:s0 桌面
unconfined_u:object_r:admin_home_t:s0 图片      system_u:object_r:admin_home_t:s0 anaconda-ks.cfg
unconfined_u:object_r:admin_home_t:s0 文档
[root@server ~]# ll  -Z
总用量 4
drwxr-xr-x. 2 root root unconfined_u:object_r:admin_home_t:s0    6  322 11:20 公共
drwxr-xr-x. 2 root root unconfined_u:object_r:admin_home_t:s0    6  322 11:20 模板
drwxr-xr-x. 2 root root unconfined_u:object_r:admin_home_t:s0    6  322 11:20 视频
drwxr-xr-x. 2 root root unconfined_u:object_r:admin_home_t:s0    6  322 11:20 图片
drwxr-xr-x. 2 root root unconfined_u:object_r:admin_home_t:s0    6  322 11:20 文档
drwxr-xr-x. 2 root root unconfined_u:object_r:admin_home_t:s0    6  322 11:20 下载
drwxr-xr-x. 2 root root unconfined_u:object_r:admin_home_t:s0    6  322 11:20 音乐
drwxr-xr-x. 2 root root unconfined_u:object_r:admin_home_t:s0    6  322 11:20 桌面
-rw-------. 1 root root system_u:object_r:admin_home_t:s0     1260  322 11:19 anaconda-ks.cfg

在这里插入图片描述

2、分析

  • 重点为:system_u:object_r:admin_home_t:s0

  • 安全上下文用冒号分为四个字段

  • 身份标识(Identify):相当于账号方面的身份标识,有三种类型:

    • root:安全上下文的身份是 root,默认会映射为unconfined_u ,可以通过以下命令查看映射关系:

    • [root@server ~]# semanage login -l
      

在这里插入图片描述

  • system_u:系统用户身份,其中“_u”代表 user

  • 注意:user 字段只用于标识数据或进程被哪个身份所拥有,系统数据的 user 字段是 system_u,用户数据 user 字段是 user_u

  • seinfo 命令

    • 作用:查询身份、角色等信息,需要安装才可使用

    • [root@server ~]# yum  install setools-console  -y
      

    在这里插入图片描述

    • 格式:seinfo -参数

    • 参数:

-u: 列出SELinux中所有的身份(user);
-r: 列出SELinux中所有的角色(role);
-t: 列出SELinux中所有的类型(type);
-b: 列出所有的布尔值(也就是策略中的具体规则名称);
-x: 显示更多的信息;

在这里插入图片描述
在这里插入图片描述

[root ~]# seinfo -t | wc -l
5051
  • 角色(role):表示此数据是进程还是文件或目录包含(了解就行)

    • object_r:代表该数据是文件或目录,r代表 role(角色的意思)
    • system_r:进程r代表 role
  • 类型(type):

    • seinfo -t | more   # 5049个类型
      
    • 最重要,进程是否可以访问文件,主要就是看进程的安全上下文类型字段是否和文件的安全上下文类型字段相匹配

    • 在默认的targeted策略中

    • 类型字段在主体(进程)的安全上下文中被称作域(domain)

    • 类型字段在目标(文件或目录)的安全上下文中被称作类型(type)

    • 进程的域与文件的类型是否匹配需要查询策略规则

  • 灵敏度:用 s0、s1、s2 来命名,数字为灵敏度分级,数值越大,灵敏度越高

  • 例:查看之前http的默认网页文件信息

[root@server ~]# yum  install httpd  -y
[root@server ~]# ls  -Zd  /var/www/html
system_u:object_r:httpd_sys_content_t:s0 /var/www/html

在这里插入图片描述

三、SELinux的启动、关闭与查看

1、三种配置模式

  • enforcing:强制模式,启用SELinux,将拦截服务的不合法请求
  • permissive:宽容模式,启用SELinux,遇到服务越权访问时,只发出警告而不强制拦截
  • disabled:关闭模式,SELinux没有运行

2、原理图:

3、模式管理

3.1 查看当前工作模式

[root@server ~]# getenforce

3.2 临时开启selinux/临时关闭selinux

[root@server ~]# getenforce
Enforcing
[root@server ~]# setenforce  0  # 临时关闭进入宽容模式
[root@server ~]# getenforce
Permissive
[root@server ~]# setenforce  1  # 临时开启
[root@server ~]# getenforce
Enforcing

3.3 永久性关闭

[root@server ~]# vim  /etc/selinux/config 
SELINUX=disabled    

在这里插入图片描述
在这里插入图片描述

3.4 注意:

  • enforcing状态与permissive状态之间切换时,不需要重启系统
  • enforcing、permissive与disabled之间切换时,必须重启系统才会生效

4、selinux的状态

4.1 命令

[root@server ~]# sestatus

4.2 分析

[root@server ~]# sestatus
SELinux status:                 enabled           # 是否启用  
SELinuxfs mount:                /sys/fs/selinux   # selinux临时文件系统的挂载点
SELinux root directory:         /etc/selinux      # 启动目录,配置文件位置
Loaded policy name:             targeted          # 当前加载的策略类型# 策略类型#  targeted:只保护目标进行,默认#  minimum:少数选定进程进行保护#  mls:多级安全保护,最高级
Current mode:                   enforcing         # 执行的模式,重要
Mode from config file:          enforcing         # 配置文件的模式
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33

在这里插入图片描述

5、selinux配置文件

[root@server ~]# vim  /etc/selinux/config 
SELINUX=enforcing         # 设置模式
SELINUXTYPE=targeted      # 设置策略类型
# 注意:/etc/sysconfig/selinux文件与上述配置问价内容相同,选择一个配置即可

四、修改安全上下文

1、chcon命令

1.1 作用

  • 手动修改目标的上下文策略

1.2 格式

# 方法1
chcon  [-R] [-t  type]  [-u  user]  [-r  role]  文件名
-R:递归修改,当前目录及目录下的所有文件都同时设置
-t:后面接安全上下文件的类型字段(重要)
-u:后面接身份标识
-r:后面接角色
-v:显示变动结果
# 方法2:
chcon  -R  --reference=范例文件  文件名

1.3 示例

  • 例1:单独修改
[root@server ~]# touch  test
[root@server ~]# ls  -Z  test
unconfined_u:object_r:admin_home_t:s0 test
[root@server ~]# ls -Z  /etc/hosts
system_u:object_r:net_conf_t:s0 /etc/hosts
[root@server ~]# chcon  -v  -t  net_conf_t  ~/test
正在更改 '/root/test' 的安全上下文
[root@server ~]# ls  -Z  test
unconfined_u:object_r:net_conf_t:s0 test
  • 例2:按照范例文件修改
[root@server ~]# touch  temp
[root@server ~]# ls  -Z  temp
unconfined_u:object_r:admin_home_t:s0 temp
[root@server ~]# ls  -Z  /etc/passwd
system_u:object_r:passwd_file_t:s0 /etc/passwd
[root@server ~]# chcon  -v  --reference=/etc/passwd  ~/temp
正在更改 '/root/temp' 的安全上下文
[root@server ~]# ls  -Z  temp
system_u:object_r:passwd_file_t:s0 temp
  • 例3:使用httpd服务演示安全上下文值的设定
# 恢复快照
# 开启selinux
# 查看状态
[root@server ~]# getenforce
Enforcing
[root@server ~]# yum  install  httpd  -y
[root@server ~]# mkdir  /web1
# 使用xftp将zy网页文件上传
[root@server ~]# systemctl start httpd
[root@server ~]# vim  /etc/httpd/conf/httpd.conf 
DocumentRoot "/web1"
<Directory "/web1">
[root@server ~]# systemctl restart httpd
# 测试:Windows中浏览器中输入server主机的IP地址,只会看到apache的欢迎页,说明selinux对/web1的安全上下文检测未通过
[root@server ~]# ls  -Zd  /var/www/html  # 查看默认网页目录的上下文
system_u:object_r:httpd_sys_content_t:s0 /var/www/html
[root@server ~]# ls  -Zd  /web1
unconfined_u:object_r:default_t:s0 /web1
# 将/web1的类型修改为默认网页目录的类型
[root@server ~]# chcon  -Rv  -t  httpd_sys_content_t  /web1
[root@server ~]# systemctl restart httpd
# 测试:此时输入IP地址则可以浏览
# 注意:也可以使用范例文件修改
[root@server ~]# chcon  -Rv  --reference=/var/www/html  /web1

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、restorecon命令

2.1 作用

  • 让文件的SELinux类型恢复为默认的SELinux类型
  • 默认的SELinux类型与semanage命令有关,其参考semanage命令所查询的默认SELinux类型

2.2 格式

restorecon  [-Rv]  文件或目录
-R:连同子目录一起修改;
-v:将过程显示到屏幕上
  • 例1:接上例,将~/test 恢复默认类型
[root@server ~]# cd  ~
[root@server ~]# ls  -Z  /root
[root@server ~]# ls  -Z  ~/test
[root@server ~]# restorecon -Rv  ~/test
[root@server ~]# ls  -Z  ~/test

3、semanage命令

3.1 作用

  • 用于管理 SELinux 的策略,查询/修改/增加/删除文件的默认SELinux安全上下文,管理网络端口、消息接口等

3.2 格式

semanage   选项    参数   文件
  • 选项:login|user|port|interface|fcontext|translation|boolean ,注意:fcontext查询默认安全上下文(重要)
  • 参数
 -l :查询;-a :添加-m :修改-d :删除-D :全部删除-t :类型-r :角色-s :用户-f :文件
  • 文件:设置对象文件或目录

4、常用命令组

  • 查询默认安全上下文
# 格式
semanage  fcontext  -l |  grep  文件名
[root@server ~]# semanage  fcontext  -l  |  grep  /etc/passwd
  • 查看允许访问的端口
# 格式
[root@server ~]# semanage  port  -l  |  grep  协议

五、实验

实验1

  • 使用httpd服务的端口演示selinux的设定
[root@server ~]# vim  /etc/httpd/conf/httpd.conf 
Listen 7777   # 修改80端口为7777
[root@server ~]# systemctl restart httpd   # 报错
[root@server ~]# semanage  port  -l  |  grep  http
http_cache_port_t              tcp      8080, 8118, 8123, 10001-10010
http_cache_port_t              udp      3130
http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000   # 7777端口未在放行列表中
pegasus_http_port_t            tcp      5988
pegasus_https_port_t           tcp      5989
[root@server ~]# systemctl status httpd.service  # 查看日志
[root@server ~]# semanage port -a -t http_port_t  -p  tcp  7777 # 添加新端口
[root@server ~]# semanage  port  -l  |  grep  http
http_cache_port_t              tcp      8080, 8118, 8123, 10001-10010
http_cache_port_t              udp      3130
http_port_t                    tcp      7777, 80, 81, 443, 488, 8008, 8009, 8443, 9000  
pegasus_http_port_t            tcp      5988
pegasus_https_port_t           tcp      5989
[root@server ~]# systemctl restart httpd  # 重启服务成功
# 测试:192.168.48.130:7777

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

实验2

  • 使用ssh设置新端口号,设置selinux端口策略
[root@server ~]# semanage  port  -l  |  grep  ssh
ssh_port_t                     tcp      22
[root@server ~]# vim /etc/ssh/sshd_config
Port 2222      # 去掉#,修改端口号
[root@server ~]# systemctl restart  sshd  # 失败
[root@server ~]# semanage port -a -t ssh_port_t  -p  tcp  2222 # 添加新端口
[root@server ~]# semanage  port  -l  |  grep  ssh
ssh_port_t                     tcp      2222, 22
[root@server ~]# systemctl restart  sshd  # 成功
# 打开node1输入以下内容测试
[root@node1 ~]# ssh  -p  2222  root@192.168.48.130

在这里插入图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

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

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

相关文章

element——switch接口成功后赋值打开开关

应用场景 基本用法使用v-model双向绑定值&#xff0c;进行开关控制 例子1:需求&#xff1a; **点击switch&#xff0c;出弹窗&#xff0c;点击弹窗保存按钮调接口成功后再赋值&#xff08;row.orderButtonValue“1”&#xff09;打开switch开的状态变颜色。 在vue 中使用 :va…

安全开发-JS应用NodeJS指南原型链污染Express框架功能实现审计WebPack打包器第三方库JQuery安装使用安全检测

文章内容 环境搭建-NodeJS-解析安装&库安装安全问题-NodeJS-注入&RCE&原型链案例分析-NodeJS-CTF题目&源码审计打包器-WebPack-使用&安全第三方库-JQuery-使用&安全 环境搭建-NodeJS-解析安装&库安装 Node.js是运行在服务端的JavaScript 文档参考…

分布式事务篇-2.4 Spring-Boot整合Seata

文章目录 前言一、pom jar导入:二、项目配置&#xff1a;2.1 配置 说明&#xff1a;2.1 .1 seata server 端:2.1 .2 seata client 端: 2.2 开启seata 对于数据源的代理:2.3 seata-client 的注册中心&#xff1a;2.4 seata-client 的配置中心&#xff1a;2.5 去掉手写的数据源代…

【第四阶段】kotlin语言的mutator函数学习

1.mutator特性1&#xff1a;使用list可以直接 - fun main() {val list mutableListOf(123,456,789)//特性1 可是直接使用list -list 111list-123println(list) }执行结果 2.mutator特性2&#xff1a;removeIF() 如果实现是true 会自动遍历整个集合&#xff0c;一个一个的移除…

新亮点!安防视频监控/视频集中存储/云存储平台EasyCVR平台六分屏功能展示

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快&#xff0c;可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等&#xff0c;以及支持厂家私有协议与SDK接入&#xff0c;包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安…

【Robot Framework】发送GET和POST请求

做接口自动化时&#xff0c;经常要使用GET与POST请求&#xff0c;那么如何使用RF发送对应的请求呢&#xff1f; 一、安装RequestsLibrary pip install robotframework-requests安装以后&#xff0c;导入到对应的测试套件或测试用例中. 本次主要介绍通过RequestsLibrary来实现…

【状压+概率DP】CF678 E

Problem - E - Codeforces 题意&#xff1a; 思路&#xff1a; 首先&#xff0c;n < 18&#xff0c;应当想到状压 很明显&#xff0c;这里可以使用状压DP 设 dp[s][i] 表示&#xff0c;现在选的方案为 s &#xff0c;且我是 i 的最终胜利的概率是多少 重要的是转移 这是…

数学建模——校园供水系统智能管理

import pandas as pd data1pd.read_excel("C://Users//JJH//Desktop//E//附件_一季度.xlsx") data2pd.read_excel("C://Users//JJH//Desktop//E//附件_二季度.xlsx") data3pd.read_excel("C://Users//JJH//Desktop//E//附件_三季度.xlsx") data4…

飞天使-python的模块与包与装饰器

文章目录 模块与包标准模块第三方模块自定义模块 高级语法切片迭代器/生成器高级模式&#xff08;闭包&#xff09;高级模式&#xff08;装饰器&#xff09; 参考视频 模块与包 标准模块 import os print(os.getcwd())import sys print(sys.argv) print(sys.platform) print(…

ETC reset

ETC重新激活 换前挡风玻璃膜会把ETC设备拿下来&#xff0c;需要到【ETC服务中心】重新【粘上去】&#xff0c;另外需要工作人员用手持终端【重新激活】 ETC 背面有个 【白色】开关小柱子&#xff0c;一旦拆下来就失效&#xff0c;因为这个开关弹出来了 截面图看就是这样的&…

万人在线,一站式自动化运维 SysOM 3.0重磅发布!龙蜥社区系统运维 MeetUp 回顾来了

8 月 12 日&#xff0c;由龙蜥社区系统运维 SIG 主办&#xff0c;乘云数字协办的&#xff0c;主题为“观测&#xff0c;让运维更简单&#xff01;”的系统运维 MeetUp 于杭州圆满结束。来自乘云数字、谐云科技、乐维、云杉网络、擎创科技、观测云、阿里云以及浙江大学等众多厂商…

Linux 多线程同步机制(上)

文章目录 前言一、线程同步二、互斥量 mutex三、死锁总结 前言 一、线程同步 在多线程环境下&#xff0c;多个线程可以并发地执行&#xff0c;访问共享资源&#xff08;如内存变量、文件、网络连接 等&#xff09;。 这可能导致 数据不一致性, 死锁, 竞争条件等 问题。 为了解…

医院常见的HIS、CIS、LIS、EMR、PACS、RIS医疗信息化中的介绍

医院常见的HIS、CIS、LIS、EMR、PACS、RIS分别是&#xff1a; HIS&#xff08;Hospital Information System&#xff09;&#xff1a;医院信息系统&#xff0c;是医院管理信息化的核心系统&#xff0c;包括病人管理、医生管理、药品管理、医疗设备管理、财务管理等多个方面&am…

Unity插件---Dotween

1.什么是DOTween DoTween 是由 Demigiant 开发的&#xff0c;被广泛应用于 Unity 游戏开发中。它是一个流行的动画插件&#xff0c;被许多开发者用于创建流畅、高效的动画效果&#xff0c;提升游戏体验。 2.DOTween的初始配置 ①set up 首先找到DOTween Unity Panel 的面板 点…

c# 本地化中英文切换

区域 线程默认区域为当前计算机所选区域 设置当前区域&#xff1a; Thread.CurrentThread.CurrentCulture new CultureInfo(“zh-cn”); 获取当前区域&#xff1a; Console.WriteLine(Thread.CurrentThread.CurrentCulture.ToString()); 区域名称&#xff1a; “zh-cn” 中文…

数据结构(Java实现)-栈和队列

栈&#xff1a;一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。 先进后出 栈的使用 栈的模拟实现 上述的主要代码 public class MyStack {private int[] elem;private int usedSize;public MyStack() {this.elem new int[5];}Overridepublic …

【数学建模竞赛】各类题型及解题方案

评价类赛题建模流程及总结 建模步骤 建立评价指标->评价体系->同向化处理&#xff08;都越多越好或越少越少&#xff09;->指标无量纲处理 ->权重-> 主客观->合成 主客观评价问题的区别 主客观概念主要是在指标定权时来划分的。主观评价与客观评价的区别…

Django实现音乐网站 ⒁

使用Python Django框架制作一个音乐网站&#xff0c; 本篇主要是歌手页-全部歌手页功能开发。 目录 分出首页样式内容 创建首页样式文件 首页引入样式文件 全部歌手列表 创建路由 显示视图 引入分页实现库 视图方法 创建歌手首页 增加歌手跳转 导航条改活 首页增加…

STM32H750+LAN8720无操作系统移植lwip

前言 本文提供移植好的工程&#xff0c;见本文绑定资源 环境 STM32CubeMX&#xff1a; V6.8.1 STM32H7 HAL Pack&#xff1a; V1.11.1 硬件连接 STM32H750 GPIO定义如下&#xff1a; LAN8720 GPIO定义如下&#xff1a; 连接方式如下&#xff1a; LAN8720       <—…

畅捷通T+用户中locked勒索病毒后该怎么办?勒索病毒解密数据恢复

Locked勒索病毒是一种近年来在全球范围内引起广泛关注的网络安全威胁程序。它是一种加密货币劫持病毒&#xff0c;专门用于加密用户的数据并要求其支付赎金。Locked勒索病毒通过攻击各种系统漏洞和网络薄弱环节&#xff0c;使用户计算机受到感染并被加密锁定时&#xff0c;无法…