
# 审计ECS自建数据库
数据库安全审计采用旁路部署模式，通过在**数据库** 或**应用系统服务器**上部署数据库安全审计Agent，获取访问数据库流量、将流量数据上传到审计系统、接收审计系统配置命令和上报数据库状态监控数据，实现对ECS/BMS自建数据库的安全审计。
审计ECS/BMS自建数据库架构图如[图1]所示。
图1审计ECS/BMS自建数据库架构图   
![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000001133705205.png "点击放大")
#### 场景说明
假设您在华为云的弹性云服务器（Elastic Cloud Server ，ECS）上自建了一个数据库，数据库的详细信息如[表1]所示，您需要对该数据库内部违规和不正当操作进行定位追责，满足等保测评数据库审计需求。本章节详细介绍该场景下，**在数据库端安装Agent**，开启数据库安全审计功能和验证审计结果的操作。
 表1ECS自建数据库信息说明 
|    数据库类型    |    MySQL    |
|---|---|
| **数据库版本**   | 5.7         |
| **数据库IP地址** | 192.168.1.5 |
| **端口**      | 3306        |
| **操作系统**    | LINUX64     |
   
#### 约束与限制
- 使用数据库安全审计需要关闭数据库的SSL。
- 待审计数据库与数据库安全审计需要在同一区域。
- 购买数据库安全审计配置"VPC"参数时，需与Agent安装节点所在VPC相同。 数据库安全审计的Agent安装节点，请参见：[如何选择数据库安全审计的Agent安装节点？](https://support.huaweicloud.com/dbss_faq/dbss_01_0282.html)
  
 
#### 步骤一：购买数据库安全审计
您需要根据您的业务需求购买数据库安全审计规格并配置数据库安全审计参数，详细操作请参见[购买数据库安全审计](https://support.huaweicloud.com/usermanual-dbss/dbss_01_0260.html)。
![](https://support.huaweicloud.com/bestpractice-dbss/public_sys-resources/note_3.0-zh-cn.png)
为保证审计功能的正常使用，购买数据库安全审计配置"VPC"参数时，请与Agent安装节点所在VPC相同。
数据库安全审计的Agent安装节点，请参见：[如何选择数据库安全审计的Agent安装节点？](https://support.huaweicloud.com/dbss_faq/dbss_01_0282.html)
#### 步骤二：添加数据库并开启审计
购买数据库安全审计后，您需要先将目标数据库添加至数据库安全审计实例并开启该数据库的审计功能。
1. [登录DBSS控制台](https://console.huaweicloud.com/dbss/#/dbss/home)。
2. 单击管理控制台左上角的![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000002524454332.png)，选择区域。
3. 在左侧导航树中，选择"数据库列表"，进入数据库列表界面。
4. 在"选择实例"下拉列表框中，选择需要添加数据库的实例，并单击"添加数据库"。
5. 在弹出的对话框中，按[表1]所示信息填写数据库参数。
   
   图2"添加数据库"对话框
   ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000002492460674.png "点击放大")
   
   
6. 单击"确定"，该数据库添加到数据库列表中，且"审计状态"为"已关闭"。
7. 在该数据库所在行的"操作"列，单击"开启"，开启审计功能。
 
#### 步骤三：添加Agent
1. 在数据库所在行的"Agent"列，单击"添加Agent"。 
   图3添加Agent   
   ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000002497946214.png "点击放大")
   
   
2. 在弹出的对话框中，选择添加方式。 
   图4在数据库端添加Agent   
   ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000002492300710.png "点击放大")
   
   
3. 单击"确定"，Agent添加成功。
 
#### 步骤四：添加安全组规则
Agent添加完成后，您需要为数据库安全审计实例所在的安全组添加入方向规则TCP协议（8000端口）和UDP协议（7000-7100端口），使Agent与审计实例之间的网络连通，数据库安全审计才能对添加的数据库进行审计。
- 如果该安全组已配置安装节点的入方向规则，请执行[步骤五：安装Agent]。
- 如果该安全组未配置安装节点的入方向规则，请按照本节内容进行配置。
  ![](https://support.huaweicloud.com/bestpractice-dbss/public_sys-resources/note_3.0-zh-cn.png)
  安全组规则也可以在成功安装Agent后进行添加。
  
 
1. 获取[安装节点IP地址]。
2. 在数据库列表的上方，单击"添加安全组规则"。
3. 在弹出的弹框中，记录数据库安全审计实例的"安全组名称"（例如default）。 
   图5添加安全组规则   
   ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000002524454757.png "点击放大")
   
   
4. 单击"前往处理"，进入"安全组"界面。
5. 在列表右上方的搜索框中输入安全组"default"后，单击![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000001072831266.png)或按"Enter"，列表显示"default"安全组信息。
6. 单击"default"，进入"基本信息"页面。
7. 选择"入方向规则"页签，单击"添加规则"，如[图6]所示。
   
   图6添加规则   
   ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000001073279740.png "点击放大")
   
   
8. 在"添加入方向规则"对话框中，为安装节点IP添加TCP协议（端口为8000）和UDP协议（端口为7000-7100）规则，如[图7]所示。
   
   图7"添加入方向规则"对话框（ECS）   
   ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000001073120072.png "点击放大")
   
   
