CloudHSM日志

CloudHSM 一般有三种日志可以查看:

日志类型 来源 位置
客户端日志 CloudHSM Client/SDK 本地文件
HSM 审计日志 HSM 操作记录 CloudWatch Logs
API 调用日志 AWS API 操作 CloudTrail

客户端日志(本地)

# 默认位置

/opt/cloudhsm/run/cloudhsm-pkcs11.log

# 配置文件中指定

cat /opt/cloudhsm/etc/cloudhsm-pkcs11.cfg

{
  "logging": {
    "log_type": "file",
    "log_file": "/opt/cloudhsm/run/cloudhsm-pkcs11.log",
    "log_level": "info",
    "log_interval": "daily"
  }
}

日志级别:

级别 说明
error 只记录错误
warn 警告和错误
info 常规信息(默认)
debug 详细调试信息
trace 最详细

修改日志级别:

{
  "logging": {
    "log_level": "debug"
  }
}

CLI日志目录如下:

# CLI 日志

/opt/cloudhsm/run/cloudhsm-cli.log

HSM 审计日志(CloudWatch)

审计日志记录在所有AWS CloudHSM集群中自动启用。**它无法被禁用或关闭,也没有任何设置可以阻止AWS CloudHSM将日志导出到CloudWatch Logs。**每个日志事件都有时间戳和序列号,用于指示事件顺序并帮助我们检测任何日志篡改。

AWS CloudHSM收集日志并将其发布到账户中的CloudWatch Logs。

image-20260226220135232

有关CloudWatch日志组和日志格式的详细信息,请参阅文档 。有关日志中使用的格式的详细信息,请参阅此处 ,以及操作代码OpCode列表及其含义,请参阅此处

image-20260226220238191

审计日志内容包括:

记录内容 示例
用户登录/登出 login, logout
密钥操作 generateKey, deleteKey
加密操作 encrypt, decrypt, sign
用户管理 createUser, deleteUser

使用CloudWatch Insights分析

CloudWatch Insights可用于分析CloudHSM生成的审计日志。在Select up to 50 log groups下拉菜单中,输入/aws/cloudhsm并选择与我们的CloudHSM集群对应的那个:

image-20260226221150135

将以下查询粘贴到Query窗口中,然后单击Run Query

fields @timestamp, @message
| sort @timestamp asc
| parse @message /Time: (?<time>[\d\/\:\s\.]+)\,\s+usecs:(?<usecs>[\d]+)\s+[^:]+.{2}(?<version>[a-z\d]+)[^:]+.{2}(?<sequence>[a-z\d]+)[^:]+.{2}(?<reboot_count>.[a-z\d]+)[^:]+.{2}(?<opcode>\w+)[^0]+(?<opcode_hex>[a-z\d]+)[^:]+.{2}(?<command_type>\w+)[^0]+(?<command_type_hex>[a-z\d]+)[^:]+.{2}(?<user_id>[a-z\d]+)[^:]+.{2}(?<session_handle>[a-z\d]+)[^:]+.{2}(?<hsm_id>[x\d]+):HSM \w+: (?<response>[\w]+)[^:]+.{2}(?<log_type>\w+)[^\d]+(?<log_type_code>[\d]+)/
| limit 20
| filter command_type != "TIME_INFO_CMD"
| display time,usecs,version,sequence,reboot_count,opcode,opcode_hex,command_type,command_type_hex,user_id,session_handle,hsm_id,log_type,log_type_code

结果将显示每个命令,不包括时间同步事件(TIME_INFO_CMD

image-20260226221227107

CloudTrail 日志(API 操作)

记录 AWS API 层面的操作(不是 HSM 内部操作)。

记录的操作:

操作 说明
CreateCluster 创建集群
DeleteCluster 删除集群
CreateHsm 添加 HSM
DeleteHsm 删除 HSM
CreateBackup 创建备份