腾讯云云监控实践:使用云审计 CloudAudit SDK 精准管理腾讯云资源

文章目录

    • 一、什么是腾讯云的操作审计 CloudAudit
    • 二、CloudAudit 有哪些优势
    • 三、CloudAudit 应用场景举例
      • 3.1 安全分析
      • 3.2 资源变更跟踪
      • 3.3 合规性审计
    • 四、使用云审计 SDK 进行云监控
      • 4.1 安装环境包 PHP
      • 4.2 下载并解压云审计 PHP SDK
      • 4.3 创建的腾讯云持久证书(如果已创建请跳过)
      • 4.4 配置持久证书到云审计 PHP 页面中
      • 4.5 安装云监控工具
      • 4.5 编写简单代码设置告警
      • 4.6 设置 crontab 定时服务
    • 七、查看操作审计告警
    • 八、其他 QA
      • 8.1 什么时候应该使用 CloudAudit?
      • 8.2 我可以查询多久的操作审计记录
      • 8.3 一个操作记录中包含了哪些信息?
      • 8.4 CloudAudit 传送一个 API 调用事件需要多长时间?
      • 8.5 启用 CloudAudit 是否会影响腾讯云资源的性能,或增加 API 调用的延迟?
      • 8.6 检索到了异常操作怎么及时得到通知?
    • 九、文末总结

一、什么是腾讯云的操作审计 CloudAudit

来自官方的释义:操作审计 CloudAudit 是一项支持对您的腾讯云账号进行监管、合规性检查、操作审核和风险审核的服务。借助 CloudAudit,您可以记录日志、持续监控并保留与整个腾讯云基础设施中操作相关的账号活动。CloudAudit 提供腾讯云账号活动的事件历史记录,这些活动包括通过腾讯云管理控制台、API 服务、命令行工具和其他腾讯云服务执行的操作。这一事件历史记录可以简化安全性分析、资源更改跟踪和问题排查工作。

博主总结:这个服务是腾讯云监控服务的一种,类似于 AWS 的 CloudTrail,但是又有 AWS CloudWatch 的功能,博主理解是一个 AWS CloudTrail 与 CloudWatch 的结合体,甚至包含一些 AWS Config 的功能。

总结一句话就是:CloudAudit 是一种 腾讯云的监控服务,可记录在账号上进行的活动,并可以将日志文件传送至到 COS 存储桶。

在这里插入图片描述

二、CloudAudit 有哪些优势

吹逼的话博主这里就不多哔哔了,任何一个云厂商都有类似的服务,且必须要有。如果你有监控痕迹记录,公司有云审计要求的话,那么这个服务就需要了。

三、CloudAudit 应用场景举例

这里根据官方的说明,列举几个场景的举例,适合一些小伙伴更加方便了解学习该服务。

3.1 安全分析

在云账号或资源存在安全问题的情况下,CloudAudit 记录的日志可用于深入分析原因。例如,CloudAudit 详细记录了用户的账号登录操作,包括操作时间、源 IP 地址以及是否使用多因素认证登录等信息。通过这些记录,用户能够准确判断账号是否存在潜在的安全问题。

3.2 资源变更跟踪

当用户的资源经历异常变更时,CloudAudit 记录的操作日志能够协助用户追踪变更的原因。例如,当用户发现某个 CVM 实例停机时,通过 CloudAudit 可以获取相应的操作时间和源 IP 地址,从而进行深入分析停机操作的发起原因。

3.3 合规性审计

对于拥有多个成员的组织,若用户已经使用腾讯云的 CAM 服务来管理这些成员的身份,为满足组织的合规性审计需求,用户需要获取每个成员的详细操作记录。CloudAudit 记录的操作事件能够满足这种合规性审计需求,确保用户对组织内成员的活动有全面了解。

四、使用云审计 SDK 进行云监控

接下来我们直接体验使用 云审计的 SDK 来进行监控云主机登陆信息。

4.1 安装环境包 PHP

假如您的机器的操作系统是 CentOS,可以使用以下指令安装 PHP

yum install php php-devel

在这里插入图片描述

4.2 下载并解压云审计 PHP SDK

使用的命令如下:

cd /root/
wget http://devcloudaudit-1254962721.cosgz.myqcloud.com/qcloudapi-sdk-php-master.tar
tar -xvf qcloudapi-sdk-php-master.tar

执行过程如下:

