从 CLI 设置 EAP-TLS 网络

若要使用 az sphere 命令设置 EAP-TLS 网络,需要网络 RADIUS 服务器的根 CA 证书,以及设备的客户端证书。 证书必须采用 PKCS1 或 PKCS8 语法中的 .pem 格式。 请参阅 获取和部署 EAP-TLS 网络的证书 ,了解证书及其获取位置。 可以使用 OpenSSL 在 Linux 和适用于 Linux 的 Windows 子系统上将 PFX 文件转换为 .pem 格式。

谨慎

由于证书 ID 是系统范围的,因此添加新证书的 az sphere 命令或函数调用可能会覆盖由早期命令或函数调用添加的证书,这可能会导致网络连接失败。 强烈建议你制定明确的证书更新过程,并仔细选择证书 ID。

有关 Azure Sphere 如何使用 证书 ID 的详细信息,请参阅证书 ID。

按照以下步骤从命令行设置网络。

步骤 1. 在设备上安装客户端证书

安装客户端证书信息,包括公用证书、私钥和密码(如果网络上需要这些信息)。 使用以下参数的 az sphere device certificate add 命令:

参数 类型 描述 支持的版本
-c、--certificate 字符串 指定要添加的客户端证书的标识符。 字符串标识符 (最多 16 个字符) 。 有效字符包括 A-Z) (大写字母、a-z) (小写字母、数字 (0-9) 、下划线 (_) 、句点 (.) 和连字符 (-) 。 此标识符还用于 EAP-TLS 网络的 Wi-Fi 配置。 Azure Sphere CLI
--cert-type 字符串 指定要添加的客户端证书的类型。 输入“client”。 Azure Sphere CLI
--private-key-file 字符串 指定客户端私钥证书 .pem 文件的路径。 添加类型为“client”的证书时是必需的。 可以提供相对路径或绝对路径。 Azure Sphere CLI
-w、 --private-key-password 字符串 指定客户端私钥的可选密码。 添加加密的客户端证书私钥时,需要密码。 Azure Sphere CLI

例如:

az sphere device certificate add --certificate myClientCert --cert-type client --public-key-file C:\User\MyCerts\MyClientCert.pem --private-key-file C:\User\MyCerts\privkey.pem --private-key-password 1234

若要添加客户端证书,每个网络上都需要公钥文件路径和私钥文件路径。 仅当私钥已加密时,才需要私钥密码;与网络管理员检查。

步骤 2. 安装根 CA 证书

如果网络需要相互身份验证,请为 RADIUS 服务器安装根 CA 证书。 使用以下参数的 az sphere device certificate add 命令:

参数 类型 描述 支持的版本
-c、--certificate 字符串 指定要添加的根 CA 证书的标识符。 字符串标识符 (最多 16 个字符) 。 有效字符包括 A-Z) (大写字母、a-z) (小写字母、数字 (0-9) 、下划线 (_) 、句点 (.) 和连字符 (-) 。 此标识符还用于 EAP-TLS 网络的 Wi-Fi 配置。 Azure Sphere CLI
--cert-type 字符串 指定要添加的根 CA 证书。 输入“rootca”。 Azure Sphere CLI
--private-key-file 字符串 指定 rootca 私钥证书 .pem 文件的路径。 可以提供相对路径或绝对路径。 Azure Sphere CLI

例如:

az sphere device certificate add --certificate myRootCA --cert-type rootca --public-key-file C:User\MyCerts\MyRootCACert.pem

步骤 3. 添加 Wi-Fi 网络

安装证书后,在设备上添加 EAP-TLS 网络。 使用以下参数使用 az sphere device wifi add 命令:

参数 类型 描述 支持的版本
-s、--ssid 字符串 指定网络的 SSID。 网络 SSD 区分大小写。 Azure Sphere CLI
--client-cert-id 字符串 [EAP-TLS]指定标识符 (最多 16 个字符,) 标识包含公钥和私钥) 的客户端证书 (。 设置 EAP-TLS 网络所必需的。 Azure Sphere CLI
--client-id <user@domain> 字符串 [EAP-TLS]指定网络 RADIUS 服务器识别的身份验证 ID。 Azure Sphere CLI
--config-name 字符串 指定 (最多 16 个字符的字符串,) 指定网络配置的名称。 Azure Sphere CLI
--root-ca-cert-id 字符串 [EAP-tLS]指定标识符 (最多 16 个字符,) 标识设备对服务器进行身份验证的 EAP-TLS 网络的根 CA 证书。 Azure Sphere CLI

例如:

az sphere device wifi add --ssid myEapTlsSsid --client-cert-id myClientCert --client-id user@domain.com --root-ca-cert-id myRootCA --config-name Network1

步骤 4. 重新加载网络配置

安装证书并设置 EAP-TLS 网络后,需要重新加载网络配置,以确保它使用证书存储的最新内容。 使用 az sphere device wifi reload-config 命令。

例如:

az sphere device wifi reload-config

步骤 5. 验证网络是否已连接

若要验证设备是否已连接到网络,请使用 az sphere device wifi show-status 命令。 检查输出,查看创建的网络是否已列出、已启用和已连接。

az sphere device wifi show-status

az sphere device wifi show 命令显示特定网络的详细信息。 将此命令与 参数一起使用 --id 可列出为网络配置的客户端证书、根 CA 证书和客户端标识。 例如:

az sphere device wifi show --id 1