FortiClient(Linux)日志用于排查 EMS 通信、VPN 连接、ZTNA 访问及终端防护等问题。根据故障类型选择相关组件日志,并结合发生时间、操作过程和服务端记录定位原因。
| 范围 | 日志目录 |
|---|
| 系统组件 | /var/log/forticlient |
| 当前用户图形界面 | ~/.config/FortiClient/logs |
fmon_log 位于 /var/log/forticlient/fmon 子目录。其他组件日志可在系统日志目录、相应子目录或诊断包中查找。
date -Is
cat /etc/os-release
ls -la /var/log/forticlient
ls -la /var/log/forticlient/fmon
ls -la "$HOME/.config/FortiClient/logs"
~ 和 $HOME 指当前用户的主目录。切换为 root 后查看的 GUI 日志目录可能与故障用户不同。目录不存在时先确认安装的软件包、版本及是否安装 GUI;不要创建空目录来代替查找实际日志。
各功能模块的日志及用途如下。文件名、扩展名和轮转编号以终端实际生成的文件为准;未找到同名文件时,可按组件关键词查找。
| 文件 | 用途与排查重点 |
|---|
fmon_log | 不同模式下手动反病毒扫描的摘要,位于日志根目录的 fmon 子目录。 |
avrtscan.log | 反病毒扫描功能相关记录。 |
vulscan.log | 漏洞扫描流程以及 VCM 引擎启动、停止记录。 |
vcm_logfazlog.db | 漏洞扫描结果数据库,记录扫描结果及 UTC 时间。具体存放位置以终端日志目录为准。 |
libvcm.log | 漏洞扫描引擎内部日志,可与 vulscan.log 和扫描结果结合查看。 |
| 文件 | 用途与排查重点 |
|---|
ipsecvpn.log | IPsec VPN / IKEv2 连接过程,包括协商提议、证书等问题。 |
fctdns.log | SSL VPN 与 IPsec VPN 的分离 DNS(Split DNS)及相关域名信息。 |
sslvpn.log | SSL VPN 连接过程,包括隧道、DNS、IP 地址和 DTLS 信息。 |
| 文件 | 用途与排查重点 |
|---|
fortiguard_agent.log | 网页过滤使用 FortiGuard 分类评级的相关记录。 |
webfiter.log | 网页过滤对 URL 的允许、阻止记录。查找时可使用 webf 关键词定位日志。 |
firewall.log | 网页过滤、ZTNA,以及部分 VPN 全隧道独占场景的 iptables 规则执行记录。 |
| 文件 | 用途与排查重点 |
|---|
ztproxy.log | ZTNA 启用状态、规则和证书相关错误。 |
| 文件 | 用途与排查重点 |
|---|
update.log | 更新任务从 FDS 同步特征库、引擎等内容的记录。 |
fazlog.dlb | 上传至 FortiAnalyzer(FAZ)前的临时日志存储文件,应与相关上传日志一并保存。 |
fazlogupload.log | 日志上传相关记录。排查时检查实际配置的目标服务、连接状态及上传结果。 |
| 文件 | 用途与排查重点 |
|---|
epctrl.log | EMS 与客户端同步、保活,以及 On-fabric / Off-fabric 状态。 |
fctsched.log | 监控其他进程,并记录进程启动、停止等状态。 |
confighandler.log | 访问 EMS 下发的配置数据库,并向其他进程提供配置信息的相关记录。 |
| 文件 | 用途与排查重点 |
|---|
main.log (~/.config/FortiClient/logs) | 图形界面处理记录,例如连接请求;位于当前用户的 ~/.config/FortiClient/logs,不在系统日志根目录。 |
根据故障现象选择日志,并结合相同时间段的服务端记录分析。
| 故障现象 | 优先查看 |
|---|
| EMS 同步、配置未生效 | epctrl.log → confighandler.log;进程启停加 fctsched.log |
| IPsec 或 SSL VPN 失败 | 按协议查看 ipsecvpn.log 或 sslvpn.log;域名解析异常加 fctdns.log |
| ZTNA 访问失败 | ztproxy.log、firewall.log,结合 EMS 策略及网关日志 |
| 网页允许/阻止结果异常 | FortiGuard 评级日志、网页过滤日志和 firewall.log |
| 漏洞扫描未启动或结果异常 | vulscan.log、libvcm.log、结果文件;先核对 UTC 时间 |
| 日志未上报 | 先确认本地事件已产生,再检查临时日志及 fazlogupload.log,核对实际上传目标 |
客户端进程没有启动、异常退出或没有生成模块日志时,可以补充服务状态。先识别实际服务单元,不要把 EMS 服务器服务当作终端服务:
systemctl --all --type=service
对于使用 systemd 的发行版,将下面的服务名与时间替换为现场值,再执行:
systemctl status ACTUAL_SERVICE --no-pager
journalctl -u ACTUAL_SERVICE --since '2026-10-25 09:00:00' --until '2026-10-25 09:30:00' --no-pager
系统日志是模块日志的补充。按需使用管理员权限读取,记录查询时间对应的时区。数据库或临时存储文件应保留原文件及目录关系,不直接修改,也不要假定可以用文本编辑器读取。
- 记录环境与时间:保存操作系统和 FortiClient 完整版本、主机名、故障时间及时区、复现步骤与完整错误文本;受管终端另记录 EMS 地址、终端 UID 和命中策略。
- 确认日志设置:按客户端日志的设置启用所需模块。需要 Debug 时仅对目标终端临时调整,等待策略同步并确认生效后再复现。
- 复现并保存:围绕一次明确的失败操作收集日志,覆盖故障前后时间段。保存相关主日志、错误日志、轮转文件及必要的子目录;优先同时保留完整导出包。
- 对齐上下文:按时间、目标地址、用户名和连接阶段,与 EMS、FortiGate、身份源或日志接收端的记录核对。UTC 时间需转换后再与本地时间比较。
- 检查结果并恢复设置:确认文件非空、时间范围覆盖故障且所选模块有记录;采集完成后恢复原日志级别,避免长期启用 Debug。
日志文件不存在时,先核对路径、故障用户、模块和版本;文件为空时,检查日志级别、策略是否生效及复现时间。目录权限不足时使用获授权的读取方式,不通过关闭自保护、修改原始日志或删除文件来解决采集问题。
| Ver | Description | Author | Rev | Date |
|---|
| 1.0 | First Complete | ysheng | tanga | 2026.10.18 |