[root@VM-8-7-centos ~]# wget http://devcloudaudit-1254962721.cosgz.myqcloud.com/qcloudapi-sdk-php-master.tar
--2024-01-30 11:45:28--  http://devcloudaudit-1254962721.cosgz.myqcloud.com/qcloudapi-sdk-php-master.tar
Resolving devcloudaudit-1254962721.cosgz.myqcloud.com (devcloudaudit-1254962721.cosgz.myqcloud.com)... 169.254.0.48
Connecting to devcloudaudit-1254962721.cosgz.myqcloud.com (devcloudaudit-1254962721.cosgz.myqcloud.com)|169.254.0.48|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 68608 (67K) [application/x-tar]
Saving to: ‘qcloudapi-sdk-php-master.tar’

100%[===============================================================================================================>] 68,608      --.-K/s   in 0s

2024-01-30 11:45:28 (384 MB/s) - ‘qcloudapi-sdk-php-master.tar’ saved [68608/68608]

[root@VM-8-7-centos ~]# ll
total 68
-rw-r--r-- 1 root root 68608 Dec 16  2017 qcloudapi-sdk-php-master.tar
[root@VM-8-7-centos ~]#
[root@VM-8-7-centos ~]# tar -xvf qcloudapi-sdk-php-master.tar

执行状态结果如图所示:

在这里插入图片描述

4.3 创建的腾讯云持久证书(如果已创建请跳过)

登录腾讯云控制台 点击查看持久证书

链接:https://console.cloud.tencent.com/cam/capi

在提示的各种警告,直接点击蓝色按钮
在这里插入图片描述

同样点击确定按钮。

在这里插入图片描述

在 API 秘钥管理页面,点击新建秘钥按钮,之后勾选知晓警告后,点击确定按钮,进行创建秘钥。

在这里插入图片描述

4.4 配置持久证书到云审计 PHP 页面中

这里我们使用的是 PHP SDK 包中的 demo.php 做样例,也可以根据自身情况编写,将你的持久证书的SecretIdSecretKey配置到 PHP 页面中,如下图所示。

vim /root/qcloudapi-sdk-php-master/demo.php

将下图所示中,标识的SecretIdSecretKey替换成自己的 SecretId 和 SecretKey 即可。

在这里插入图片描述

4.5 安装云监控工具

cd /root/
wget http://update2.agent.tencentyun.com/update/linux_stargate_installer
chmod +x linux_stargate_installer
./linux_stargate_installer

执行命令过程如下:

[root@VM-8-7-centos ~]# cd /root/
[root@VM-8-7-centos ~]# wget http://update2.agent.tencentyun.com/update/linux_stargate_installer
--2024-01-30 13:16:56--  http://update2.agent.tencentyun.com/update/linux_stargate_installer
Resolving update2.agent.tencentyun.com (update2.agent.tencentyun.com)... 169.254.0.15
Connecting to update2.agent.tencentyun.com (update2.agent.tencentyun.com)|169.254.0.15|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 30753704 (29M) [application/octet-stream]
Saving to: ‘linux_stargate_installer’

100%[====================================================================================================>] 30,753,704  10.6MB/s   in 2.8s

2024-01-30 13:16:58 (10.6 MB/s) - ‘linux_stargate_installer’ saved [30753704/30753704]

[root@VM-8-7-centos ~]# chmod +x linux_stargate_installer
[root@VM-8-7-centos ~]# ./linux_stargate_installer
stop stargate if exist
install stargate
stargate/
stargate/logs/
stargate/admin/
stargate/admin/delcrontab.sh
stargate/admin/start.sh
stargate/admin/stop.sh
stargate/admin/uninstall.sh
stargate/admin/sgagenttask
stargate/admin/restart.sh
stargate/admin/addcrontab.sh
stargate/etc/
stargate/etc/base.conf
stargate/bin/
stargate/bin/sgagent64
stargate/bin/sgagentarm64
stargate/bin/sgagent32
stargate/lib/
stargate/lib/libstdcxx-arm64/
stargate/lib/libstdcxx-arm64/libstdc++.so.6.0.24
stargate/lib/libstdcxx-x86_64/
stargate/lib/libstdcxx-x86_64/libstdc++.so.6.0.20
install success
‘/usr/local/qcloud/stargate/bin/sgagent’ -> ‘/usr/local/qcloud/stargate/bin/sgagent64’
install python
update /usr/local/qcloud/stargate/lib/libstdc++.so.6
reset state
reset state succ.
start sgagent
stargate agent run succ
finish
[root@VM-8-7-centos ~]#

执行过程的截图如下:

