创建警报和通知
在安全阈值被突破时触发 SNS 警报。
创建警报和通知 是 CoddyKit 上的免费 Cloud & IT Cert Prep 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cloud & IT Cert Prep 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cloud & IT Cert Prep 课程共包含 4 节课。
CloudWatch 警报的作用
CloudWatch 警报会监控单个指标,并在该指标值在一段时间内越过您定义的阈值时改变状态。它的作用是将超过限制的数值转化为一个操作,最常见的是发送通知。警报让监控真正具备告警能力。
警报的三种状态
警报始终处于三种状态之一:指标在正常范围内时为 OK,超过阈值时为 ALARM,数据不足以作出判断时为 INSUFFICIENT_DATA。您可以为任意状态转换关联操作,因此既能在问题开始时收到通知,也能在问题解除时收到通知。
阈值与评估
您可以配置统计方法(例如 Sum 或 Average)、周期(每个数据窗口的时长),以及在警报触发前必须超过阈值的评估周期数。要求连续多个周期出现异常,可以减少短暂峰值造成的误报;而只使用一个周期,则能尽可能快速地发出警报。
亚马逊 SNS 作为消息传递者
警报本身不会发送电子邮件,而是发布到亚马逊 SNS(简单通知服务)这一发布/订阅服务。SNS 主题可以有电子邮件地址、SMS 号码或 Lambda 函数等订阅者。警报通知该主题后,SNS 会将消息分发给所有订阅者。
aws cloudwatch put-metric-alarm \
--alarm-name RootAccountUsage \
--metric-name RootUsageCount --namespace Security \
--statistic Sum --period 300 --threshold 1 \
--comparison-operator GreaterThanOrEqualToThreshold \
--evaluation-periods 1 \
--alarm-actions arn:aws:sns:us-east-1:111122223333:sec-alerts触发自动化操作
通知并不是唯一的操作。警报可以调用EC2 操作、Auto Scaling 操作,或者通过 SNS 或 EventBridge 调用Lambda 函数。这样,安全警报就不只是通知某个人:一旦超过阈值,它还可以立即启动自动化遏制工作流。
复合警报
复合警报使用 AND/OR 逻辑将多个警报组合成一个父警报。这样可以减少警报噪声:无需分别发送三次通知,只有在有意义的条件组合为真时才触发一次。这样既能减少警报疲劳,又能保留每个底层警报以便查看详细信息。
保护 SNS 主题
SNS 主题是警报链的一部分,因此请保护好它。使用主题访问策略控制谁可以发布和订阅,并考虑使用 KMS 进行服务器端加密来保护敏感警报内容。能够订阅您的警报主题的攻击者,可以准确了解您正在监控哪些情况。
异常检测警报
警报不一定要使用固定阈值,也可以使用CloudWatch 异常检测。它会学习指标的正常范围,并在指标偏离正常区间时发出警报。这适用于具有每日或每周规律的指标;使用静态数值时,这类指标可能会漏报问题或持续触发警报。随着行为随时间变化,它也会相应调整。
缺失数据的处理
您可以决定警报如何处理缺失数据:将其视为正常、异常、忽略,或保持当前状态。对于安全警报,这一点非常重要。如果攻击者禁用了日志记录,导致日志停止,将缺失数据视为“超过阈值”可以把沉默转化为信号,而不是留下盲区。
面向安全性的警报设计
优秀的安全警报应当具体、调优得当,并路由到有人关注的渠道。噪声过多的警报会让团队逐渐习惯于忽略它们。对于 root 登录等关键事件,请使用较少的评估周期,以便立即发出警报;同时将警报与自动化操作结合起来,让最危险的事件在任何人阅读电子邮件之前就得到响应。
端到端流程
完整流程如下:指标筛选器匹配一条日志记录后,会递增一个指标;CloudWatch 警报监控该指标;指标超过阈值时,警报会通知SNS 主题,由该主题通知您的团队,并可选择触发Lambda。掌握这一流程对于考试中的日志记录和监控领域至关重要。
快速检查
测试您对警报的理解。
回顾
CloudWatch 警报监控一个指标,并根据评估周期内的阈值,在 OK、ALARM 和数据不足状态之间切换。超过阈值时,它会发布到SNS 主题,由主题将通知分发给订阅者或触发自动化操作。复合警报可以减少噪声,异常检测可以适应不同模式,而谨慎处理缺失数据则可以将日志缺口转化为信号。
用 AI 导师学习 Cloud & IT Cert Prep — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 150
- 课程
- 600
常见问题解答
「创建警报和通知」课时是免费的吗?
是的 — 「创建警报和通知」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cloud & IT Cert Prep 课程的其余内容,请升级到 CoddyKit PRO。 Cloud & IT Cert Prep 课程共包含 4 节课。
「创建警报和通知」这节课中我会学到什么?
在安全阈值被突破时触发 SNS 警报。 你通过在浏览器中直接运行的动手代码来练习 Cloud & IT Cert Prep,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cloud & IT Cert Prep 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cloud & IT Cert Prep 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「创建警报和通知」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cloud & IT Cert Prep 课中编写并运行代码吗?
能。每节 Cloud & IT Cert Prep 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。