基于OpenSSL在Linux搭建私有CA:从原理到生产实践
1. 项目概述为什么我们需要一个私有CA在数字化协作和内部系统互联的时代安全通信是基石。无论是开发团队内部的服务调用、运维管理的自动化脚本还是公司内部的管理系统、测试环境都需要一个可靠的身份验证和加密传输机制。直接使用公共CA签发的证书对于内部服务而言不仅成本高昂、流程繁琐更重要的是很多内部域名如*.internal.company.com,dev-app-01根本无法通过公共CA的验证。这就是私有CACertificate Authority证书颁发机构的价值所在。它就像公司内部的“公安局”可以为所有内部“居民”服务器、服务、设备、用户签发被内部网络信任的“身份证”数字证书。在Linux环境下搭建这样一套体系不仅能彻底解决内部通信的HTTPS、TLS加密问题还能实现细粒度的访问控制、自动化证书签发是构建安全、可信内部网络环境的核心基础设施。我经历过从手动为每个服务生成自签名证书浏览器满屏的红色警告到使用Let‘s Encrypt但受限于内网域名再到最终下定决心搭建私有CA的完整过程。实测下来一套配置得当的私有CA能让后续的服务部署、CI/CD流水线集成、微服务间通信变得无比顺畅和安全。本文将基于OpenSSL带你从零开始在Linux上搭建一个生产可用的私有CA服务器并分享一路踩坑总结出的安全最佳实践。2. 核心组件与架构设计在动手之前我们需要理解私有CA的几个核心组件和它们之间的关系。一个完整的私有CA体系通常包含以下部分2.1 根CA (Root CA)这是整个信任链的起点是最高权威。它的证书是自签名的意味着它自己证明自己。根CA的私钥是最高机密必须被离线、严密地保管。它的主要职责是签发中间CA的证书。在实际操作中根CA的服务器甚至可以是一台不连接任何网络的物理机只在需要签发或更新中间CA证书时才临时上线。2.2 中间CA (Intermediate CA)由根CA签发证书。它是实际用于为最终实体服务器、客户端签发证书的CA。使用中间CA而非直接用根CA签发的目的是建立安全边界。即使中间CA的私钥不慎泄露因为它的服务器需要在线处理签发请求我们也只需吊销该中间CA的证书而无需动摇整个根CA的信任基础。一个CA体系内可以有多个中间CA用于不同的部门或用途如Web Server CA,Client Auth CA,Code Signing CA。2.3 最终实体证书 (End-Entity Certificate)这就是我们最终安装在Web服务器Nginx/Apache、API网关、数据库客户端等上面的证书。它由中间CA或根CA但不推荐签发包含了实体的身份信息如域名和公钥。信任链的传递客户端如浏览器在访问一个持有最终实体证书的服务器时会收到该证书以及签发它的中间CA证书。客户端需要预先信任根CA证书将其导入到系统的信任存储区然后通过证书链验证最终实体证书由中间CA签名 - 中间CA证书由根CA签名 - 根CA证书是受信任的。这样就建立了一条完整的信任路径。我们的配置流程将遵循这个“根CA离线 - 中间CA在线”的最佳实践架构。3. 环境准备与OpenSSL配置我们选择OpenSSL作为工具因为它功能强大、标准且预装在绝大多数Linux发行版中。首先我们需要一个清晰的工作目录结构。# 创建CA工作目录 sudo mkdir -p /etc/pki/CA cd /etc/pki/CA # 创建子目录用于区分根CA和中间CA的材料 sudo mkdir -p root/{private,certs,crl,newcerts} sudo mkdir -p intermediate/{private,certs,crl,newcerts,csr} # 创建关键文件 sudo touch root/index.txt sudo echo 1000 | sudo tee root/serial sudo touch intermediate/index.txt sudo echo 1000 | sudo tee intermediate/serial sudo touch intermediate/crlnumber # 设置严格的权限至关重要 sudo chmod 700 root/private intermediate/private接下来配置OpenSSL的配置文件。虽然系统有默认配置但为我们的CA定制一个更清晰。创建/etc/pki/CA/openssl.cnf# OpenSSL根CA配置文件示例 [ ca ] default_ca CA_default [ CA_default ] # 目录和文件位置 dir /etc/pki/CA certs $dir/certs crl_dir $dir/crl new_certs_dir $dir/newcerts database $dir/index.txt serial $dir/serial RANDFILE $dir/private/.rand # 根CA的私钥和证书 private_key $dir/private/root.key.pem certificate $dir/certs/root.cert.pem # 证书吊销列表 crl $dir/crl/root.crl.pem crlnumber $dir/crlnumber crl_extensions crl_ext # 默认设置 default_crl_days 30 default_md sha256 preserve no policy policy_strict [ policy_strict ] # 对于根CA要求完全匹配所有字段 countryName match stateOrProvinceName match organizationName match organizationalUnitName optional commonName supplied emailAddress optional [ req ] default_bits 4096 distinguished_name req_distinguished_name string_mask utf8only default_md sha256 x509_extensions v3_ca [ req_distinguished_name ] countryName Country Name (2 letter code) countryName_default CN stateOrProvinceName State or Province Name stateOrProvinceName_default Beijing localityName Locality Name localityName_default Beijing 0.organizationName Organization Name 0.organizationName_default My Company Ltd. organizationalUnitName Organizational Unit Name organizationalUnitName_default IT Department commonName Common Name commonName_max 64 emailAddress Email Address emailAddress_max 64 [ v3_ca ] # 扩展用于CA证书 subjectKeyIdentifier hash authorityKeyIdentifier keyid:always,issuer basicConstraints critical, CA:true keyUsage critical, digitalSignature, cRLSign, keyCertSign [ v3_intermediate_ca ] # 扩展用于中间CA证书 subjectKeyIdentifier hash authorityKeyIdentifier keyid:always,issuer basicConstraints critical, CA:true, pathlen:0 keyUsage critical, digitalSignature, cRLSign, keyCertSign [ server_cert ] # 扩展用于服务器证书 basicConstraints CA:FALSE nsCertType server nsComment “OpenSSL Generated Server Certificate” subjectKeyIdentifier hash authorityKeyIdentifier keyid,issuer:always keyUsage critical, digitalSignature, keyEncipherment extendedKeyUsage serverAuth [ client_cert ] # 扩展用于客户端证书 basicConstraints CA:FALSE nsCertType client nsComment “OpenSSL Generated Client Certificate” subjectKeyIdentifier hash authorityKeyIdentifier keyid,issuer:always keyUsage critical, digitalSignature extendedKeyUsage clientAuth注意这个配置文件是核心中的核心。policy_strict部分定义了签发证书时对主题字段的匹配规则。对于根CA我们通常要求国家、省、组织名必须完全匹配请求中的值这保证了证书的一致性。pathlen:0在v3_intermediate_ca中表示该中间CA不能再签发下级CA证书这符合我们的安全设计。4. 生成根CA证书根CA的生成是一次性的且必须在安全、离线的环境中进行。我们假设初始环境是安全的。# 切换到根CA目录 cd /etc/pki/CA/root # 1. 生成根CA的私钥4096位RSAAES-256加密 sudo openssl genrsa -aes256 -out private/root.key.pem 4096 # 系统会提示你输入并确认一个强密码。请务必记住并安全保存此密码 # 2. 使用私钥生成自签名的根CA证书有效期设为20年7300天 sudo openssl req -config ../openssl.cnf \ -key private/root.key.pem \ -new -x509 -days 7300 -sha256 -extensions v3_ca \ -out certs/root.cert.pem # 执行此命令会提示你输入上一步设置的私钥密码然后填写证书主题信息。 # 对于根CACommon NameCN可以设为类似 “My Company Root CA” 的名称。 # 3. 验证生成的根证书 sudo openssl x509 -noout -text -in certs/root.cert.pem在验证输出中你需要重点关注以下几点Issuer和Subject应该是相同的因为这是自签名证书。CA:TRUE必须出现在Basic Constraints扩展中。Key Usage必须包含keyCertSign和cRLSign。有效期是否正确。实操心得根CA私钥的密码建议使用密码管理器生成并保存长度至少20位包含大小写字母、数字和符号。生成证书后立即将private/root.key.pem和其密码备份到加密的USB驱动器或硬件安全模块HSM中然后从在线服务器上彻底删除私钥文件。这台“根CA服务器”的使命就此完成可以关机封存了。5. 生成中间CA证书中间CA将运行在线上服务器处理日常的证书签发和吊销请求。# 切换到中间CA目录 cd /etc/pki/CA/intermediate # 1. 生成中间CA的私钥同样建议加密存储 sudo openssl genrsa -aes256 -out private/intermediate.key.pem 4096 # 同样设置并牢记一个强密码。 # 2. 生成证书签名请求CSR sudo openssl req -config ../openssl.cnf -new -sha256 \ -key private/intermediate.key.pem \ -out csr/intermediate.csr.pem # 这里填写的主题信息应与根CA不同。CN可以设为 “My Company Intermediate CA”。 # 3. 【关键步骤】使用根CA为中间CA的CSR签名 # 我们需要回到根CA的环境或使用离线拷贝的根CA私钥和证书 # 假设我们把根CA的材料临时拷贝到了一个安全位置 /tmp/root_ca_secure cd /tmp/root_ca_secure # 使用根CA私钥为中间CA CSR签名并应用v3_intermediate_ca扩展 sudo openssl ca -config /etc/pki/CA/openssl.cnf \ -extensions v3_intermediate_ca \ -days 3650 -notext -md sha256 \ -in /etc/pki/CA/intermediate/csr/intermediate.csr.pem \ -out /etc/pki/CA/intermediate/certs/intermediate.cert.pem # 系统会要求输入根CA私钥的密码并让你确认签发。 # 4. 验证中间CA证书 sudo openssl x509 -noout -text \ -in /etc/pki/CA/intermediate/certs/intermediate.cert.pem # 检查 Issuer 是根CASubject 是中间CA且 pathlen:0 存在。 # 5. 创建证书链文件 # 客户端需要同时信任根CA和中间CA。我们将它们合并成一个链文件。 cat /etc/pki/CA/intermediate/certs/intermediate.cert.pem \ /etc/pki/CA/root/certs/root.cert.pem \ /etc/pki/CA/intermediate/certs/ca-chain.cert.pem现在ca-chain.cert.pem文件包含了从中间CA到根CA的完整信任链。在配置Web服务器如Nginx时ssl_certificate指向服务器自己的证书ssl_trusted_certificate或ssl_certificate_key之后的链配置可以指向这个ca-chain.cert.pem文件。6. 签发服务器与客户端证书中间CA准备就绪后就可以为内部服务签发证书了。我们以签发一个用于internal-api.mycompany.com的服务器证书为例。6.1 生成服务器证书# 为具体服务创建一个目录 sudo mkdir -p /etc/pki/CA/intermediate/servers/internal-api cd /etc/pki/CA/intermediate/servers/internal-api # 1. 生成服务器私钥通常不加密以便服务能自动加载 sudo openssl genrsa -out internal-api.key.pem 2048 # 对于生产环境2048位RSA目前仍足够安全也可选择生成ECDSA密钥。 # 2. 生成CSR。注意CN字段必须填写完全限定域名FQDN。 sudo openssl req -config /etc/pki/CA/openssl.cnf \ -key internal-api.key.pem \ -new -sha256 -out internal-api.csr.pem # 在提示中Common Name 必须填写 internal-api.mycompany.com。 # 其他信息如组织单位可以根据需要填写。 # 3. 使用中间CA签发证书 cd /etc/pki/CA/intermediate sudo openssl ca -config /etc/pki/CA/openssl.cnf \ -extensions server_cert \ -days 375 -notext -md sha256 \ -in servers/internal-api/internal-api.csr.pem \ -out servers/internal-api/internal-api.cert.pem # 输入中间CA私钥的密码确认签发。 # 4. 验证证书 sudo openssl x509 -noout -text -in servers/internal-api/internal-api.cert.pem sudo openssl verify -CAfile certs/ca-chain.cert.pem servers/internal-api/internal-api.cert.pem # 第二条命令应输出 “OK”。6.2 生成客户端证书用于双向TLS认证对于数据库访问、微服务间严格认证等场景可能需要客户端证书。sudo mkdir -p /etc/pki/CA/intermediate/clients/alice cd /etc/pki/CA/intermediate/clients/alice # 生成客户端私钥和CSR sudo openssl genrsa -out alice.key.pem 2048 sudo openssl req -config /etc/pki/CA/openssl.cnf \ -key alice.key.pem -new -sha256 -out alice.csr.pem # CN可以设为用户名如 “alice”。 # 使用client_cert扩展签发 cd /etc/pki/CA/intermediate sudo openssl ca -config /etc/pki/CA/openssl.cnf \ -extensions client_cert \ -days 365 -notext -md sha256 \ -in clients/alice/alice.csr.pem \ -out clients/alice/alice.cert.pem # 通常客户端需要PKCS#12格式的证书包包含私钥和证书 sudo openssl pkcs12 -export \ -in clients/alice/alice.cert.pem \ -inkey clients/alice/alice.key.pem \ -out clients/alice/alice.p12 # 会提示设置一个导出密码用于保护.p12文件。7. 证书吊销列表CRL与在线证书状态协议OCSP证书可能会因为私钥泄露、员工离职等原因需要提前吊销。CRL是一个被吊销证书的列表文件。# 在中间CA目录下生成或更新CRL cd /etc/pki/CA/intermediate sudo openssl ca -config /etc/pki/CA/openssl.cnf \ -gencrl -out crl/intermediate.crl.pem # 查看CRL内容 sudo openssl crl -in crl/intermediate.crl.pem -noout -text然而CRL需要客户端定期下载检查不够实时。OCSP在线证书状态协议是更好的选择它允许客户端实时查询某张证书是否有效。搭建一个OCSP响应服务器需要更多配置通常使用OpenSSL的ocsp命令工具或集成到如nginx等Web服务器中提供一个查询接口。这是一个更高级的主题核心是使用CA的证书和私钥来对查询请求进行签名响应。8. 自动化与集成实践手动签发证书无法规模化。在实际生产中我们需要自动化。有两种主流思路脚本自动化编写Shell或Python脚本将上述openssl ca命令封装起来通过传入参数域名、有效期等自动完成签发并集成到CI/CD流水线中。脚本必须安全地处理CA私钥密码如通过环境变量或特权管理工具。使用专用工具对于更复杂的环境推荐使用像HashiCorp Vault的PKI引擎、Smallstep的step-ca或EJBCA这样的专业CA软件。它们提供了丰富的API、Web界面、自动轮换、OCSP支持和高可用特性极大地简化了管理。例如使用step-ca可以轻松地通过一个简单的命令启动一个功能完整的私有CA并自动处理大部分繁琐的配置和安全细节。9. 安全最佳实践与踩坑实录搭建私有CA不难但要搭建一个“安全”的私有CA细节决定成败。9.1 密钥与密码管理根CA私钥必须离线这是铁律。任何在线环境都无法保证绝对安全。强密码与定期轮换为所有加密的私钥设置强密码并制定策略定期轮换中间CA的证书和密钥如每年一次。最小权限原则运行中间CA服务的系统账户其权限应被严格限制仅能访问必要的目录和文件。9.2 证书策略短有效期服务器和客户端证书有效期不应过长建议90天或更短。这迫使自动化更新即使证书泄露影响时间也有限。明确的命名规范证书的CN和SAN主题备用名称必须清晰。使用通配符证书需谨慎避免过度授权。细致的扩展密钥用法严格区分serverAuth,clientAuth,codeSigning等用途签发证书时只授予必要的权限。9.3 运维与监控集中日志与审计所有证书签发、吊销操作都必须有详细、不可篡改的日志。证书过期监控使用监控系统如Prometheus Blackbox Exporter或专门工具如certbot的renew_hook或LetsMonitor等SAAS服务监控所有内部证书的过期时间提前告警。定期更新CRL/OCSP确保吊销信息能及时被客户端获取。9.4 常见问题排查表问题现象可能原因排查步骤与解决方案浏览器提示“不受信任的连接”1. 根CA证书未导入客户端信任库。2. 证书链不完整。1. 将root.cert.pem导入操作系统或浏览器的“受信任的根证书颁发机构”。2. 使用openssl verify -CAfile ca-chain.cert.pem server.cert.pem验证链。检查Web服务器配置是否正确发送了中间证书。Nginx/Apache启动失败提示SSL错误1. 私钥与证书不匹配。2. 证书格式错误如PEM/DER混淆。3. 私钥文件权限太开放。1. 使用openssl x509 -noout -modulus -in cert.pem和openssl rsa -noout -modulus -in key.pem检查模数是否一致。2. 确保文件是PEM格式以-----BEGIN XXX-----开头。3. 设置私钥权限为600仅属主可读。客户端证书认证失败1. 服务端未配置要求客户端证书。2. 客户端证书的扩展密钥用法不含clientAuth。3. 客户端未发送证书或发送了错误的证书。1. 检查Nginx的ssl_verify_client或Apache的SSLVerifyClient指令。2. 用openssl x509 -text查看客户端证书的Extended Key Usage。3. 检查客户端如curl是否正确指定了证书和私钥文件curl --cert client.crt --key client.key https://...证书已吊销但客户端仍能访问1. CRL文件未更新或未发布。2. 客户端未配置检查CRL或OCSP。3. OCSP响应服务器故障。1. 重新生成CRL并确保其发布URL可访问。2. 在服务端配置中启用CRL或OCSP装订OCSP Stapling如Nginx的ssl_stapling指令。3. 检查OCSP响应服务日志。踩坑实录我曾遇到过一次紧急情况一个离职员工的客户端证书未及时吊销而他曾用该证书访问过敏感API。由于当时只配置了CRL且客户端的CRL缓存时间设置得很长导致风险窗口期较大。后来我们紧急启用了OCSP装订并在所有新签发的证书中加入了OCSP响应URL强制客户端进行实时状态检查。这个教训让我深刻理解到证书生命周期管理不仅仅是签发吊销和状态查询的实时性同等重要。10. 将CA证书部署到客户端最后要让整个内部系统信任你的CA需要将根CA证书或完整的证书链部署到所有客户端设备服务器、员工电脑、移动设备等。Linux服务器将root.cert.pem或ca-chain.cert.pem拷贝到/usr/local/share/ca-certificates/然后运行sudo update-ca-certificates。Windows通过组策略GPO或手动将根CA证书导入到“受信任的根证书颁发机构”存储区。macOS使用钥匙串访问Keychain Access工具导入并设置为“始终信任”。Java应用需要将证书导入到Java的信任库cacerts中keytool -import -alias my-root-ca -file root.cert.pem -keystore $JAVA_HOME/lib/security/cacerts。浏览器Chrome/Firefox在浏览器设置中手动导入证书。这个过程最好通过自动化配置管理工具如Ansible, SaltStack, Puppet来完成确保一致性。搭建和维护一个私有CA是一项持续的工作但它带来的安全收益和管理便利性是巨大的。从手动管理数百个自签名证书的混乱中解脱出来到拥有一个清晰、自动化的内部PKI体系你会感受到基础设施的秩序之美。关键在于从一开始就规划好架构根离线、中间在线、制定严格的策略短有效期、明确用途并配以自动化和监控工具。当你的CI/CD流水线能够自动为每个新部署的微服务申请和配置好TLS证书时你会觉得这一切的投入都是值得的。