在这里插入图片描述

4.5 编写简单代码设置告警

你可以自定义 demo.php 中的 $alarmAction变量,设置需要监控的 Action 名字。在本次示例中,默认的是【账户登录】事件。

在这里插入图片描述

4.6 设置 crontab 定时服务

最后我们使用crontab -e指令进行添加定时服务

crontab -e

将以下指令添加到最后一行即可,该定时任务是每分钟执行一次,并且记录警告日志。

*/1 * * * * cd /root/qcloudapi-sdk-php-master/ && php demo.php >> nohup.out > /dev/null 2>&1

在这里插入图片描述

最后重启 crontab 保证以上配置生效。

service crond restart

在这里插入图片描述

七、查看操作审计告警

在操作审计服务页面,可以查询到我们上述配置的登陆服务器敏感操作的记录信息

先访问操作审计页面(点击这里,或复制后面的链接):https://console.cloud.tencent.com/cloudaudit

在这个操作审计页面中可以查询近七天的操作记录,这包括一些默认的操作以及类似我们调用 PHP SDK 自定义的记录。我们下图标注的第一个就是本博文配置的审计告警,用来监控登陆服务器记录的。

在这里插入图片描述

点击事件名称,进入到事件详情页面。

在这里插入图片描述

我们点击某条事件的事件名称后,右侧窗口进入到事件详情页面,在窗口右侧事件记录中可以查看到所有详细的信息,无论是时间戳,服务器,请教ID、事件ID什么操作等,都有详细记录。

{
    "userIdentity": {
        "principalId": "100099999999",
        "accountId": "100099999999",
        "secretId": "AKID999999999999999999999999999999994C6Y",
        "sessionContext": {},
        "type": "Root",
        "userName": "root"
    },
    "eventRegion": "ap-guangzhou",
    "eventVersion": 2,
    "errorCode": "0",
    "errorMessage": "permission verify",
    "requestID": "25999999999",
    "eventID": "2599999999915",
    "apiVersion": "2.0",
    "eventType": "ApiCall",
    "actionType": "Read",
    "httpMethod": "POST",
    "apiErrorCode": 0,
    "apiErrorMessage": "",
    "userAgent": "",
    "eventTime": 1706597281,
    "sensitiveAction": "0",
    "sourceIPAddress": "175.111.111.111",
    "resourceType": "cloudaudit",
    "eventName": "LookUpEvents",
    "eventSource": "cloudaudit.api.qcloud.com/v2/index.php",
    "resourceSet": [],
    "requestParameters": {
        "Action": "LookUpEvents",
        "EndTime": "1706597281",
        "LookupAttributes": "[{\"AttributeKey\":\"string\",\"AttributeValue\":\"ConsoleLogin\"}]",
        "MaxResults": "10",
        "Nonce": "35091",
        "Region": "gz",
        "RequestClient": "SDK_PHP_1.1",
        "SecretId": "AKIDjKhrmTwBC1c09Ak7GACAuX2LQM8h4C6Y",
        "StartTime": "1706597161",
        "Timestamp": "1706597281"
    },
    "responseElements": "\"{}\"",
    "resources": "[\"*\"]",
    "resourceName": "",
    "tags": [
        ""
    ]
}

八、其他 QA

8.1 什么时候应该使用 CloudAudit?

当具有以下需求的客户应该使用 CloudAudit:

  • 需要跟踪资源变更情况
  • 回答有关用户活动的简单问题
  • 证明合规性
  • 进行故障排除或执行安全分析

8.2 我可以查询多久的操作审计记录

现阶段在操作记录页面里,最多只能查询30天周期的信息,这个周期最长可以查看近3个月的记录,如果需要查看更长时间的操作记录,请使用跟踪集功能,日志数据将持久化存储到指定存储桶或CLS中。

根据等保合规2.0及网安法条例要求,企业云上业务日志必须保存180天以上,建议可以创建跟踪集,投递到存储桶,方便长期保存操作日志。

8.3 一个操作记录中包含了哪些信息?

一个操作记录包括访问密钥、区域、错误码、事件 ID 、事件名称、事件源、事件时间、请求 ID 、源 IP 地址、用户名。

8.4 CloudAudit 传送一个 API 调用事件需要多长时间?

一般情况下,CloudAudit 会在 API 调用后5 - 10分钟传送操作记录事件到用户指定的 COS Bucket。

8.5 启用 CloudAudit 是否会影响腾讯云资源的性能,或增加 API 调用的延迟?

