文档

安装 Agent

更新时间:
一键部署

前置条件:环境准备

1. 获取安全 Agent

从下面的 URL 地址下载并将 IoT 安全运营中心 Agent (Linux Lite 版本)包放置到设备上的用户目录,并解压缩,例如通过 wget 进行获取:

Agent 下载链接:

https://lsoc-sdk.oss-cn-shanghai.aliyuncs.com/release/Linux-Lite/Security_Center_Agent_linux_Lite_latest.tar.gz

cd ~
wget https://lsoc-sdk.oss-cn-shanghai.aliyuncs.com/release/Linux-Lite/Security_Center_Agent_linux_Lite_latest.tar.gz
tar -xf Security_Center_Agent_linux_Lite_latest.tar.gz

2. 安全 Agent 安装包目录结构说明

将安全 Agent 解压缩,得到 Security_Center_Agent_linux_Lite 文件夹。目录结构和各个目录的说明如下:

.
|-- config 								// 自动安装使用的配置文件,用户无需关心
| |-- soc 								// IoT 安全运营中心 Agent 配置,用户无需关心
| `-- system 						// 操作系统兼容性配置,用户无需关心
|-- i18n 									// 安装脚本国际化目录,用户无需关心
| |-- strings_en_US.sh
| `-- strings_zh_CN.sh
|-- sdk 										// IoT 安全运营中心 Agent 二进制文件包,用户无需关心
| |-- arm
| |-- arm64
| |-- x86
| `-- x86_64
|-- install_security_agent_linux_lite.sh // IoT 安全运营中心 Agent 安装脚本
`-- uninstall_security_agent_linux_lite.sh // IoT 安全运营中心 Agent 卸载脚本

3. 执行安装

在执行安装之前先确认你当前使用的 Linux 系统是发行版(安全 Agent 目前支持 Ubuntu、CentOS、Debian)还是内核版,如果是发行版请走分支 1 进行安装;如果是 Linux 内核版,请走分支 2 进行安装。

分支 1:Linux 发行版安装

用 root 权限执行 install_security_agent_linux_lite.sh,按照引导即可将 IoT 安全运营中心 Agent 安装到目标设备上。

下面是一个使用现有物联网平台产品接入 IoT 安全运营中心的例子:

root@aliyunio:~/workshop/Security_Center_Agent_linux_Lite_1.3.0# ./install_security_agent_linux_Lite.sh 
#欢迎安装阿里云 IoT 安全运营中心 Agent,
如果您的设备是第一次安装该 Agent, 请先确保在一台可进行系统还原的测试设备上进行尝试, 待安装成功后再进行大规模部署

第1步. 选择安装功能...
Agent 类型为:IoT 安全运营中心 Agent

第2步. 检查和确认安装环境...
检测到您的设备环境 CPU 架构为: x86_64, 请确定 (需要确认, 输入Y/N)
y
检测到您的设备环境 OS 为: CentOS Linux 7 (Core) 7, 请确定 (需要确认, 输入Y/N)
y

第3步. 安装 Agent 包...
检测到您的设备 SELinux 状态为: Disabled (检查通过)
要删除旧的安全服务程序吗? (需要确认, 输入Y/N)
y
已删除旧的安全服务程序
安装包准备完毕

第4步. 安全和设置阿里云 IoT 安全运营中心 Agent...
正在自动安装...
下面是本次安装的详细信息:
#################################################
 设备处理器架构 : x86_64
 设备操作系统 : CentOS Linux 7 (Core) 7
 守护程序类型 : systemd
 接入IoT安全运营中心 : custom
#################################################


[可选优化] 您是否需要开启入侵检测和主动防御功能模块? (需要确认, 输入Y/N)
y
入侵检测和主动防御功能模块已经部署, 请务必在安装完成之后重启设备或者系统, 以确认系统和应用正常运行, 如果遇到问题请加入 IoT 安全运营中心用户支持钉钉群获取帮助, 群号: 23147118
为了发挥IoT安全运营中心对设备的防护能力, 请手工执行以下步骤:
1. IoT安全运营中心设备保护服务已经成功在您的主机上运行, 但由于并没有接入网络, 因此安全能力实际并未生效
2. 请参考随安全Agent 附带的用户通道接入手册, 改造您设备侧的接入网络应用并在 MQTT 服务端增加桥接功能, 即可使用您自建的通道接入IoT安全运营中心服务

安全 Agent 已经启动完毕
阿里云 IoT 安全运营中心 Agent 已安装完毕

