Other Parts Discussed in Thread: CC3235SF
器件型号: CC3235MODASF
Thread 中讨论的其他器件: CC3235SF
尊敬的 TI:
我尝试在 CC3235SF 上设置 HTTPS 服务器、但无法通过 HTTPS 连接。 详情如下:
环境和证书生成:
-
OpenSSL 版本:
OpenSSL 3.6.1 27 Jan 2026 -
用于生成密钥和证书的命令:
openssl genrsa -out server-key.pem 2048
openssl req -new -x509 ^
-key server-key.pem ^
-out server-cert.pem ^
-天 365 ^
-SHA256OpenSSL x509 -in server-cert.pem -out server-cert.der -outform der
OpenSSL RSA -in server-key.pem -out server-key.der -outform der - 放入
server-cert.derserver-key.der工程/userFile/certs/目录中。
代码中的 HTTPS 服务器设置:
unsigned char ServerCertificateFileName[] = "/certs/http_cert.der";
unsigned char ServerKeyFileName[] = "/certs/http_key.der";
unsigned char SecurityMode[] = {0x1};
unsigned char HttpsPort[] = {0xBB, 0x01}; // 443
unsigned char SecondaryPort[] = {0x50, 0x00}; // 80
unsigned char SecondaryPortEnable[] = {0x1};
// Set certificate and private key
sl_NetAppSet(SL_NETAPP_HTTP_SERVER_ID, SL_NETAPP_HTTP_DEVICE_CERTIFICATE_FILENAME, sizeof(ServerCertificateFileName), ServerCertificateFileName);
sl_NetAppSet(SL_NETAPP_HTTP_SERVER_ID, SL_NETAPP_HTTP_PRIVATE_KEY_FILENAME, sizeof(ServerKeyFileName), ServerKeyFileName);
// Enable HTTPS on primary port
sl_NetAppSet(SL_NETAPP_HTTP_SERVER_ID, SL_NETAPP_HTTP_PRIMARY_PORT_SECURITY_MODE, sizeof(SecurityMode), SecurityMode);
sl_NetAppSet(SL_NETAPP_HTTP_SERVER_ID, SL_NETAPP_HTTP_PRIMARY_PORT_NUMBER, sizeof(HttpsPort), HttpsPort);
// Enable secondary port for HTTP redirect
sl_NetAppSet(SL_NETAPP_HTTP_SERVER_ID, SL_NETAPP_HTTP_SECONDARY_PORT_NUMBER, sizeof(SecondaryPort), SecondaryPort);
sl_NetAppSet(SL_NETAPP_HTTP_SERVER_ID, SL_NETAPP_HTTP_SECONDARY_PORT_ENABLE, sizeof(SecondaryPortEnable), SecondaryPortEnable);
// Restart HTTP server
sl_NetAppStop(SL_NETAPP_HTTP_SERVER_ID);
sl_NetAppStart(SL_NETAPP_HTTP_SERVER_ID);
观察到的行为:
-
http://<IP>正常工作。 -
https://<IP>或https://<IP>:443ERR_CONNECTION_REFUSED在浏览器中使用失败。 -
ALL
sl_NetAppSet并sl_NetAppStart调用 return0(成功)、无错误。
我已检查/尝试的内容:
-
DER 和 PEM 格式的证书。
-
已使用 RSA 确认证书和私钥。
-
SecurityMode 设置为
0x1(TLS 启用)。 -
已启用用于重定向的辅助 HTTP 端口、但仍然无法连接。
-
浏览器未安装自签名证书。
问题:
-
应在 Wi-Fi 连接之前或之后配置 HTTPS 服务器?
-
除了
sl_NetAppSet和sl_NetAppStart、是否还有其他必要的步骤(例如,证书格式,权限,文件路径)? -
PC 浏览器是否需要安装自签名证书才能连接?
-
是否有建议的方法来测试或验证 HTTPS 服务器是否正在实际运行(例如端口检查)?
