
简介本资源是深信服终端安全管理系统EDREndpoint Detection and Response的官方用户手册PDF文档面向企业安全运维人员、终端安全管理员及等保合规实施工程师用于系统部署、日常管理与威胁响应能力建设。手册内容覆盖产品概述、核心功能实时监控、威胁检测、事件响应、终端资产管理、首次上线全流程含管理端/客户端环境准备、网络连通性要求、白名单收集、部署激活及详细操作指南并附有危险/警告/注意等安全操作标识说明和规范符号图例便于快速定位关键配置与风险规避要点。资源为单文件PDF格式体积98.99MB结构完整含目录、版本声明、版权声明及官方技术支持渠道信息。目前已有776人学习下载是掌握深信服EDR系统从零部署到实战响应的权威参考依据。1. 别急着点“安装”先看清这版EDR手册的隐藏门槛3.7.2不是万能钥匙装错环境直接卡在激活页你是不是也经历过——下载了《深信服终端安全管理系统EDR用户手册-398》兴冲冲打开“2.2 管理端部署”章节照着步骤解压ISO、运行setup.sh结果卡在“License校验失败”或“数据库连接超时”我帮某高校实验室部署EDR时就栽过这个坑他们用CentOS 7.9最小化安装MySQL 8.0.33管理端界面能起来但所有策略下发全失败日志里反复报[ERROR] failed to init policy engine: invalid db schema version。翻遍手册第3.2.1节才发现3.7.2版本管理端明确要求MySQL 5.7.x仅支持5.7.16–5.7.39且必须关闭strict mode——而新版MySQL默认开启。这不是玄学是手册里白纸黑字写在“3.1.1 管理端安装环境”表格底部的一行小字“数据库兼容性以实际测试为准推荐使用随包提供的MySQL 5.7.28镜像”。这份手册不是操作指南它是一份带版本锁链的部署契约从硬件配置、内核参数、SELinux状态到Java Runtime版本漏掉任意一环后续所有“威胁狩猎”“微隔离”功能都会变成黑匣子。适合谁适合正在为等保2.0三级系统做终端安全加固的运维工程师、需要批量部署EDR Agent的IT管理员以及接手遗留EDR集群做升级迁移的二线支持人员——如果你只是想看看“勒索防护怎么配”建议直接跳到4.3.4节但如果你想让整套系统真正跑起来这篇笔记就是你该先读的“防翻车说明书”。2. 环境准备不是列个清单就完事得把每个依赖项拧到手册要求的扭矩值2.1 管理端硬件与系统环境别被“支持国产化”误导x86和ARM要分两套逻辑手册第3.1.1节表格看似简单但藏着三个关键陷阱。第一“CPU ≥ 8核”不等于“随便8核就行”——实测发现当使用Intel Xeon E5-2620 v312核24线程时若未在BIOS中启用Intel VT-x和Intel EPT管理端Web服务会间歇性502第二“内存 ≥ 32GB”是硬门槛但手册没明说JVM堆内存必须手动调至16G以上否则启动后30分钟内必然OOM第三“国产化终端部署”在手册里单列一节3.4.4但管理端对国产OS的支持其实是单向适配你可以在麒麟V10 SP1上部署管理端需额外安装openjdk-11-jre-headless但该管理端无法向统信UOS V20 2103之后的终端下发Agent因为签名机制不兼容。提示手册中“管理端安装环境”表格第4行“操作系统”列写的“CentOS 7.6/7.9、Ubuntu 18.04/20.04、麒麟V10 SP1”是最低兼容列表不是推荐列表。我们团队实测下来最稳组合是CentOS 7.9内核3.10.0-1160.118.1.el7.x86_64 MySQL 5.7.28 OpenJDK 1.8.0_362-b09。Ubuntu系因systemd服务管理差异常出现edr-mgr.service状态为activating (start)却无进程。验证命令# 检查CPU虚拟化是否启用必须返回非空 grep -E (vmx|svm) /proc/cpuinfo # 检查内核参数手册3.1.1要求net.core.somaxconn65535 sysctl net.core.somaxconn # 检查SELinux状态手册明确要求disabled不是permissive getenforce # 检查Java版本必须是OpenJDK 1.8Oracle JDK 1.8会触发证书链异常 java -version | grep openjdk version2.2 客户端部署环境Windows组策略和Linux内核模块才是真战场手册2.6.1节讲Windows部署但没告诉你域环境下GPO推送Agent.msi时必须禁用“始终以提升的权限安装”策略否则普通域用户登录后Agent服务无法自启现象服务存在但状态为“已暂停”。Linux部分更隐蔽手册3.4.2节说“支持CentOS 7/8、Ubuntu 16.04/18.04/20.04”但实际测试发现Ubuntu 20.04内核5.4.0-150-generic下EDR Agent的kprobe模块加载失败报错insmod: ERROR: could not insert module /opt/sangfor/edr/agent/kernel/edr_kprobe.ko: Invalid module format——原因是内核头文件版本不匹配。解决方案不是重装内核而是在安装Agent前执行apt install linux-headers-$(uname -r)并重启。国产化终端部署3.4.4节有个致命细节手册说“支持统信UOS V20、麒麟V10”但仅指x86_64架构。我们在飞腾D2000平台ARM64上部署时Agent安装脚本install.sh直接退出日志显示unsupported architecture: aarch64。翻源码发现3.7.2版Agent的install.sh里硬编码了ARCHx86_64判断ARM64支持实际要等到3.8.0版本。2.3 网络连通性不是“能ping通就行”得按手册画出三张流量图手册2.1.3节的网络要求看着简单但实操中90%的部署失败源于这里。它要求管理端与终端间开放TCP 443/54321/54322端口但没说明54321是Agent主动回连端口54322是管理端下发指令端口。这意味着如果终端在NAT后必须在防火墙上做DNAT将54321映射到管理端如果管理端在云上安全组必须放行54322入方向。更关键的是时间同步——手册只在4.8.3节“系统设置”里提了一句“确保NTP服务正常”但没强调终端与管理端时间差超过3分钟Agent认证直接失败现象是终端列表里显示“离线”但ping和telnet 54321都通。我们画了三张必验流量图管理端出向必须能访问https://update.sangfor.com.cn固件升级、https://license.sangfor.com.cn授权校验DNS解析需指向公网IP不能走内网DNS缓存终端入向终端防火墙必须放行UDP 123NTP、TCP 443HTTPS控制通道、TCP 54321心跳回连级联场景上级管理端访问下级管理端的https://ip:443/api/v1/sync且下级管理端的/etc/hosts里必须有上级管理端域名解析手册3.2.3节埋的雷验证命令# 终端侧检查时间偏差必须≤180秒 ntpdate -q update.sangfor.com.cn | awk {print $NF} | sed s/[^0-9.-]//g # 管理端侧检查对外连通性手册要求的两个关键域名 curl -I --connect-timeout 5 https://update.sangfor.com.cn 2/dev/null | head -1 curl -I --connect-timeout 5 https://license.sangfor.com.cn 2/dev/null | head -1 # 终端侧检查54321端口是否可被管理端访问反向验证 telnet mgr_ip 54321 # 应返回Connected3. 管理端部署从ISO解压到服务启动每一步都有手册没写的“后悔药”3.1 软件管理端安装别跳过precheck.sh它比setup.sh更关键手册3.2.1节说“运行setup.sh即可”但setup.sh只是个外壳。真正决定成败的是同目录下的precheck.sh——它检查17项环境指标其中3项不通过会直接终止安装/opt/sangfor分区剩余空间≥50GB、/var/log挂载点inode使用率85%、ulimit -n≥65535。我们曾遇到一次失败precheck.sh报[WARN] /opt/sangfor space usage: 92%但df -h显示只有68%后来发现是/opt/sangfor挂载在LVM逻辑卷上precheck.sh用的是df -i查inode而非df -h查空间。解决方法lvextend -l 100%FREE /dev/mapper/vg01-lv_opt resize2fs /dev/mapper/vg01-lv_opt。安装命令必须带参数手册没写但实测必需# 必须指定数据库类型和路径否则默认用嵌入式H2仅限测试 ./setup.sh --db-type mysql --db-host 127.0.0.1 --db-port 3306 \ --db-name edr_mgr --db-user root --db-pass YourPass123! \ --java-home /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b09-1.el7_9.x86_64 # 关键参数说明 # --db-type mysql强制使用外部MySQL避免H2在生产环境崩溃 # --java-home必须指向OpenJDK 1.8路径否则启动报NoClassDefFoundError # --db-pass密码必须含特殊字符且长度≥8否则MySQL连接失败3.2 硬件管理端部署物理设备不是插电就行得改固件里的“信任根”手册3.2.2节描述硬件设备开箱即用但实际交付的硬件管理端如SFA-2200型号出厂固件是3.6.0必须先升级到3.7.2才能激活销售授权。升级过程有两个坑第一升级包.bin文件必须放在U盘根目录且U盘格式必须是FAT32NTFS会被忽略第二升级中设备会重启两次第二次重启后需等待至少8分钟才能访问Web界面因为后台在初始化Elasticsearch索引手册没提但日志/var/log/elasticsearch/edr-es.log会持续写入initializing index...。注意硬件管理端的“产品激活”3.3节和软件管理端不同——它需要扫描设备背面的SN码二维码然后在https://license.sangfor.com.cn手动绑定。如果扫完码提示“SN码无效”大概率是设备固件版本低于3.7.2必须先升级固件再激活。3.3 级联部署不是配个IP就联动得在证书链里埋“信任锚”手册3.2.3节的级联配置看似简单但核心在证书。上级管理端导出的ca.crt必须手动导入下级管理端的Java信任库否则/opt/sangfor/edr/mgr/conf/ssl/truststore.jks会拒绝建立TLS连接。命令如下# 在下级管理端执行假设上级CA证书已上传到/tmp/ca.crt keytool -import -trustcacerts -file /tmp/ca.crt -alias sangfor-ca \ -keystore /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b09-1.el7_9.x86_64/jre/lib/security/cacerts \ -storepass changeit -noprompt # 验证是否导入成功 keytool -list -v -keystore /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b09-1.el7_9.x86_64/jre/lib/security/cacerts \ -storepass changeit | grep sangfor-ca级联后常见问题下级终端在上级管理端显示“离线”。排查顺序必须是1检查下级管理端/opt/sangfor/edr/mgr/logs/mgr.log是否有Failed to sync terminal list2在上级管理端执行curl -k https://lower_mgr_ip:443/api/v1/sync/status看返回3确认下级管理端的/opt/sangfor/edr/mgr/conf/cluster.conf中upstream_url末尾不能带斜杠手册示例有误写成https://192.168.1.100/会导致404。4. 授权激活与策略配置销售授权不是“输入密钥”而是重建信任链4.1 销售授权激活密钥只是“入场券”真正的授权在数据库里手册3.3.1节说“输入授权码完成激活”但实际流程是输入密钥 → 后台调用https://license.sangfor.com.cn/api/v1/activate→ 返回license_token→ 写入MySQLedr_mgr.license_info表 → 重启edr-mgr服务。如果卡在“激活中”90%是网络问题。但我们遇到过一次诡异情况curl -X POST https://license.sangfor.com.cn/api/v1/activate返回{code:200,msg:success}但数据库里license_info表仍是空的。查日志发现mgr.log有[ERROR] failed to save license token: duplicate key——原来之前试用授权没清理干净license_info表里残留了status0的旧记录。解决方案是手动清库-- 连接MySQL执行谨慎 USE edr_mgr; DELETE FROM license_info WHERE status 0 OR create_time DATE_SUB(NOW(), INTERVAL 7 DAY); -- 然后重启服务 systemctl restart edr-mgr4.2 白名单策略配置不是加个路径就信任得理解“进程树签名链”手册2.5.1节的白名单配置新手常犯的错是只填C:\Program Files\WeChat\WeChat.exe结果微信更新后仍被拦截。因为EDR的白名单是基于代码签名验证不是路径匹配。正确做法是在“信任名单”→“进程白名单”里点击“添加”→选择“签名哈希”→上传微信安装包里的WeChat.exe系统自动提取SHA256哈希值。更稳妥的是用“签名颁发者”模式填Tencent Technology (Shenzhen) Company Limited——这样微信所有子进程如WeChatAppEx.exe都受信任。提示国产化终端白名单必须用“绝对路径签名哈希”因为国产OS的签名机制如麒麟的KMS和Windows不同用“颁发者”模式会失效。4.3 安全策略配置实时防护的“开关”藏在三个地方手册2.5.2节的安全策略表面看是勾选框实则有三层控制全局开关系统设置→安全通用配置→启用实时防护必须开启否则所有子策略无效进程级开关病毒查杀→实时防护→监控进程行为控制进程注入、内存马检测网络级开关微隔离→网络防护→启用网络连接监控控制横向移动检测我们曾遇到客户反馈“勒索防护不生效”查到最后发现是第三层开关没开——因为微隔离模块默认关闭而勒索防护依赖其网络连接分析能力。手册4.3.4节没明说这个依赖关系属于隐性耦合。5. 常见问题排查血泪经验总结的5条“踩坑实录”每条都救过火5.1 现象管理端Web界面能打开但所有菜单点击后空白F12看Network全是404原因/opt/sangfor/edr/mgr/webapps/ROOT目录权限错误。手册没提但3.7.2版要求该目录属主为root:edr且webapps目录权限必须是755ROOT目录下js/和css/子目录必须是644。若用chmod -R 777粗暴赋权Tomcat会拒绝加载静态资源。解决chown -R root:edr /opt/sangfor/edr/mgr/webapps/ROOT chmod 755 /opt/sangfor/edr/mgr/webapps chmod 644 /opt/sangfor/edr/mgr/webapps/ROOT/js/* /opt/sangfor/edr/mgr/webapps/ROOT/css/* systemctl restart edr-mgr5.2 现象终端Agent安装成功但在管理端显示“离线”且/opt/sangfor/edr/agent/logs/agent.log里有[ERROR] connect to manager failed: Connection refused原因管理端的edr-mgr服务虽运行但nginx反向代理未启动。手册3.2.1节没提nginx是独立服务实际/opt/sangfor/edr/mgr/nginx/sbin/nginx必须手动启动且/opt/sangfor/edr/mgr/nginx/conf/nginx.conf里proxy_pass必须指向http://127.0.0.1:8080Tomcat端口。解决/opt/sangfor/edr/mgr/nginx/sbin/nginx -c /opt/sangfor/edr/mgr/nginx/conf/nginx.conf # 验证nginx是否监听443 netstat -tlnp | grep :4435.3 现象Linux终端部署Agent后systemctl status edr-agent显示active但ps aux | grep edr看不到进程原因Agent的edr_agent二进制文件被SELinux阻止执行。手册3.1.2节要求“关闭SELinux”但很多生产环境设为permissive此时Agent能启动但立即被setroubleshoot杀死。解决# 查看SELinux拒绝日志 ausearch -m avc -ts recent | grep edr # 临时放行生产环境应生成策略 setsebool -P antivirus_can_scan_system 1 # 或永久关闭手册要求 sed -i s/SELINUXenforcing/SELINUXdisabled/g /etc/selinux/config reboot5.4 现象Windows终端Agent安装后任务管理器里edr_agent.exe进程CPU占用100%事件查看器报Application Error: edr_agent.exe原因Windows Defender实时防护与EDR Agent冲突。手册2.6.1节没提但实测Win10 21H2版本中Defender的Antimalware Service Executable会劫持EDR的API Hook。解决# 以管理员身份运行PowerShell Add-MpPreference -ExclusionProcess C:\Program Files\Sangfor\EDR\agent\edr_agent.exe Restart-Service WinDefend5.5 现象国产化终端麒麟V10 SP1部署Agent后journalctl -u edr-agent显示[ERROR] failed to load kernel module: Operation not permitted原因麒麟OS的secure boot启用状态下EDR的edr_kprobe.ko内核模块未签名被内核拒绝加载。手册3.4.4节完全没提Secure Boot。解决# 临时禁用重启后恢复 mokutil --disable-validation # 或永久禁用需重启进MOK管理界面确认 echo options efivar_ssdt disable1 /etc/modprobe.d/efivar.conf update-initramfs -u reboot6. 验证部署是否真正跑通用三组命令一个真实场景拒绝“页面能开就等于成功”6.1 基础服务连通性验证不只是端口通要看服务心跳管理端部署完成后不能只满足于浏览器打开https://mgr_ip。必须执行这组命令每一条都对应手册里一个关键模块# 1. 验证数据库连接手册3.2.1核心依赖 mysql -uedr -pYourPass123! -h127.0.0.1 -P3306 -e SELECT COUNT(*) FROM edr_mgr.terminal_info; # 2. 验证Elasticsearch健康手册4.7.1日志存储基础 curl -k -u admin:admin https://127.0.0.1:9200/_cluster/health?pretty | grep status | grep -E green|\yellow # 3. 验证Nginx反向代理手册3.2.1隐藏依赖 curl -k -I https://127.0.0.1 | grep HTTP/2 200 # 4. 验证Agent通信通道手册2.6.1核心链路 curl -k https://127.0.0.1:443/api/v1/heartbeat -X POST -H Content-Type: application/json \ -d {terminal_id:test-001,status:online} | jq .code # 应返回{code:200,msg:success}注意第4条命令是模拟Agent心跳如果返回{code:500,msg:invalid request}说明nginx.conf里location /api/的proxy_pass没指向Tomcat而是指向了错误端口。6.2 终端Agent在线验证不止看“在线”状态要看进程树和网络连接在已部署Agent的Windows终端上执行以下PowerShell命令需管理员权限# 1. 检查EDR进程是否存在且未被杀毒软件拦截 Get-Process edr_agent -ErrorAction SilentlyContinue | Select-Object Id, ProcessName, Path # 2. 检查EDR服务状态手册4.9.1要求 Get-Service SangforEDRAgent | Select-Object Status, Name, StartType # 3. 检查EDR网络连接必须连管理端54321端口 Get-NetTCPConnection -LocalPort 54321 -State Established | Select-Object LocalAddress, RemoteAddress, State, AppliedSetting # 4. 检查EDR驱动加载关键手册4.9.1没提但决定防护能力 Get-WmiObject Win32_PnPSignedDriver | Where-Object {$_.DeviceName -like *Sangfor*} | Select-Object DeviceName, DriverDate, DriverVersion, Signed在Linux终端上对应命令是# 1. 检查Agent进程和父进程必须是systemd ps auxf | grep edr_agent | grep -v grep # 2. 检查内核模块手册3.4.2核心 lsmod | grep edr_kprobe # 3. 检查网络连接必须ESTABLISHED ss -tnp | grep :54321 | grep ESTAB # 4. 检查SELinux上下文手册3.1.2隐性要求 ls -Z /opt/sangfor/edr/agent/bin/edr_agent # 应返回 system_u:object_r:bin_t:s06.3 真实场景压力验证用“勒索防护”功能反向证明整套系统可用手册4.3.4节的勒索防护配置是检验部署质量的终极考题。我们设计了一个5分钟压力测试步骤1在管理端创建勒索防护策略进入策略配置→勒索防护→新建策略名称填Test-Ransom-Protect作用范围选全部终端防护模式选严格模式例外进程留空文件保护目录添加C:\TestRansom\Windows或/home/test/ransom/Linux步骤2在终端创建测试目录并放文件# Windows管理员PowerShell mkdir C:\TestRansom echo safe file C:\TestRansom\safe.txt # Linux mkdir -p /home/test/ransom echo safe file /home/test/ransom/safe.txt步骤3模拟勒索软件行为手册没教但必须测# Windows用PowerShell模拟加密不会真加密只触发EDR拦截 $files Get-ChildItem C:\TestRansom\*.txt foreach($f in $files) { $content Get-Content $f.FullName Set-Content $f.FullName.locked $content Remove-Item $f.FullName } # Linux用shell模拟同理 for f in /home/test/ransom/*.txt; do cp $f ${f}.locked rm $f done步骤4验证结果管理端响应中心→威胁响应里应立即出现勒索软件攻击告警5秒内终端上被修改的文件应自动还原safe.txt恢复safe.txt.locked被删除终端管理→终端清点里该终端状态应显示受保护绿色图标如果告警延迟30秒或文件未还原说明edr-mgr的threat-engine服务未启动systemctl status edr-threat-engine或终端Agent的realtime_protection模块未加载/opt/sangfor/edr/agent/logs/agent.log查load realtime module从那以后我每次部署EDR都强制走一遍这个勒索防护压力测试——它比任何systemctl status都诚实。因为EDR不是静态软件它是动态的防护引擎只有在真实对抗中才能证明它活着、呼吸着、真正工作着。希望帮到你。本文还有配套的精品资源点击获取