分支 2:Linux 内核版本安装

Linux 内核版本系统千差万别,每个设备厂商都有自己客制化的地方,需要用户按照如下步骤进行安装。

  • 确认芯片架构

# 首先确认芯片架构
uname -m
x86_64

例如这里获取到的架构是 x86_64(后面都以该架构举例),这里需要将该架构所对应的固件拷贝到根目录。

需要注意的是,如果你的 cpu 架构是 armv7,还需要确认你当前系统使用的是软浮点还是硬浮点,查看软硬浮点的方法:

  • 如果你当前系统支持 readelf 命令,可直接执行该命令查看;

  • 如果不支持,可随便从你的系统中导出一个可执行文件或动态库到支持 readelf 命令的 Linux 系统主机上查看。

readelf /bin/sh -h
ELF Header:
 Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
 Class: ELF32
 Data: 2's complement, little endian
 Version: 1 (current)
 OS/ABI: UNIX - System V
 ABI Version: 0
 Type: DYN (Shared object file)
 Machine: ARM
 Version: 0x1
 Entry point address: 0x12f01
 Start of program headers: 52 (bytes into file)
 Start of section headers: 107092 (bytes into file)
 Flags: 0x5000400, Version5 EABI, hard-float ABI
 Size of this header: 52 (bytes)
 Size of program headers: 32 (bytes)
 Number of program headers: 9
 Size of section headers: 40 (bytes)
 Number of section headers: 28
 Section header string table index: 27

查看 Flags 字段,如果是 hard-float 则是硬浮点,如果是 soft-float 则是软浮点。

  • 拷贝固件

# 将 x86_64 目录下的 system 目录拷贝到根目录
cp -rf ~/Security_Center_Agent_linux_Lite_1.3.0/sdk/x86_64/system /
cp -f ~/Security_Center_Agent_linux_Lite_1.3.0/config/soc/get_release.sh /system/dps/bin/

# 拷贝动态库
mv /system/dps/lib64/libsessionmux.so /usr/lib/
ln -s /usr/lib/libsessionmux.so /usr/lib64/libsessionmux.so

# 删除不需要的文件
rm -rf /system/dps/include

# 注意:这里因为CPU架构是 64 位,所以是 lib64 和 linker64;如果是 32 位,则是 lib 和 linker

  • 挂载 linker

# 挂载 linker
echo "/system/dps/bin/linker64" > /etc/ld.so.preload
# 注意:如果是 32 位架构,则导入的内容是 /system/dps/bin/linker

  • 启动安全 Agent

# 根据自己系统情况启动 dpsd_lite 守护进程,并设置成开机自启动
/system/dps/bin/dpsd_lite &

至此安全 Agent 基于三方上云通道的 standalone 模式已经安装完毕,后面只需用户上云通道集成 sessionmux 即可完成安全 Agent 上云。

4. 确认安装是否成功

请执行下面命令查看安全 Agent 服务是否启动,如果已经启动则说明安装成功(这里使用 Linux 发行版中支持的 systemd 查看的,其他版本使用相应的命令查看)。

Linux 发行版本通过systemd 查看:

root@aliyunio:~/workshop/Security_Center_Agent_linux_Lite_1.3.0# systemctl status dpsd_lite.service
● dpsd_lite.service - DPS Lite daemon
 Loaded: loaded (/etc/systemd/system/dpsd_lite.service; enabled; vendor preset: disabled)
 Active: active (running) since Sat 2023-08-05 14:34:27 CST; 2s ago
 Main PID: 3393 (dpsd_lite)
 CGroup: /system.slice/dpsd_lite.service
 └─3393 /system/dps/bin/dpsd_lite

Linux 内核版本通过如下命令查看:

在 Linux shell 执行:
ps -ef | grep dpsd_lite
root 4073 1 0 10:29 ? 00:00:02 /system/dps/bin/dpsd_lite
gcc 6253 6235 0 12:06 pts/6 00:00:00 grep --color=auto dpsd_lite

然后请重启启动测试设备,观察设备是否可以完成上电和启动,其中没有任何您的系统服务或者业务应用崩溃。如果遇到任务问题,请加入钉钉技术支持群:23147118 获取技术支持。

后续步骤:

您需要将已经在物联网平台上注册的设备接入 IoT 安全运营中心,请继续参考:

物联网平台设备集成安全Agent最佳实践

  • 本页导读 (0)
文档反馈