使用流日志
您可以使用 Amazon EC2、Amazon VPC、CloudWatch 和 Amazon S3 控制台处理流日志。
控制对流日志的使用
默认情况下,IAM 用户无权使用流日志。您可以创建一个 IAM 用户策略,该策略向用户授予创建、描述和删除流日志的权限。有关更多信息,请参阅 Amazon EC2 API 参考 中的向 IAM 用户授予针对 Amazon EC2 资源的必需权限。
下面是一个示例策略,该策略向用户授予创建、描述和删除流日志的完全权限。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DeleteFlowLogs", "ec2:CreateFlowLogs", "ec2:DescribeFlowLogs" ], "Resource": "*" } ] }
需要某些额外的 IAM 角色和权限配置,具体取决于您是发布到 CloudWatch Logs 还是 Amazon S3。有关更多信息,请参阅 将流日志发布到 CloudWatch Logs 和 将流日志发布到 Amazon S3。
创建流日志
您可以为 VPC、子网或网络接口创建流日志。流日志可以将数据发布到 CloudWatch Logs 或 Amazon S3。
有关更多信息,请参阅 创建发布到 CloudWatch Logs 的流日志 和 创建发布到 Amazon S3 的流日志。
查看流日志
您可以在 Amazon EC2 和 Amazon VPC 控制台中,通过查看特定资源的 Flow Logs (流日志) 选项卡来查看有关流日志的信息。当您选择资源时,将列出该资源的所有流日志。显示的信息包括流日志的 ID、流日志配置以及有关流日志的状态的信息。
查看您的网络接口的流日志的相关信息
通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/
。 -
在导航窗格中,选择 Network Interfaces。
-
选择网络接口,然后选择 Flow Logs (流日志)。此时有关流日志的信息将显示在选项卡上。Destination type (目标类型) 列指示要将流日志发布到的目标。
查看您的 VPC 或子网的流日志的相关信息
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Your VPCs (您的 VPC) 或 Subnets (子网)。
-
选择您的 VPC 或子网,然后选择 Flow Logs (流日志)。此时有关流日志的信息将显示在选项卡上。Destination type (目标类型) 列指示要将流日志发布到的目标。
添加或删除流日志的标签
您可以在 Amazon EC2 和 Amazon VPC 控制台中添加或删除流日志的标签。
添加或删除网络接口的流日志的标签
通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/
。 -
在导航窗格中,选择 Network Interfaces。
-
选择网络接口,然后选择 Flow Logs (流日志)。
-
对于所需的流日志选择 Manage tags (管理标签)。
-
要添加新标签,请选择 Create Tag。要删除标签,请选择删除按钮 (x)。
-
选择 Save。
添加或删除 VPC 或子网的流日志的标签
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Your VPCs (您的 VPC) 或 Subnets (子网)。
-
选择您的 VPC 或子网,然后选择 Flow Logs (流日志)。
-
选择流日志,然后依次选择 Actions (操作) 和 Add/Edit Tags (添加/编辑标签)。
-
要添加新标签,请选择 Create Tag。要删除标签,请选择删除按钮 (x)。
-
选择 Save。
查看流日志记录
您可以使用 CloudWatch Logs 控制台或 Amazon S3 控制台查看您的流日志记录,具体取决于所选的目标类型。在您创建流日志之后,可能需要几分钟才能显示在控制台中。
查看发布到 CloudWatch Logs 的流日志记录
通过以下网址打开 CloudWatch 控制台:https://console.aws.amazon.com/cloudwatch/
。 -
在导航窗格中,选择 Logs (日志),然后选择包含您的流日志的日志组。此时将显示每个网络接口的日志流的列表。
-
选择包含要查看其流日志记录的网络接口 ID 的日志流。有关更多信息,请参阅 流日志记录。
查看发布到 Amazon S3 的流日志记录
通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/
。 -
对于 Bucket name (存储桶名称),选择流日志发布到的存储桶。
-
对于 Name (名称),选中日志文件旁边的复选框。在对象概述面板上,选择 Download (下载)。
搜索流日志记录
您可以使用 CloudWatch Logs 控制台搜索发布到 CloudWatch Logs 的流日志记录。您可以使用度量筛选器筛选流日志记录。流日志记录用空格分隔。
使用 CloudWatch Logs 控制台搜索流日志记录
通过以下网址打开 CloudWatch 控制台:https://console.aws.amazon.com/cloudwatch/
。 -
在导航窗格中,选择 Log groups (日志组),然后选择包含流日志的日志组。此时将显示每个网络接口的日志流的列表。
-
如果您知道要搜索的网络接口,请选择单个日志流。或者,选择 Search Log Group (搜索日志组) 以搜索整个日志组。如果日志组中有许多网络接口,或者根据您选择的时间范围,这可能需要一些时间。
-
对于 Filter events (筛选事件),请输入以下字符串。这假定流日志记录使用默认格式。
[version, accountid, interfaceid, srcaddr, dstaddr, srcport, dstport, protocol, packets, bytes, start, end, action, logstatus]
-
通过为字段指定值,根据需要修改筛选器。以下示例按特定的源 IP 地址进行筛选。
[version, accountid, interfaceid, srcaddr = 10.0.0.1, dstaddr, srcport, dstport, protocol, packets, bytes, start, end, action, logstatus] [version, accountid, interfaceid, srcaddr = 10.0.2.*, dstaddr, srcport, dstport, protocol, packets, bytes, start, end, action, logstatus]
以下示例按目标端口、字节数以及流量是否被拒绝进行筛选。
[version, accountid, interfaceid, srcaddr, dstaddr, srcport, dstport = 80 || dstport = 8080, protocol, packets, bytes, start, end, action, logstatus] [version, accountid, interfaceid, srcaddr, dstaddr, srcport, dstport = 80 || dstport = 8080, protocol, packets, bytes >= 400, start, end, action = REJECT, logstatus]
删除流日志
您可以使用 Amazon EC2 和 Amazon VPC 控制台删除流日志。
使用这些过程可以禁用资源的流日志服务。删除流日志不会从 CloudWatch Logs 中删除现有日志流和 Amazon S3 中的日志文件。必须使用相应服务的控制台来删除现有流日志数据。此外,删除发布到 Amazon S3 的流日志时,不会删除存储桶策略和日志文件访问控制列表 (ACL)。
删除网络接口的流日志
通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/
。 -
在导航窗格中,选择网络接口,然后选择网络接口。
-
选择 Flow Logs (流日志),然后选择流日志的删除按钮 (叉号) 来删除该流日志。
-
在确认对话框中,选择 Yes, Delete。
删除 VPC 或子网的流日志
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Your VPCs (您的 VPC) 或 Subnets (子网),然后选择资源。
-
选择 Flow Logs (流日志),然后选择流日志的删除按钮 (叉号) 来删除该流日志。
-
在确认对话框中,选择 Yes, Delete。
API 和 CLI 概述
您可以使用命令行或 API 执行此页面上介绍的任务。有关命令行界面的更多信息以及可用 API 操作的列表,请参阅访问 Amazon VPC。
创建流日志
-
create-flow-logs (Amazon CLI)
-
New-EC2FlowLog (Amazon Tools for Windows PowerShell)
-
CreateFlowLogs(Amazon EC2 查询 API)
描述您的流日志
-
describe-flow-logs (Amazon CLI)
-
Get-EC2FlowLog (Amazon Tools for Windows PowerShell)
-
DescribeFlowLogs(Amazon EC2 查询 API)
查看您的流日志记录(日志事件)
-
get-log-events (Amazon CLI)
-
Get-CWLLogEvent (Amazon Tools for Windows PowerShell)
-
GetLogEvents (CloudWatch API)
删除流日志
-
delete-flow-logs (Amazon CLI)
-
Remove-EC2FlowLog (Amazon Tools for Windows PowerShell)
-
DeleteFlowLogs(Amazon EC2 查询 API)