相关新闻

USB协议核心框架与设备枚举实战指南

USB协议核心框架与设备枚举实战指南

1. 项目概述:从“插上就能用”到“协议驱动一切”如果你用过电脑,就一定用过USB。从最早的U盘、鼠标键盘,到现在的手机快充、外置显卡坞,USB接口几乎无处不在。它最大的魅力在于“即插即用”——大多数时候,我们不需要…

2026/7/31 12:23:06 阅读更多 →
Proteus仿真16x16 LED点阵:从元件创建到51单片机驱动全攻略

Proteus仿真16x16 LED点阵:从元件创建到51单片机驱动全攻略

1. 项目概述:为什么要在Proteus里折腾16x16 LED点阵?如果你玩过51单片机,大概率在面包板或者洞洞板上焊过8x8的LED点阵模块,点个爱心、显示个字母,成就感满满。但当你把目光投向更复杂的图案,比如显示一个汉…

2026/7/30 4:41:05 阅读更多 →
局域网共享打印机全攻略:从SMB协议到故障排查

局域网共享打印机全攻略:从SMB协议到故障排查

1. 项目概述:为什么局域网共享打印机是“刚需”? 如果你在办公室、工作室或者家里有多台电脑,但只有一台打印机,那么“局域网共享打印机”这个操作,绝对是你必须掌握的技能。它远不止是省下买多台打印机的钱那么简单。…

