阿里云免费CA认证使用过程

在控制台购买免费的CA认证,之后填写相关的申请信息,如果是个人使用的话,申请很快的,基本上中午吃饭前提交的申请信息,下午吃饭回来再看就可以用了,点击下载证书,会有相关的配置教程,nginx/apache等,公司主要用apache,主要是apache的配置。

有的时候给的是crt后缀的文件,这种直接改名字就行,改成后缀pem,然后就能用了。

安装证书

文件说明:

1. 证书文件214553524970195.pem,包含两段内容,请不要删除任何一段内容。

2. 如果是证书系统创建的CSR,还包含:证书私钥文件214553524970195.key、证书公钥文件public.pem、证书链文件chain.pem。

( 1 ) 在Apache的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为214553524970195.key;

( 2 ) 打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到以下内容并去掉“#”:

#LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)
#Include conf/extra/httpd-ssl.conf

( 3 ) 打开 apache 安装目录下 conf/extra/httpd-ssl.conf 文件 (也可能是conf.d/ssl.conf,与操作系统及安装方式有关), 在配置文件中查找以下配置语句:

# 添加 SSL 协议支持协议,去掉不安全的协议
SSLProtocol all -SSLv2 -SSLv3
# 修改加密套件如下
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
# 证书公钥配置
SSLCertificateFile cert/public.pem
# 证书私钥配置
SSLCertificateKeyFile cert/214553524970195.key
# 证书链配置,如果该属性开头有 '#'字符,请删除掉
SSLCertificateChainFile cert/chain.pem

( 4 ) 重启 Apache。

 

上边是阿里云手册里给的配置过程,主要讲下实际配置遇到的问题和解决方案。

1,安装openssl:

centos 系统 用yum安装的apache直接也用 yum install mod_ssl openssl 命令安装即可。

 

我这边apache是编译的,直接到apache源码包里边执行,/user/local/apache2/bin/apxs -i -a -D HAVE_OPENSSL=1 -I/usr/include/openssl/ -L/usr/lib/openssl/ -c *.c -lcrypto -lssl -ldl,添加mod_ssl.so。

apache配置文件要加上Allow from all,直接加在httpd-ssl.conf文件里也行,否则没办法访问报权限错误。

后续操作就按照阿里云的配置就可以了。

### 阿里云MQTT OTA更新教程 #### 创建阿里云产品和设备 为了使ESP32通过MQTT协议执行OTA固件更新,需先在阿里云IoT平台上完成相应的产品创建与设备注册工作。这一步骤涉及到了解如何构建适合于特定硬件平台的产品实例,并从中获得必要的认证凭证用于后续的安全连接操作[^1]。 ```python import paho.mqtt.client as mqtt client = mqtt.Client() # 加载从阿里云获取的设备证书和密钥 client.tls_set(ca_certs="ca.pem", certfile="device_cert.crt", keyfile="private.key") ``` #### 设备端初始化设置 针对ESP32这样的微控制器单元(MCU),开发者应按照官方文档指导安装并配置好开发环境,编写程序以支持MQTT通信机制。此过程中要特别注意正确设定服务器地址、端口号以及其他重要的网络参数来匹配阿里云的服务接口标准。 #### 实现OTA功能的具体流程 当一切就绪之后,便可以着手处理核心部分—即怎样利用阿里云提供的APIs和服务去实施远程软件刷新动作: - **上传新版本固件文件至云端存储空间** 将待发布的应用程序镜像打包成适用于目标MCU架构的形式,并将其放置在一个可被访问的位置上;通常情况下会选用OSS对象储存作为载体之一[^3]。 - **通知指定节点有可用更新** 利用Topic主题发布消息告知已上线的新版资源位置及其相关信息(如校验码),以便接收方能据此判断是否有必要启动下载过程。 - **监听来自云端的通知指令** 客户端持续监视预设的主题队列等待命令下达,一旦收到指示则立即响应开展下一步行动,比如发起HTTP请求拉取最新数据流等。 - **验证接收到的数据完整性** 下载完成后应当再次核对哈希值或其他形式的身份标识符确保无误后再继续推进剩余环节的工作,防止因传输错误而导致不可预见的问题发生。 - **重启进入Bootloader模式完成刷写** 对于某些类型的处理器而言可能还需要额外的操作才能真正意义上激活新的系统映象,这就意味着整个升级周期尚未结束直到最终确认变更生效为止。 ```c++ #include "esp_ota_ops.h" // ...其他必要头文件... void applyFirmwareUpdate(const char* url){ esp_err_t err; // 设置HTTPS客户端选项... https_ota_config_t otaConfig = { .url = url, // 更多配置项... }; err = esp_https_ota(&otaConfig); if (err != ESP_OK) { Serial.printf("OTA update failed, error=%d\n", err); return; } } ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值