L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Productivité · SKILL.md

implementing-syslog-centralization-with-rsyslog

implementing-syslog-centralization-with-rsyslog

配置 rsyslog 实现集中式日志收集,支持 TLS 加密、自定义模板和日志轮转。 生成服务端和客户端配置文件,包含 GnuTLS 流驱动、x509 证书认证、 按主机隔离日志存储以及高可用 syslog 基础设施的可靠队列设置。

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: implementing-syslog-centralization-with-rsyslog description: >- 配置 rsyslog 实现集中式日志收集,支持 TLS 加密、自定义模板和日志轮转。 生成服务端和客户端配置文件,包含 GnuTLS 流驱动、x509 证书认证、 按主机隔离日志存储以及高可用 syslog 基础设施的可靠队列设置。 domain: cybersecurity subdomain: security-operations tags: [implementing, syslog, centralization, with] version: "1.0" author: mahipal license: Apache-2.0

使用说明

  1. 安装依赖:pip install jinja2 paramiko
  2. 使用 OpenSSL 为 rsyslog 服务端和客户端生成 TLS 证书。
  3. 运行 Agent 生成 rsyslog 服务端和客户端配置:
    • 服务端:在 6514 端口监听 TLS,按主机目录输出,JSON 格式模板
    • 客户端:使用磁盘辅助队列进行可靠的 TLS 转发
  4. 通过 SSH(paramiko)将配置部署到服务器。
  5. 验证 TLS 连接和日志投递。
python scripts/agent.py --server-ip 10.0.0.1 --clients 10.0.0.10,10.0.0.11 --ca-cert ca.pem --output syslog_report.json

示例

服务端配置(TLS)

module(load="imtcp" StreamDriver.Name="gtls" StreamDriver.Mode="1"
       StreamDriver.Authmode="x509/name")
input(type="imtcp" port="6514")
template(name="PerHostLog" type="string" string="/var/log/remote/%HOSTNAME%/%PROGRAMNAME%.log")
*.* ?PerHostLog

客户端配置(可靠转发)

action(type="omfwd" target="10.0.0.1" port="6514" protocol="tcp"
       StreamDriver="gtls" StreamDriverMode="1"
       StreamDriverAuthMode="x509/name"
       queue.type="LinkedList" queue.filename="fwdRule1"
       queue.maxdiskspace="1g" queue.saveonshutdown="on"
       action.resumeRetryCount="-1")
Skills enregistrées