在 SSMC 中配置远程 syslog 审核

SSMC 支持将审核日志事件导出到远程 syslog 服务器(安全信息和事件管理 (SIEM) 系统)。您可以通过多种方法进行配置。

如果您打算导出与简单易用的 Web 应用程序相关的审核日志事件,请按照本节中提供的说明进行操作。不过,如果要使用更全面的方法以包括来自 Web 应用程序和 SSMC 设备用户会话的可审核事件并遵循 NIST 800-53 准则,请跳过本节并参阅将日志导出到远程日志记录服务器一节。

前提条件
  • 创建位于 SSMC 设备中的 /opt/hpe/ssmc/ssmcbase/resources/ 目录的 log4j2.json 的备份副本。
    注意:

    SSMC 管理员可以创建主目录中的 JSON 文件的备份副本。例如,管理员可以运行 cp -p /opt/hpe/ssmc/ssmcbase/resources/log4j2.json ~/log4j2.json.bak 命令,这会创建 /opt/hpe/ssmc/ssmcbase/resources/log4j2.json 文件备份 /home/ssmcadmin/log4j2.json.bak

  • 使用具有 JSON 语法检查功能的文本编辑器可避免出现任何错误。log4j2.json 文件中的语法错误(如缺少括号或逗号)会导致所有日志记录失败。

    如果您没有支持 JSON 的语法文本编辑器,则运行以下命令:

    ssmcadmin@ssmc361:/opt/hpe/ssmc/ssmcbase/resources$ python -m json.tool < log4j2.json > /dev/null
    Expecting property name: line 25 column 1 (char 497)
    ssmcadmin@ssmc361:/opt/hpe/ssmc/ssmcbase/resources$

    如果没有错误,该命令不会生成任何输出。

    您也可以使用 SSMC 设置菜单以避免语法错误。

  • 从 syslog 主机系统中收集主机 IP 地址、端口号和协议值。

  • 如果 syslog 主机系统使用 SSL,则您必须具有 syslog 主机的受信任证书所在的信任存储的密码。要为 syslog 主机生成新的受信任证书,请参阅为 SSMC 远程 syslog 附加程序生成新的信任存储

过程
  1. 在 SSMC 主机系统上,找到 /opt/hpe/ssmc/ssmcbase/resources/log4j2.json 文件。
  2. 在进行任何更改之前创建 log4j2.json 的备份副本,以便于您在需要时进行恢复。
  3. 在该文件中找到 "appenders" 块。
  4. 插入一个类似于所示内容的条目,以将 hostportprotocol 值替换为您的 syslog主机中的值。

    协议条目必须包含值 tcpudp

    重要信息:

    在将 SSMC FIPS 模式切换到 ON 时,"type" 条目自动从 "JKS" 更改为 "BCFKS"。FIPS 要求将 "type" 设置为 "BCFKS"

      "appenders" : {
          "Syslog" : {
                "host" : "192.168.1.1",
                "port" : "6514",
                "protocol" : "tcp",
                "newLine" : "false",
                "appName" : "ssmcaudit",
                "includeMDC" : "true",
                "name" : "RemoteSyslog",
                "format" : "RFC5424",
                "mdcID" : "ssmcaudit",
                "messageId" : "Audit",
                "facility" : "AUTH",
                "SSL" : {
                      "protocol" : "SSL",
                      "TrustStore" : {
                            "password" : "password here",
                            "location" : "resources/syslog-truststore",
                            "type" : "JKS"
                      }
                }
          },
    
  5. "newline" 更改为 "true"
  6. 查看文件中的 SSL 信息。

    如果您的 syslog 服务器不使用 SSL,则可以省略 SSL 块。

    如果您的 syslog 服务器使用 SSL,请输入您的 syslog 服务器的受信任证书所在的信任存储的密码。

  7. log4j2.json 文件中的 loggers 块下面找到定义了 "name":"RemoteAudit" 的条目,并将其替换为以下条目:
    {
    				"name":"RemoteAudit",
    				"level": "info",
    				"additivity": "false",
    				"appender-ref": {
    					"ref": "RemoteSyslog"
    				}
    }
    
  8. 将修改后的文件保存到SSMC/ssmcbase/resources 文件夹。

    新的日志记录配置将立即生效。如果更改成功,您可以在远程 syslog 服务器上看到类似的审核条目:

    Oct 20 14:26:21 ssmc-host.example.com ssmcaudit "192.168.1.2", "unknown","unknown","unknown","CREATE","foundation action","SUCCESS", "https://192.168.1.3:8443/foundation/REST/sessionservice/sessions", "unknown","unknown","SUCCESS"