9. 单击"确定"，完成添加入方向规则。
 
 #### 步骤五：安装Agent
添加安全规则后，您需要下载Agent包并将下载的Agent安装包上传到待安装Agent的节点上进行安装。使添加的数据库连接到数据库安全审计实例，数据库安全审计才能对添加的数据库进行审计。
![](https://support.huaweicloud.com/bestpractice-dbss/public_sys-resources/note_3.0-zh-cn.png)
每个Agent都有唯一的AgentID，是Agent连接数据库安全审计实例的重要密钥。若您将添加的Agent删除，在重新添加Agent后，请重新下载Agent和安装Agent。
1. 在左侧导航树中，选择"数据库列表"，进入数据库列表界面。
2. 在"选择实例"下拉框中，选择需要下载Agent的数据库所属实例。
3. 在数据库所在行的"Agent"列，单击"查看Agent"。在Agent所在行的"操作"列，单击"下载agent"。 
   将Agent安装包下载到本地。
   图8下载Agent   
   ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000002492300282.png "点击放大")
   
   
4. 使用跨平台传输工具（例如WinSCP），将下载的Agent安装包"xxx.tar"上传到待安装Agent的节点（即[图8]中的"安装节点IP"）。
5. 使用跨平台远程访问工具（例如PuTTY）以**root**用户通过SSH方式，登录该安装节点。
6. 执行以下命令，进入Agent安装包"xxx.tar"所在目录。 
   ```
   cd Agent安装包所在目录
   ```
   
   
7. 执行以下命令，解压缩"xxx.tar"安装包。 
   ```
   tar -xvf xxx.tar
   ```
   
   
8. 执行以下命令，进入"install.sh"脚本所在目录。 
   ```
   cd install.sh脚本所在目录
   ```
   
   
9. 执行以下命令，安装Agent。 
   ```
   sh install.sh
   ```
   如果界面回显以下信息，说明安装成功。
   ```
   start agent
   starting audit agent
   audit agent started
   start success
   install dbss audit agent done!
   ```
   
   
 
#### 步骤六：验证Agent与数据库安全审计实例之间的网络通信正常
待审计的数据库与数据库安全审计实例连接成功后，您需要验证Agent与数据库安全审计实例之间的网络通信是否正常。
1. 在安装Agent的节点执行一条SQL语句或对数据库进行操作（例如，"Select 1;"）。
2. 在左侧导航树中，选择"数据报表"，进入"数据报表"界面。
3. 在"选择实例"下拉列表框中，选择需要查看数据库慢SQL语句信息的实例。
4. 选择"语句"页签。
5. SQL语句列表将显示登录数据库操作的记录，如[图9]所示。
   
   如果不能查询到SQL语句，请您参照[如何处理Agent与数据库安全审计实例之间通信异常？](https://support.huaweicloud.com/dbss_faq/dbss_01_0246.html)进行排查。
   图9查看SQL语句   
   ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0297146323.png "点击放大")
   
   
 
#### 步骤七：查看审计结果
验证成功后，您可参照本节内容在总览界面查看审计结果信息，同时也可根据需求在报表界面进行设置生成报表、下载或预览报表。
1. 查看总览信息。 
   进入总览入口，如[图10]所示，查看总览信息。
   
   在总览界面，展示了该实例的审计时长、SQL语句总量、风险总量以及今日语句、今日风险、今日会话量。
   在左侧导航树中，选择"数据报表"。您可以选择"语句"或"会话"页签，分别查看SQL语句信息和会话分布图。
   图10进入总览入口   
   ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0301033340.png "点击放大")
   
   
2. 生成报表、下载或预览报表。 
   1. 参照[图11]进入报表管理界面。
      图11进入报表管理入口   
      ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0301033261.png "点击放大") 
   
   2. 在左侧导航树中，选择"报表"。
   
   3. 在"选择实例"下拉列表框中，选择需要生成审计报表的实例。选择"报表管理"页签。
   
   4. 在需要生成报表的模板所在行的"操作"列，单击"立即生成报表"。
   
   5. 在弹出的对话框中，单击![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0297146326.png)，设置报表的开始时间和结束时间，选择生成报表的数据库。
   
   6. 单击"确定"。 单击"报表结果"页面，您可以查看报表的生成进度。报表生成后，您可以"预览"或"下载"报表。
      ![](https://support.huaweicloud.com/bestpractice-dbss/public_sys-resources/notice_3.0-zh-cn.png)
      如果您需要在线预览报表，请使用Google Chrome或Mozilla FireFox浏览器。
      图12预览或下载报表   
      ![](https://support.huaweicloud.com/bestpractice-dbss/zh-cn_image_0000002524601893.png "点击放大") 
   
   
   
   
 