2026/7/30 4:41:05 阅读更多 →

最新新闻

切问学术:深耕学术研究领域 为广大学者提供专业高效的学术服务平台

切问学术:深耕学术研究领域 为广大学者提供专业高效的学术服务平台

做科研最耗人的,从来不是难题本身,而是检索、整理、写作、分析里的重复劳动——2026年,一批更精准、更贴合科研全流程的AI工具已成熟,能帮你把时间还给思考。本文实测7款全新工具,覆盖文献检索、阅读、写作、数据分析、…

2026/7/31 12:22:12 阅读更多 →
Amlogic A311D2 SoC深度解析:16GB大内存如何赋能边缘AI与云原生计算

Amlogic A311D2 SoC深度解析:16GB大内存如何赋能边缘AI与云原生计算

1. 从A311D2看国产SoC的“堆料”与突围最近在折腾一些边缘计算和媒体网关的项目,处理器选型是个绕不开的话题。当看到Amlogic A311D2这颗芯片的参数时,特别是“支持高达16GB RAM”这一条,说实话,第一反应是有点惊讶,紧…

2026/7/31 12:22:12 阅读更多 →
焊条消耗量你算得对吗?

焊条消耗量你算得对吗?

焊条消耗量你算得对吗?要想计算焊条消耗量在作业中采用的最直接的方法就是先计算焊缝金属的重量,然后再除以焊材的利用率就能得出数值。计算焊接材料的利用率是非常有必要的。但由于焊条和焊丝直径大小不相同,因而利用率也会有很大差别。对于工业上来说有…

