## 一、为什么选 DSM 做日志服务器 无需额外采购硬件,一台 NAS 即可 7×24 小时运行,而且 DSM 基于 Linux 内核,自带日志轮转、压缩、ACL 权限体系。 图形化解密,几分钟就可以完成配置,比手撸 rsyslog.conf 更方便,最重要的一点是满足 ISO 27001、等保 2.0 集中审计条款,最低要求——日志不落本地、集中存放 180 天。 ## 二、底层原理(这些了解即可) - DSM 的「日志中心」套件底层就是 rsyslog 8.x,外加一个pg数据库用于索引与检索 - 默认监听 514/UDP,可手动再开 514/TCP 与 514/TLS,保证外网穿越不丢包 - 每条日志会被拆成 6 个字段: `facility.priority | timestamp | hostname | tag | msgid | message` 并在 pg数据库里建立GIN索引,因此关键字检索速度在千万级数据量下仍能保持在 <2s。 ## 三、如何把 DSM 变成 Rsyslog 服务器 ### 3.1 安装并启用套件 1. DSM 7.x:套件中心 → 搜索日志中心并进行安装。 ![install-套件中心][1] 2. 打开日志中心 左侧 接收日志,新增规则 ![添加规则][2] 3. 端口保持默认 514/UDP,如需外网穿越再勾「TCP」与「TLS」→ 应用。 ### 3.2 创建独立共享文件夹存储日志数据(防爆盘) 1. 控制面板 → 共享文件夹 → 新建 `logs`。 2. 配额建议: - 纯文本 50 GB 可存约 2 亿条 300 字节日志,这个根据自身需求进行配置; - 开启压缩还能再省 60% ![logs配额][3] 3. 创建完成后回到日志中心,存储空间 选择刚才的共享文件夹 → 启用自动归档以及压缩功能。 ![logs storage][4] ### 3.3 客户端指向 DSM #### Linux(rsyslog 客户端) ```bash # /etc/rsyslog.d/50-default.conf 末尾加一行 *.* @dsm ip:514 # 单 @ 代表 UDP;@@ 代表 TCP # 重启 sudo systemctl restart rsyslog ``` #### 网络设备(以Ruijie为例) ``` conf t logging dsm ip logging trap informational end wr ``` #### Windows(可选) 1. 这里推荐使用一个开源软件,evtsys, 项目地址:https://github.com/zensquare/evtsys。 2. 根据向导进行配置即可。 ## 四、验证与排错 ### 4.1 实时查看 打开 DSM「日志中心」→「概览」→ 右上角「实时日志」,应该立刻看到客户端 hostname 出现。 ### 4.2 关键字检索 搜索框输入 `sshd Failed` 回车,2 秒内即可定位所有 SSH 爆破来源 IP。 ### 4.3 性能监控 若接收速率持续 >3 000 条/秒,建议: - 把 UDP 改成 TCP,防止拥塞丢包; - 给 NAS 加 SSD 缓存,提高 PostgreSQL 写入 IO ### 4.4 常见故障表 | 现象 | 原因 | 解决 | |---|---|---| | DSM 收不到日志 | 本地防火墙未放行 514 | 控制面板 → 安全性 → 防火墙 → 新增规则放行 514/UDP | | 中文乱码 | 客户端与 DSM 字符集不一致 | 客户端 rsyslog 模板加 `$EscapeControlCharactersOnReceive off` | | 磁盘爆满 | 未开自动归档 | 启用「按日期归档」+「压缩」+「配额」 | [1]: https://img.wanghaoyu.com.cn/Picture/img/20250912100016764.png [2]: https://img.wanghaoyu.com.cn/Picture/img/20250912100811751.png [3]: https://img.wanghaoyu.com.cn/Picture/img/20250912101216938.png [4]: https://img.wanghaoyu.com.cn/Picture/img/20250912101343642.png Loading... ## 一、为什么选 DSM 做日志服务器 无需额外采购硬件,一台 NAS 即可 7×24 小时运行,而且 DSM 基于 Linux 内核,自带日志轮转、压缩、ACL 权限体系。 图形化解密,几分钟就可以完成配置,比手撸 rsyslog.conf 更方便,最重要的一点是满足 ISO 27001、等保 2.0 集中审计条款,最低要求——日志不落本地、集中存放 180 天。 ## 二、底层原理(这些了解即可) - DSM 的「日志中心」套件底层就是 rsyslog 8.x,外加一个pg数据库用于索引与检索 - 默认监听 514/UDP,可手动再开 514/TCP 与 514/TLS,保证外网穿越不丢包 - 每条日志会被拆成 6 个字段: `facility.priority | timestamp | hostname | tag | msgid | message` 并在 pg数据库里建立GIN索引,因此关键字检索速度在千万级数据量下仍能保持在 <2s。 ## 三、如何把 DSM 变成 Rsyslog 服务器 ### 3.1 安装并启用套件 1. DSM 7.x:套件中心 → 搜索日志中心并进行安装。 ![install-套件中心][1] 2. 打开日志中心 左侧 接收日志,新增规则 ![添加规则][2] 3. 端口保持默认 514/UDP,如需外网穿越再勾「TCP」与「TLS」→ 应用。 ### 3.2 创建独立共享文件夹存储日志数据(防爆盘) 1. 控制面板 → 共享文件夹 → 新建 `logs`。 2. 配额建议: - 纯文本 50 GB 可存约 2 亿条 300 字节日志,这个根据自身需求进行配置; - 开启压缩还能再省 60% ![logs配额][3] 3. 创建完成后回到日志中心,存储空间 选择刚才的共享文件夹 → 启用自动归档以及压缩功能。 ![logs storage][4] ### 3.3 客户端指向 DSM #### Linux(rsyslog 客户端) ```bash # /etc/rsyslog.d/50-default.conf 末尾加一行 *.* @dsm ip:514 # 单 @ 代表 UDP;@@ 代表 TCP # 重启 sudo systemctl restart rsyslog ``` #### 网络设备(以Ruijie为例) ``` conf t logging dsm ip logging trap informational end wr ``` #### Windows(可选) 1. 这里推荐使用一个开源软件,evtsys, 项目地址:https://github.com/zensquare/evtsys。 2. 根据向导进行配置即可。 ## 四、验证与排错 ### 4.1 实时查看 打开 DSM「日志中心」→「概览」→ 右上角「实时日志」,应该立刻看到客户端 hostname 出现。 ### 4.2 关键字检索 搜索框输入 `sshd Failed` 回车,2 秒内即可定位所有 SSH 爆破来源 IP。 ### 4.3 性能监控 若接收速率持续 >3 000 条/秒,建议: - 把 UDP 改成 TCP,防止拥塞丢包; - 给 NAS 加 SSD 缓存,提高 PostgreSQL 写入 IO ### 4.4 常见故障表 | 现象 | 原因 | 解决 | |---|---|---| | DSM 收不到日志 | 本地防火墙未放行 514 | 控制面板 → 安全性 → 防火墙 → 新增规则放行 514/UDP | | 中文乱码 | 客户端与 DSM 字符集不一致 | 客户端 rsyslog 模板加 `$EscapeControlCharactersOnReceive off` | | 磁盘爆满 | 未开自动归档 | 启用「按日期归档」+「压缩」+「配额」 | [1]: https://img.wanghaoyu.com.cn/Picture/img/20250912100016764.png [2]: https://img.wanghaoyu.com.cn/Picture/img/20250912100811751.png [3]: https://img.wanghaoyu.com.cn/Picture/img/20250912101216938.png [4]: https://img.wanghaoyu.com.cn/Picture/img/20250912101343642.png Last modification:November 8, 2025 © Allow specification reprint Support Appreciate the author Like 1 如果觉得我的文章对你有用,请随意赞赏