不会。启用 CloudAudit 既不会影响腾讯云资源的性能,也不会增加 API 调用的延时。

8.6 检索到了异常操作怎么及时得到通知?

在腾讯云的可观测平台中(点击这里),提供了免费短信通知的功能(但是条数有限:1000条),同时提供了命令行发送工具 cagent_tools,就是我们上面的 shell 命令中的cagent_tools。(这里挖个坑,过几天写一个如何配置这个短信的操作)。

在这里插入图片描述

九、文末总结

在本文中,我们深入了解了腾讯云的操作审计服务 CloudAudit。首先,我们介绍了 CloudAudit 的基本概念和功能,探讨了其在安全分析、资源变更跟踪和合规性审计等方面的优势。通过具体的应用场景举例,我们展示了如何有效地利用 CloudAudit 进行实际操作,包括安全分析、资源变更跟踪和合规性审计的实施步骤。

随后,我们引导读者使用云审计 SDK 进行云监控,提供了详细的步骤,包括 PHP 环境包的安装、云审计 PHP SDK 的下载和配置,以及云监控工具的安装。我们还演示了如何通过编写简单的代码来设置告警,并通过 crontab 定时服务来定期执行操作。

最后,我们指导读者如何查看操作审计告警,并回答了一系列常见问题,涉及 CloudAudit 的最佳实践、记录查询、信息内容、事件传送时间、性能影响和异常操作通知等方面。通过本文,读者将更全面地了解如何充分利用 CloudAudit 来提升云环境的安全性、可追溯性和合规性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/359245.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

解决:ModuleNotFoundError: No module named ‘selenium’

解决:ModuleNotFoundError: No module named ‘selenium’ 文章目录 解决:ModuleNotFoundError: No module named selenium背景报错问题报错翻译报错位置代码报错原因解决方法方法一,直接安装方法二,手动下载安装方法三&#xff0…

【Tomcat与网络2】一文理解Servlet是怎么工作的

在前面,我们研究了如何用idea来启动一个Servlet程序,今天我们就再来看一下Servlet是如何工作的。 目录 1.Servlet 介绍 2.Servlet 容器工作过程 3.Servlet的扩展 不管是电脑还是手机浏览器,发给服务端的就是一个 HTTP 格式的请求&#xf…

摄像头提示sd卡未格式化怎么回事?怎么解决

作为摄像头用户,往往会遇到或多或少的技术问题。而当摄像头显示"SD卡未格式化"的提示时,这可能令一些用户感到困惑和担忧。在本文中,我们将解释这个提示的原因,并提供一些建议来解决这一问题。我们相信本文会让您更加了…

select的change方法如何传递多个参数

element-ui中select的change方法传递多个参数 element-ui中的select,checkbox等组件的change方法的回调函数只有当前选择的val,如果想再传入自定义参数怎么办? 不能够传入自定义的参数,在进行某些操作时,会比较困难&…

[设计模式Java实现附plantuml源码~结构型]对象的间接访问——代理模式

前言: 为什么之前写过Golang 版的设计模式,还在重新写Java 版? 答:因为对于我而言,当然也希望对正在学习的大伙有帮助。Java作为一门纯面向对象的语言,更适合用于学习设计模式。 为什么类图要附上uml 因为很…

Ubuntu18.04安装Matlab流程笔记

提示:博主取舍了很多大佬的博文并亲测有效,分享笔记邀大家共同学习讨论 Ubuntu18.04 安装Matlab流程 下载安装包和破解文件安装Matlab注册并运行 下载安装包和破解文件 matlabR2019A源码 提取码:2ztb 下载的Linux matlab2018a文件夹内有三个文件: # 解压Matlab201…

深度学习之循环神经网络 (基础)

循环神经网络简称为RNN,(之前讲到的卷积神经网络简称为CNN)。 以前我们在使用全链接网络的时候,我们将这种网络叫做Dense 或者是Deep。 Dense链接指的是全链接的。 我们输入的数据是数据样本的不同特征:x1&#xff…

VScode设置行宽提示线

vscode 设置行宽提示线,可以按如下步骤设置: 打开设置 搜索框输入 rulers,选择用户,点击 在 settings.json 中编辑 跳转到一个 json 文件后,将字段 rulers 对应值设置为 80 补充:如果您在您的 json 配…

JUC并发编程-四大函数式接口、Stream 流式计算、ForkJoin并行执行任务