2026/7/31 12:22:12 阅读更多 →
2027届毕业生就业筹备与发展路径全指南

2027届毕业生就业筹备与发展路径全指南

做科研最耗人的,从来不是难题本身,而是检索、整理、写作、分析里的重复劳动——2026年,一批更精准、更贴合科研全流程的AI工具已成熟,能帮你把时间还给思考。本文实测7款全新工具,覆盖文献检索、阅读、写作、数据分析、…

2026/7/31 12:22:12 阅读更多 →
焊接位置代号

焊接位置代号

焊接位置代号 1、板材对接焊缝: (1)平焊,代号1G;(2)横焊,代号2G;(3)立焊,代号3G;(4)仰焊,代号4G。 2、管材对接焊缝: (1)水平转动,代号1G;(2

2026/7/31 12:22:12 阅读更多 →
告别繁琐配置:Windows 一键部署 OpenClaw 本地 AI 工具实战指南

告别繁琐配置:Windows 一键部署 OpenClaw 本地 AI 工具实战指南

作为一名经常和服务器、代码打交道的开发者,我深知“环境配置”往往是接触新工具时最劝退的一环。最近我在研究 OpenClaw 这款本地 AI 工具时,发现它的安装流程虽然不复杂,但涉及 Node.js 环境检测、PowerShell 执行策略修改以及 npm 全局安装…

2026/7/31 12:21:12 阅读更多 →

日新闻

物理复制比逻辑复制好在哪?数据库复制原理详解

物理复制比逻辑复制好在哪?数据库复制原理详解

数据库复制是把主库数据同步到备库的机制,分为逻辑复制和物理复制两种。逻辑复制传输的是 SQL 语句或行变更事件,物理复制传输的是存储引擎底层的物理日志。阿里云 PolarDB(云原生数据库)采用物理复制,在同步延迟、数据…

2026/7/31 0:00:34 阅读更多 →
BilibiliDown:3分钟学会B站视频下载的终极指南

BilibiliDown:3分钟学会B站视频下载的终极指南

BilibiliDown:3分钟学会B站视频下载的终极指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors/bi/Bilib…

2026/7/31 0:00:34 阅读更多 →
有哪些游戏数据AI平台?游戏行业Data+AI融合方案盘点

有哪些游戏数据AI平台?游戏行业Data+AI融合方案盘点

当前,游戏行业的“DataAI融合”已从概念验证进入价值落地阶段。根据IDC 2025年数据,中国AI游戏云市场规模已达18.6亿元;同时,游戏研发环节AI渗透率高达86%,生成式AI内容普及率超过50%。面对庞大的市场,游戏…

2026/7/31 0:00:34 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/31 1:03:03 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/29 14:34:28 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/31 4:19:39 阅读更多 →

月新闻