你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
教程:安装 Defender for IoT 微代理
本教程将介绍如何安装和验证 Defender for IoT 微代理。
在本教程中,将了解如何:
- 下载并安装微代理
- 对微代理进行身份验证
- 验证安装
- 测试系统
- 安装特定的微代理版本
注意
Defender for IoT 计划在 2025 年 8 月 1 日停用微代理。
先决条件
具有活动订阅的 Azure 帐户。 免费创建帐户。
IoT 中心。
确认是否在运行以下某一种操作系统。
必须已将资源组添加到 IoT 解决方案。
下载并安装微代理
根据设置情况,需要安装适当的 Microsoft 包。
添加相应的 Microsoft 包存储库:
下载与设备操作系统匹配的存储库配置。
对于 Ubuntu 18.04:
curl https://packages.microsoft.com/config/ubuntu/18.04/multiarch/prod.list > ./microsoft-prod.list
对于 Ubuntu 20.04:
curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list > ./microsoft-prod.list
对于 Debian 9(AMD64 和 ARM64):
curl https://packages.microsoft.com/config/debian/stretch/multiarch/prod.list > ./microsoft-prod.list
使用以下命令将存储库配置复制到
sources.list.d
目录:sudo cp ./microsoft-prod.list /etc/apt/sources.list.d/
使用以下命令安装 Microsoft GPG 公钥:
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg sudo cp ./microsoft.gpg /etc/apt/trusted.gpg.d/
确保已使用以下命令更新 apt:
sudo apt-get update
使用以下命令在 Debian 或基于 Ubuntu 的 Linux 发行版上安装 Defender for IoT 微代理包:
sudo apt-get install defender-iot-micro-agent
通过代理连接
此过程介绍如何通过代理将 Defender for IoT 微代理连接到 IoT 中心。
通过代理配置连接:
在微代理机器上,创建一个包含以下内容的
/etc/defender_iot_micro_agent/conf.json
文件:{ "IothubModule_ProxyConfig": "<proxy_ipv4>,<port>,<username>,<password>", "IothubModule_TransportProtocol": "MQTT_WebSocket_Protocol" }
用户和密码字段是可选的。 如果不需要这两个字段,请改用以下语法:
{ "IothubModule_ProxyConfig": "<proxy_ipv4>,<port>", "IothubModule_TransportProtocol": "MQTT_WebSocket_Protocol" }
删除 /var/lib/defender_iot_micro_agent/cache.json 处的所有缓存文件。
重启微代理。 运行:
sudo systemctl restart defender-iot-micro-agent.service
添加 AMQP 协议支持
此过程描述了支持 AMQP 协议所需的其他步骤。
添加 AMQP 协议支持:
在微代理机器上,打开
/etc/defender_iot_micro_agent/conf.json
文件并添加以下内容:{ "IothubModule_TransportProtocol": "AMQP_Protocol" }
删除 /var/lib/defender_iot_micro_agent/cache.json 处的所有缓存文件。
重启微代理。 运行:
sudo systemctl restart defender-iot-micro-agent.service
通过 Web 套接字协议支持添加 AMQP:
在微代理机器上,打开
/etc/defender_iot_micro_agent/conf.json
文件并添加以下内容:{ "IothubModule_TransportProtocol": "AMQP_WebSocket_Protocol" }
删除 /var/lib/defender_iot_micro_agent/cache.json 处的所有缓存文件。
重启微代理。 运行:
sudo systemctl restart defender-iot-micro-agent.service
代理将使用此协议,并在端口 443 上与 IoT 中心通信。 此协议支持 Http 代理配置,如果还配置了代理,则将按照代理配置中的定义选择代理通信的端口。
对微代理进行身份验证
可使用下面两种选项对 Defender for IoT 微代理进行身份验证:
使用模块标识连接字符串进行身份验证
需要从 DefenderIoTMicroAgent 模块标识详细信息处复制模块标识连接字符串。
若要复制模块标识的连接字符串,请执行以下操作:
导航到“IoT 中心”>
Your hub
>“设备管理”>“设备”。从“设备 ID”列表中选择设备。
选择“模块标识”选项卡。
在与设备关联的模块标识列表中选择“DefenderIotMicroAgent”模块。
选择“复制”按钮以复制连接字符串(主密钥)。
通过输入以下命令,在 Defender for IoT 代理目录
/etc/defender_iot_micro_agent
路径中创建一个名为connection_string.txt
的文件,其中包含以 utf-8 编码的复制连接字符串:sudo bash -c 'echo "<connection string>" > /etc/defender_iot_micro_agent/connection_string.txt'
connection_string.txt
现应在路径位置/etc/defender_iot_micro_agent/connection_string.txt
中。注意
连接字符串包含允许直接访问模块本身的密钥,因此包含仅应由根用户使用和读取的敏感信息。
使用以下命令重启服务:
sudo systemctl restart defender-iot-micro-agent.service
使用证书进行身份验证
若要使用证书进行身份验证,请执行以下操作:
按照这些说明获取证书。
将证书的 PEM 编码公共部分和私钥放置在
/etc/defender_iot_micro_agent
中(放入名为certificate_public.pem
和certificate_private.pem
的文件中)。将相应的连接字符串放到
connection_string.txt
文件中。 连接字符串应如下所示:HostName=<the host name of the iot hub>;DeviceId=<the id of the device>;ModuleId=<the id of the module>;x509=true
此字符串提醒 Defender for IoT 代理需要提供证书进行身份验证。
使用以下命令重启服务:
sudo systemctl restart defender-iot-micro-agent.service
验证安装
若要验证安装,请执行以下操作:
使用以下命令确保微代理正在正常运行:
systemctl status defender-iot-micro-agent.service
通过确认服务状态为
active
来确保服务稳定,并确保进程运行时间很合适。
测试系统
可以通过在设备上创建触发器文件来测试系统。 触发器文件将在代理中引发基线扫描,检测文件是否违反基线。
使用以下命令在文件系统上创建一个文件:
sudo touch /tmp/DefenderForIoTOSBaselineTrigger.txt
确保 Log Analytics 工作区已附加到 IoT 中心。 有关详细信息,请参阅创建 Log Analytics 工作区。
使用以下命令重启代理:
sudo systemctl restart defender-iot-micro-agent.service
建议最多可在中心显示一小时的时间。
将创建名为“IoT_CISBenchmarks_DIoTTest”的基线建议。 可以在 Log Analytics 中查询此建议,如下所示:
SecurityRecommendation
| where RecommendationName contains "IoT_CISBenchmarks_DIoTTest"
| where DeviceId contains "<device-id>"
| top 1 by TimeGenerated desc
例如:
安装特定的微代理版本
可以使用特定命令安装特定版本的微代理。
若要安装特定版本的 Defender for IoT 微代理,请运行以下命令:
打开终端。
运行以下命令:
sudo apt-get install defender-iot-micro-agent=<version>
清理资源
没有可清理的资源。