12. 四大函数式接口 新时代的程序员:lambda表达式、链式编程、函数式接口、Stream流式计算 函数式接口:只有一个方法的接口,可以有一些默认的方法 如:Runnable接口函数 1)Function 函数型接口 public class Functio…

java 图书管理系统 spring boot项目

java 图书管理系统ssm框架 spring boot项目 功能有管理员模块:图书管理,读者管理,借阅管理,登录,修改密码 读者端:可查看图书信息,借阅记录,登录,修改密码 技术&#…

常用芯片学习——CD4094芯片

CD4094 8位移位寄存器/3态输出缓冲器 使用说明 CD4094是由一个 8 位串行移位寄存器和一个 3 态输出缓冲器组成的 CMOS 集成电路。寄存器带有存储锁存功能,集成电路根据 STROBE 信号确定锁存器是否接收移位寄存器各位数据,数据是否由锁存器传输到 3 态输…

在Windows上安装与配置Apache服务并结合内网穿透工具实现公网远程访问本地内网服务

文章目录 前言1.Apache服务安装配置1.1 进入官网下载安装包1.2 Apache服务配置 2.安装cpolar内网穿透2.1 注册cpolar账号2.2 下载cpolar客户端 3. 获取远程桌面公网地址3.1 登录cpolar web ui管理界面3.2 创建公网地址 4. 固定公网地址 前言 Apache作为全球使用较高的Web服务器…

如何通过Hive/tez与Hadoop的整合快速实现大数据开发

一、Hive的功能 Hive是基于Hadoop的一个外围数据仓库分析组件,可以把Hive理解为一个数据仓库,但这和传统的数据库是有差别的。 传统数据库是面向业务存储,比如 OA、ERP 等系统使用的数据库,而数据仓库是为分析数据而设计的。同时…

移动Web-动画

1、动画-animation 过渡&#xff1a;实现两个状态间的变化过程 动画&#xff1a;实现多个状态间的变化过程&#xff0c;动画过程可控&#xff08;重复播放、最终画面、是否暂停&#xff09; 1.1 实现步骤 1.1.1 定义动画 1.1.2 使用动画 <!DOCTYPE html> <html lang…

备战蓝桥杯---数据结构与STL应用(入门2)

话不多说&#xff0c;直接看题&#xff1a; 前4个操作我们可以用deque解决&#xff0c;第5个我们不用真的去反转&#xff0c;调换一下头尾即可。 下面是AC代码&#xff1a; #include<bits/stdc.h> using namespace std; int n,m,k,k1,ee0; bool cm1(int a,int b){retur…

C++ 数论相关题目 博弈论:拆分-Nim游戏

给定 n 堆石子&#xff0c;两位玩家轮流操作&#xff0c;每次操作可以取走其中的一堆石子&#xff0c;然后放入两堆规模更小的石子&#xff08;新堆规模可以为 0 &#xff0c;且两个新堆的石子总数可以大于取走的那堆石子数&#xff09;&#xff0c;最后无法进行操作的人视为失…

网络安全从入门到精通(超详细)学习路线

首先看一下学网络安全有什么好处&#xff1a; 1、可以学习计算机方面的知识 在正式学习网络安全之前是一定要学习计算机基础知识的。只要把网络安全认真的学透了&#xff0c;那么计算机基础知识是没有任何问题的&#xff0c;操作系统、网络架构、网站容器、数据库、前端后端等…

GitCode|部分项目开源代码

1.EasyKeyboard 基于MFC的简单软键盘&#xff0c;使用vs2017开发 PangCoder / EasyKeyboard GitCode基于Windows平台的软键盘&#xff0c;使用VS2017开发&#xff0c;使用MFC框架https://gitcode.net/qq_36251561/easykeyboard 2.EncoderSimulator 基于WPF应用的编码器模拟工…

MySQL行格式原理深度解析

MySQL中的行格式&#xff08;Row Format&#xff09;是指存储在数据库表中的数据的物理格式。它决定了数据是如何在磁盘上存储的&#xff0c;以及如何在查询时被读取和解析的。MySQL支持多种行格式&#xff0c;每种格式都有其特定的优点和适用场景。 提升编程效率的利器: 解析…

正则表达式补充以及sed awk

正则表达式&#xff1a; 下划线算 在单词里面 解释一下过程&#xff1a; 在第二行hello world当中&#xff0c;hello中的h 与后面第一个h相匹配&#xff0c;所以hello中的ello可以和abcde匹配 在world中&#xff0c;w先匹配h匹配不上&#xff0c;则在看0&#xff0c;r&#…