Linux操作系统安全分析与防护
Linux操作系统安全机制
Linux操作系统由于其开放源代码和广泛应用,在服务器和嵌入式系统中占有重要地位。为了确保Linux系统的安全,必须了解并实施一系列有效的安全机制。这些机制包括用户身份验证、访问控制、数据加密、日志和审计、安全更新等。
一、Linux简介
Linux是一种自由和开放源代码的类Unix操作系统,最初由Linus Torvalds在1991年发布。由于其开放性、稳定性和安全性,Linux广泛应用于服务器、桌面、嵌入式设备和超级计算机中。常见的Linux发行版包括Ubuntu、CentOS、Debian、Fedora等。
二、认证机制
-
密码认证
- 描述:用户通过输入用户名和密码登录系统。
- 工具:PAM(可插拔认证模块)
- 措施:设置强密码策略,要求定期更换密码,防止弱密码和重复密码。
- 配置:在
/etc/pam.d目录下配置PAM模块,如common-auth和common-password文件。
-
多因素认证(MFA)
- 描述:结合多种认证方式,如密码和一次性密码(OTP)。
- 工具:Google Authenticator、Duo
- 措施:配置多因素认证,增加认证层次,提高安全性。
- 配置:安装
libpam-google-authenticator,并在PAM配置文件中添加相关配置。
-
公钥认证
- 描述:使用公钥和私钥对进行无密码登录。
- 工具:SSH
- 措施:生成SSH密钥对,将公钥添加到服务器的
~/.ssh/authorized_keys文件中,禁用密码登录。 - 配置:在
/etc/ssh/sshd_config文件中设置PasswordAuthentication no和PermitRootLogin prohibit-password。
三、Linux访问控制
-
文件权限
- 描述:使用文件系统权限设置用户和组对文件的读、写、执行权限。
- 工具:chmod、chown、chgrp
- 措施:严格设置文件和目录权限,确保最小权限原则。
- 配置:使用
chmod设置权限,如chmod 755 filename;使用chown更改文件所有者,如chown user:group filename。
-
访问控制列表(ACL)
- 描述:提供更细粒度的文件权限控制。
- 工具:setfacl、getfacl
- 措施:使用ACL为文件和目录设置详细的访问权限。
- 配置:使用
setfacl命令,如setfacl -m u:user:rwx filename。
-
SELinux(安全增强型Linux)
- 描述:提供强制访问控制(MAC),控制进程和对象的交互。
- 工具:setenforce、getenforce、semanage
- 措施:启用和配置SELinux策略,监控和限制进程行为。
- 配置:在
/etc/selinux/config文件中设置SELINUX=enforcing,使用setenforce命令启用SELinux。
-
AppArmor
- 描述:应用程序级的强制访问控制系统。
- 工具:aa-status、aa-enforce
- 措施:启用AppArmor并为关键应用程序配置安全策略。
- 配置:使用
aa-enforce命令启用AppArmor策略,配置文件位于/etc/apparmor.d目录下。
四、审计机制
-
系统日志
- 描述:记录系统和应用程序的活动日志。
- 工具:syslog、rsyslog、journalctl
- 措施:配置日志记录,定期审查日志文件,监控系统活动。
- 配置:在
/etc/rsyslog.conf文件中配置日志记录,使用journalctl查看日志。
-
安全审计
- 描述:记录和分析系统安全相关的事件。
- 工具:Auditd
- 措施:配置Auditd规则,记录安全事件,分析审计日志。
- 配置:在
/etc/audit/auditd.conf文件中配置Auditd,使用auditctl命令管理规则。
-
日志监控
- 描述:实时监控日志,及时发现和响应安全事件。
- 工具:Logwatch、Logrotate
- 措施:配置日志监控和轮转,确保日志文件的完整性和可用性。
- 配置:在
/etc/logwatch/conf/logwatch.conf文件中配置Logwatch,在/etc/logrotate.conf文件中配置Logrotate。
五、安全更新
-
软件更新
- 描述:及时安装系统和软件的安全更新,修补已知漏洞。
- 工具:yum、apt-get、dnf
- 措施:定期检查和安装安全更新,使用包管理器自动更新功能。
- 配置:使用
yum update、apt-get update && apt-get upgrade或dnf update命令进行更新。
-
内核更新
- 描述:确保内核版本包含最新的安全修复。
- 工具:kexec、grub
- 措施:定期更新内核,启用安全补丁。
- 配置:使用
yum update kernel或apt-get install linux-image命令更新内核,配置/etc/grub.conf或/etc/default/grub文件。
六、网络安全
-
防火墙
- 描述:控制进出网络流量,防止未经授权的访问。
- 工具:iptables、firewalld、ufw
- 措施:配置防火墙规则,限制不必要的网络服务。
- 配置:使用
iptables配置防火墙规则,或使用firewalld和ufw进行简化管理。
-
入侵检测和防御系统(IDS/IPS)
- 描述:检测和防止网络攻击和入侵行为。
- 工具:Snort、Suricata、OSSEC
- 措施:部署和配置IDS/IPS,监控网络流量和系统活动。
- 配置:安装和配置Snort或Suricata规则,使用OSSEC进行主机入侵检测。
-
网络分段
- 描述:将网络划分为多个子网,限制攻击面。
- 工具:VLAN、子网划分
- 措施:根据安全需求配置网络分段,隔离关键资源。
- 配置:在网络设备上配置VLAN和子网,使用防火墙规则控制跨子网流量。
七、恶意软件防护
-
防病毒软件
- 描述:检测和清除系统中的病毒和恶意软件。
- 工具:ClamAV
- 措施:安装和配置防病毒软件,定期扫描系统。
- 配置:使用
clamd和freshclam进行病毒数据库更新和扫描。
-
文件完整性检查
- 描述:监控文件的完整性,检测篡改行为。
- 工具:Tripwire、AIDE
- 措施:配置文件完整性检查工具,定期检查关键文件。
- 配置:使用
tripwire或aide初始化数据库并进行定期检查。
八、安全策略管理
-
安全策略
- 描述:制定和实施系统安全策略,确保系统的安全性。
- 工具:PAM、sudo
- 措施:配置PAM模块,管理用户权限,使用sudo控制命令执行。
- 配置:在
/etc/pam.d目录下配置PAM模块,如common-auth和common-password文件;在/etc/sudoers文件中配置sudo规则。
-
配置管理
- 描述:确保系统配置符合安全最佳实践和标准。
- 工具:Ansible、Puppet、Chef
- 措施:使用配置管理工具自动化安全配置和管理。
- 配置:编写Ansible剧本或Puppet清单,自动部署和管理系统配置。
总结
Linux操作系统的安全机制包括用户身份验证、访问控制、数据加密、日志和审计、安全更新、网络安全、恶意软件防护和安全策略管理。通过实施这些安全机制,可以有效地防范各种安全威胁,提升系统的整体安全性。结合使用适当的安全工具和技术,组织可以大幅提高其Linux操作系统的安全防护能力,保护信息资产和业务连续性。
Linux系统安全分析
Linux系统由于其开放性和广泛应用,在服务器、桌面、嵌入式设备和超级计算机中占有重要地位。虽然Linux系统以其安全性和稳定性著称,但仍然面临各种安全威胁和挑战。进行系统安全分析可以帮助识别潜在的风险,并采取有效的防护措施。以下是Linux系统安全分析的详细内容:
一、常见安全威胁
-
恶意软件
- 描述:包括病毒、蠕虫、特洛伊木马、勒索软件等。
- 影响:可能导致数据泄露、系统破坏、资源滥用。
-
未授权访问
- 描述:未经授权的用户或程序试图访问系统资源。
- 影响:可能导致数据泄露和系统破坏。
-
权限提升
- 描述:攻击者利用系统漏洞获取更高权限。
- 影响:执行未授权操作,进一步渗透系统。
-
拒绝服务(DoS/DDoS)攻击
- 描述:通过耗尽系统资源使系统无法响应正常请求。
- 影响:导致系统或服务中断。
-
缓冲区溢出
- 描述:攻击者利用程序处理数据的漏洞执行恶意代码。
- 影响:可能导致系统控制权被获取或系统崩溃。
-
社会工程攻击
- 描述:通过欺骗手段获取系统访问权或敏感信息。
- 影响:可能导致数据泄露和系统控制权被获取。
二、安全分析方法
-
漏洞扫描
- 工具:Nessus、OpenVAS、Qualys
- 描述:自动化扫描系统中的已知漏洞,生成修复建议。
- 应用:定期进行漏洞扫描,识别和修补已知漏洞。
-
渗透测试
- 工具:Metasploit、Kali Linux
- 描述:模拟攻击者的行为,发现系统中的潜在漏洞和弱点。
- 应用:进行定期或不定期的渗透测试,评估系统的防护能力。
-
日志分析
- 工具:Splunk、ELK Stack(Elasticsearch, Logstash, Kibana)
- 描述:分析系统日志和事件,识别异常活动和安全事件。
- 应用:配置日志收集和分析工具,监控系统活动,及时响应安全事件。
-
配置评估
- 工具:SCAP Compliance Checker、CIS-CAT
- 描述:评估系统配置是否符合安全最佳实践和标准。
- 应用:使用配置评估工具检查系统配置,确保符合安全标准。
三、安全机制与措施
-
用户身份验证
- 措施:使用强密码策略、启用多因素认证(MFA)、使用公钥认证。
- 工具:PAM、Google Authenticator、SSH
- 配置:在
/etc/pam.d配置PAM模块,在/etc/ssh/sshd_config配置SSH认证。
-
访问控制
- 措施:严格设置文件和目录权限,使用ACL、SELinux、AppArmor进行细粒度访问控制。
- 工具:chmod、chown、setfacl、semanage、aa-status
- 配置:使用
chmod、setfacl设置文件权限,配置SELinux和AppArmor策略。
-
数据加密
- 措施:使用磁盘加密、文件加密和传输加密保护数据的机密性和完整性。
- 工具:LUKS、GnuPG、OpenSSL
- 配置:使用
cryptsetup配置LUKS,使用gpg加密文件,配置SSL/TLS。
-
日志和审计
- 措施:启用系统日志记录和安全审计,定期审查和分析日志。
- 工具:syslog、rsyslog、journalctl、Auditd
- 配置:在
/etc/rsyslog.conf配置日志记录,使用Auditd配置审计规则。
-
安全更新
- 措施:定期安装系统和软件的安全更新,修补已知漏洞。
- 工具:yum、apt-get、dnf
- 配置:使用
yum update、apt-get update && apt-get upgrade或dnf update命令进行更新。
-
网络安全
- 措施:配置防火墙规则,部署入侵检测和防御系统,实施网络分段。
- 工具:iptables、firewalld、Snort、Suricata
- 配置:使用
iptables或firewalld配置防火墙规则,部署和配置Snort或Suricata。
-
恶意软件防护
- 措施:安装和配置防病毒软件,定期进行文件完整性检查。
- 工具:ClamAV、Tripwire、AIDE
- 配置:使用
clamd和freshclam进行病毒扫描,配置Tripwire或AIDE进行文件完整性检查。
-
安全策略管理
- 措施:制定和实施系统安全策略,使用配置管理工具自动化安全配置。
- 工具:PAM、sudo、Ansible、Puppet、Chef
- 配置:在
/etc/pam.d配置PAM模块,在/etc/sudoers配置sudo规则,使用Ansible、Puppet或Chef管理系统配置。
四、安全防护案例
案例1:防范缓冲区溢出攻击
- 措施:使用编译器保护机制,如堆栈保护(Stack Protector)、地址空间布局随机化(ASLR)和数据执行保护(DEP)。
- 工具:gcc、execshield、grsecurity
- 配置:
- 在编译时启用堆栈保护:
gcc -fstack-protector -o program program.c - 启用ASLR:在
/proc/sys/kernel/randomize_va_space中设置为2 - 启用DEP:在内核配置中启用NX支持
- 在编译时启用堆栈保护:
案例2:防止未授权访问
- 措施:使用SELinux强制访问控制策略,限制用户和进程的权限。
- 工具:SELinux
- 配置:
- 启用SELinux:在
/etc/selinux/config中设置SELINUX=enforcing - 配置SELinux策略:使用
semanage命令管理策略,使用setsebool命令启用或禁用策略布尔值
- 启用SELinux:在
五、总结
Linux系统安全分析是确保系统免受各种威胁和攻击的重要步骤。通过实施用户身份验证、访问控制、数据加密、日志和审计、安全更新、网络安全、恶意软件防护和安全策略管理等措施,可以有效提升系统的安全性。结合使用适当的安全工具和技术,组织可以大幅提高其Linux操作系统的安全防护能力,保护信息资产和业务连续性。
Linux系统安全增强技术
Linux系统的安全性可以通过实施一系列增强技术来提高。这些技术涉及用户身份验证、访问控制、数据加密、日志和审计、安全更新、网络安全和恶意软件防护等方面。以下是详细的Linux系统安全增强技术:
一、用户身份验证增强技术
-
强密码策略
- 描述:设置复杂密码要求,包括长度、字符类型和定期更换。
- 工具:PAM(Pluggable Authentication Module)
- 配置:在
/etc/pam.d/common-password中配置pam_cracklib.so或pam_pwquality.so模块。
-
多因素认证(MFA)
- 描述:结合多种认证方式,如密码和一次性密码(OTP)。
- 工具:Google Authenticator、Duo
- 配置:安装
libpam-google-authenticator,并在PAM配置文件中添加相关配置。
-
公钥认证
- 描述:使用公钥和私钥对进行无密码登录。
- 工具:SSH
- 配置:生成SSH密钥对,将公钥添加到服务器的
~/.ssh/authorized_keys文件中,禁用密码登录(在/etc/ssh/sshd_config中设置PasswordAuthentication no)。
二、访问控制增强技术
-
文件系统权限
- 描述:严格设置文件和目录权限。
- 工具:chmod、chown、chgrp
- 配置:使用
chmod设置权限,如chmod 755 filename;使用chown更改文件所有者,如chown user:group filename。
-
访问控制列表(ACL)
- 描述:提供更细粒度的文件权限控制。
- 工具:setfacl、getfacl
- 配置:使用
setfacl命令,如setfacl -m u:user:rwx filename。
-
SELinux(安全增强型Linux)
- 描述:提供强制访问控制(MAC),控制进程和对象的交互。
- 工具:setenforce、getenforce、semanage
- 配置:在
/etc/selinux/config中设置SELINUX=enforcing,使用setenforce命令启用SELinux。
-
AppArmor
- 描述:应用程序级的强制访问控制系统。
- 工具:aa-status、aa-enforce
- 配置:启用AppArmor并为关键应用程序配置安全策略,配置文件位于
/etc/apparmor.d目录下。
三、数据加密增强技术
-
磁盘加密
- 描述:对磁盘分区进行加密,保护数据的机密性。
- 工具:LUKS(Linux Unified Key Setup)
- 配置:使用
cryptsetup命令配置LUKS加密,如cryptsetup luksFormat /dev/sda1。
-
文件加密
- 描述:对文件进行加密,保护敏感数据。
- 工具:GnuPG(GPG)
- 配置:使用
gpg命令加密和解密文件,如gpg -c filename。
-
传输加密
- 描述:保护数据在网络传输中的机密性和完整性。
- 工具:OpenSSL、stunnel、OpenSSH
- 配置:使用SSL/TLS加密网络通信,配置SSL证书和安全通道。
四、日志和审计增强技术
-
系统日志
- 描述:记录系统和应用程序的活动日志。
- 工具:syslog、rsyslog、journalctl
- 配置:在
/etc/rsyslog.conf文件中配置日志记录,使用journalctl查看日志。
-
安全审计
- 描述:记录和分析系统安全相关的事件。
- 工具:Auditd
- 配置:在
/etc/audit/auditd.conf文件中配置Auditd,使用auditctl命令管理规则。
-
日志监控
- 描述:实时监控日志,及时发现和响应安全事件。
- 工具:Logwatch、Logrotate
- 配置:在
/etc/logwatch/conf/logwatch.conf文件中配置Logwatch,在/etc/logrotate.conf文件中配置Logrotate。
五、安全更新增强技术
-
软件更新
- 描述:及时安装系统和软件的安全更新,修补已知漏洞。
- 工具:yum、apt-get、dnf
- 配置:使用
yum update、apt-get update && apt-get upgrade或dnf update命令进行更新。
-
内核更新
- 描述:确保内核版本包含最新的安全修复。
- 工具:kexec、grub
- 配置:使用
yum update kernel或apt-get install linux-image命令更新内核,配置/etc/grub.conf或/etc/default/grub文件。
六、网络安全增强技术
-
防火墙
- 描述:控制进出网络流量,防止未经授权的访问。
- 工具:iptables、firewalld、ufw
- 配置:使用
iptables配置防火墙规则,或使用firewalld和ufw进行简化管理。
-
入侵检测和防御系统(IDS/IPS)
- 描述:检测和防止网络攻击和入侵行为。
- 工具:Snort、Suricata、OSSEC
- 配置:安装和配置Snort或Suricata规则,使用OSSEC进行主机入侵检测。
-
网络分段
- 描述:将网络划分为多个子网,限制攻击面。
- 工具:VLAN、子网划分
- 配置:在网络设备上配置VLAN和子网,使用防火墙规则控制跨子网流量。
七、恶意软件防护增强技术
-
防病毒软件
- 描述:检测和清除系统中的病毒和恶意软件。
- 工具:ClamAV
- 配置:安装和配置防病毒软件,定期扫描系统,使用
clamd和freshclam进行病毒数据库更新和扫描。
-
文件完整性检查
- 描述:监控文件的完整性,检测篡改行为。
- 工具:Tripwire、AIDE
- 配置:使用
tripwire或aide初始化数据库并进行定期检查,配置文件完整性检查规则。
八、安全策略管理增强技术
-
安全策略
- 描述:制定和实施系统安全策略,确保系统的安全性。
- 工具:PAM、sudo
- 配置:在
/etc/pam.d目录下配置PAM模块,如common-auth和common-password文件;在/etc/sudoers文件中配置sudo规则。
-
配置管理
- 描述:确保系统配置符合安全最佳实践和标准。
- 工具:Ansible、Puppet、Chef
- 配置:编写Ansible剧本或Puppet清单,自动部署和管理系统配置。
总结
通过实施这些Linux系统安全增强技术,可以有效地提升系统的安全性,防范各种安全威胁。结合使用适当的安全工具和技术,组织可以大幅提高其Linux操作系统的安全防护能力,保护信息资产和业务连续性。定期进行安全分析和评估,及时发现和修复漏洞,是保持系统安全的关键。
相关文章:
Linux操作系统安全分析与防护
Linux操作系统安全机制 Linux操作系统由于其开放源代码和广泛应用,在服务器和嵌入式系统中占有重要地位。为了确保Linux系统的安全,必须了解并实施一系列有效的安全机制。这些机制包括用户身份验证、访问控制、数据加密、日志和审计、安全更新等。 一、…...
【LeetCode】面试题 16.21. 交换和
质量还不错的一道题,适合用于考察二分法。 1. 题目 2. 分析 求出两个数组的总和,我们令总和少的为less,总和多的为more;如果两个数组的总和是奇数,那么怎么都配不平,直接返回false;如果两个数…...
Web知识库应用程序LibreKB
什么是 LibreKB ? LibreKB 是一款知识库 Web 应用程序。免费、开源、自托管,基于 PHP/MySQL。 官方并没有 Docker 镜像,老苏这次图省事,并没有像往常一样构建一个镜像,而是基于 Docker 搭建了一个 LAMP 环境࿰…...
神经网络和安全结合:一种基于神经网络的智能攻击检测与防御系统;构建攻击行为预测模型
目录 神经网络和安全结合 摘要 引言 理论基础 技术实现与创新点 实验验证 结论与展望 一种基于神经网络的智能攻击检测与防御系统 一、系统概述 二、主要功能 三、技术特点 四、应用前景 构建攻击行为预测模型 一、构建攻击行为预测模型的步骤 1. 数据收集 2. …...
音视频解封装demo:将FLV文件解封装(demux)得到文件中的H264数据和AAC数据(纯手工,不依赖第三方开源库)
1、README 前言 注意:flv是不支持h.265封装的。目前解封装功能正常,所得到的H.264文件与AAC文件均可正常播放。 a. demo使用 $ make clean && make DEBUG1 $ $ $ ./flv_demux_h264_aac Usage: ./flv_demux_h264_aac avfile/test1.flv./flv_d…...
51单片机(STC8051U34K64)_RA8889_SPI4参考代码(v1.3)
硬件:STC8051U34K64 RA8889开发板(硬件跳线变更为SPI-4模式,PS101,R143,R141短接,R142不接) STC8051U34K64是STC最新推出来的单片机,主要用于替换传统的8051单片机,与标…...
关于C# 开发Winfrom事后总结
一:要求能读取文件夹中视频及图片并判断 private void Form1_Load(object sender, EventArgs e){string foldPath "路径";//获取该目录下的文件 string[] files Directory.GetFiles(foldPath "\\", "*.*", System.IO.SearchOption…...
Python学习笔记35:进阶篇(二十四)pygame的使用之音频文件播放
前言 基础模块的知识通过这么长时间的学习已经有所了解,更加深入的话需要通过完成各种项目,在这个过程中逐渐学习,成长。 我们的下一步目标是完成python crash course中的外星人入侵项目,这是一个2D游戏项目。在这之前ÿ…...
Transformer-LSTM预测 | Matlab实现Transformer-LSTM多变量时间序列预测
Transformer-LSTM预测 | Matlab实现Transformer-LSTM多变量时间序列预测 目录 Transformer-LSTM预测 | Matlab实现Transformer-LSTM多变量时间序列预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现Transformer-LSTM多变量时间序列预测,Transf…...
常见的点云数据的获取方式
1. 激光雷达(LiDAR) 获取方式:激光脉冲测距原理:激光雷达通过发射激光脉冲并接收反射信号来测量物体与传感器之间的距离。计算激光脉冲从发射到返回所需的时间,并将其转换为距离,从而生成三维点云数据。常…...
java 中钻石操作符 <> 的使用场景
在 Java 中,<> 符号通常被称为 "钻石操作符" (Diamond Operator),主要用于泛型类型的简化表示。<> 操作符引入于 Java 7,以减少泛型实例化时的冗余代码。以下是 <> 符号在 Java 中的几种主要使用场景:…...
C++ 定时器触发
c定时器,能够定时触发,即每隔一段固定时间执行一下函数 #include <iostream> #include <thread> #include <chrono> #include <signal.h> #include <time.h> #include <cstring> #include <glog/logging.h>#…...
【Docker 入门】
文章目录 概要 一、安装Docker CE1.1.配置阿里云镜像加速【可选】1.2.重启 二、Docker版本选择三、Docker指令1.Docker命令1.1.run1.2.start/stop/restart1.3.kill1.4.rm1.5.create1.6.ps1.7.exec1.8.top1.9.port 2.Dockerfile关键字3.镜像打包4.镜像运行5.镜像导入导出6.镜像查…...
现在有什么副业可以让人快速上岸?可以试试这个行业上岸其实不难
人为什么要努力赚銭? 当你想结婚的时候, 你可以慢慢挑,不着急。 当父母年老遭遇大病的时候, 你有机会尽孝。 当孩子需要时,你不会囊中羞涩。 年轻时以为金钱最重要, 如今年纪大了,发现这…...
每天一个数据分析题(四百二十)- 一元线性回归模型
现在通过参数估计得到一个一元线性回归模型为y 3x4,在回归系数检验中下列说法错误的是( ) A. 检验统计量是t统计量 B. 原假设是β13 C. 若拒绝原假设,就认为自变量与因变量存在显著的线性关系 D. 可以用P值与显著性水平比较结…...
day11:01文件处理
一、文件与文件模式介绍 1、什么是文件 文件是操作系统提供给用户/应用程序操作硬盘的一种虚拟的概念/接口 用户/应用程序(open()) 操作系统(文件) 计算机硬件(硬盘)2、为何要用文件 ①用户/应用程序可以通过文件将数据永久保存…...
一场夏测杀出个“双冠王”,极越01成为纯电SUV标杆
文 | AUTO芯球 作者 | 雷慢 万万没想到,懂车帝夏测运动会杀出一匹最大的黑马,竟然是极越01。 当前正在进行的懂车帝夏测运动会,在“纯电SUV/MPV续航达成率”赛事中,极越01以85.8%的续航达成率获得第一名。并且由于赛制规则限制…...
外科休克病人的护理
一、引言 休克是外科常见的危急重症之一,它是由于机体遭受强烈的致病因素侵袭后,有效循环血量锐减、组织灌注不足所引起的以微循环障碍、细胞代谢紊乱和器官功能受损为特征的综合征。对于外科休克病人的护理,至关重要。 二、休克的分类 外科休克主要分为低血容量性休克(包括…...
C-study(五).2
逻辑运算符 连接两个完整的关系表达式。 && 逻辑与,ab都为真时,a&&b的值真,其余时候假。 || 逻辑或,ab都为假时,a||b的值假,其余时候真。 ! 逻辑非、只需要一个运算对象,a真&a…...
使用Ultralytics YOLO进行模型验证
使用Ultralytics YOLO进行模型验证 使用Ultralytics YOLO进行模型验证简介为什么使用Ultralytics YOLO进行验证?验证模式的主要功能使用示例YOLO模型验证参数使用参数进行验证的示例使用Ultralytics YOLO进行模型验证 简介 验证是机器学习管道中的关键步骤,可以评估训练模型…...
基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能
1. 开发环境准备 安装DevEco Studio 3.1: 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK 项目配置: // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...
k8s从入门到放弃之HPA控制器
k8s从入门到放弃之HPA控制器 Kubernetes中的Horizontal Pod Autoscaler (HPA)控制器是一种用于自动扩展部署、副本集或复制控制器中Pod数量的机制。它可以根据观察到的CPU利用率(或其他自定义指标)来调整这些对象的规模,从而帮助应用程序在负…...
Android写一个捕获全局异常的工具类
项目开发和实际运行过程中难免会遇到异常发生,系统提供了一个可以捕获全局异常的工具Uncaughtexceptionhandler,它是Thread的子类(就是package java.lang;里线程的Thread)。本文将利用它将设备信息、报错信息以及错误的发生时间都…...
基于单片机的宠物屋智能系统设计与实现(论文+源码)
本设计基于单片机的宠物屋智能系统核心是实现对宠物生活环境及状态的智能管理。系统以单片机为中枢,连接红外测温传感器,可实时精准捕捉宠物体温变化,以便及时发现健康异常;水位检测传感器时刻监测饮用水余量,防止宠物…...
