Packetbeat 快速入门:安装和配置

编辑

Packetbeat 快速入门:安装和配置编辑

了解像 Packetbeat 这样的网络数据包分析系统价值的最佳方法是在您自己的流量上进行尝试。

本指南介绍如何快速开始使用网络数据包分析。您将了解如何

  • 在要监控的每个系统上安装 Packetbeat
  • 指定要嗅探的网络设备和协议
  • 将数据包数据解析为字段并将其发送到 Elasticsearch
  • 在 Kibana 中可视化数据包数据
Packetbeat Overview dashboard

开始之前编辑

  • 您需要 Elasticsearch 来存储和搜索数据,以及 Kibana 来可视化和管理数据。

    要快速入门,请启动我们的 托管 Elasticsearch 服务 部署。Elasticsearch 服务在 AWS、GCP 和 Azure 上可用。免费试用

  • 在大多数平台上,Packetbeat 需要 libpcap 数据包捕获库。根据您的操作系统,您可能需要安装它

    sudo apt-get install libpcap0.8

步骤 1:安装 Packetbeat编辑

您可以在专用服务器上安装 Packetbeat,从镜像端口或镜像设备获取流量,也可以在现有的应用程序服务器上安装它。

要下载和安装 Packetbeat,请使用适合您系统的命令

curl -L -O https://artifacts.elastic.co/downloads/beats/packetbeat/packetbeat-8.14.3-amd64.deb
sudo dpkg -i packetbeat-8.14.3-amd64.deb

显示的命令适用于 AMD 平台,但 ARM 软件包也可用。有关可用软件包的完整列表,请参阅 下载页面

其他安装选项编辑

步骤 2:连接到 Elastic Stack编辑

要设置 Packetbeat,需要连接到 Elasticsearch 和 Kibana。

packetbeat.yml 中设置连接信息。要查找此配置文件,请参阅 目录布局

指定 cloud.id 的 Elasticsearch 服务,并将 cloud.auth 设置为有权设置 Packetbeat 的用户。例如

cloud.id: "staging:dXMtZWFzdC0xLmF3cy5mb3VuZC5pbyRjZWM2ZjI2MWE3NGJmMjRjZTMzYmI4ODExYjg0Mjk0ZiRjNmMyY2E2ZDA0MjI0OWFmMGNjN2Q3YTllOTYyNTc0Mw=="
cloud.auth: "packetbeat_setup:YOUR_PASSWORD" 

此示例显示了一个硬编码密码,但您应该将敏感值存储在 secrets 密钥库 中。

要了解有关所需角色和权限的更多信息,请参阅 授予用户访问受保护资源的权限

您可以将数据发送到其他 输出,例如 Logstash,但这需要额外的配置和设置。

步骤 3:配置嗅探编辑

packetbeat.yml 中,配置要从中捕获流量的网络设备和协议。

  1. 设置嗅探器类型。默认情况下,Packetbeat 使用 pcap,它使用 libpcap 库,可在大多数平台上运行。

    在 Linux 上,将嗅探器类型设置为 af_packet 以使用内存映射嗅探。此选项比 libpcap 更快,并且不需要内核模块,但它是 Linux 特定的

    packetbeat.interfaces.type: af_packet
  2. 指定要从中捕获流量的网络设备。例如

    packetbeat.interfaces.device: eth0

    在 Linux 上,指定 packetbeat.interfaces.device: any 以捕获安装 Packetbeat 的服务器发送或接收的所有消息。在 macOS 上,any 设置不起作用。

    要查看可用设备列表,请运行

    packetbeat devices

    有关这些设置的更多信息,请参阅 流量嗅探

  3. protocols 部分,配置 Packetbeat 可以找到每个协议的端口。如果您使用任何非标准端口,请在此处添加它们。否则,请使用默认值。

    packetbeat.protocols:
    
    - type: dhcpv4
      ports: [67, 68]
    
    - type: dns
      ports: [53]
    
    - type: http
      ports: [80, 8080, 8081, 5000, 8002]
    
    - type: memcache
      ports: [11211]
    
    - type: mysql
      ports: [3306,3307]
    
    - type: pgsql
      ports: [5432]
    
    - type: redis
      ports: [6379]
    
    - type: thrift
      ports: [9090]
    
    - type: mongodb
      ports: [27017]
    
    - type: cassandra
      ports: [9042]
    
    - type: tls
      ports: [443, 993, 995, 5223, 8443, 8883, 9243]

要测试您的配置文件,请更改到安装 Packetbeat 二进制文件的目录,并使用以下指定的选项在前台运行 Packetbeat:sudo ./packetbeat test config -e。确保您的配置文件位于 Packetbeat 预期的路径(请参阅 目录布局),或者使用 -c 标志指定配置文件的路径。根据您的操作系统,您在运行此测试时可能会遇到文件所有权问题。有关更多信息,请参阅 配置文件所有权和权限

有关配置 Packetbeat 的更多信息,另请参阅

步骤 4:设置资产编辑

Packetbeat 附带预定义的资产,用于解析、索引和可视化您的数据。要加载这些资产

  1. 确保在 packetbeat.yml 中指定的用户 有权设置 Packetbeat
  2. 从安装目录中,运行

    packetbeat setup -e

    -e 是可选的,它将输出发送到标准错误而不是配置的日志输出。

此步骤会加载用于写入 Elasticsearch 的推荐 索引模板,并部署用于在 Kibana 中可视化数据的示例仪表板。

需要连接到 Elasticsearch(或 Elasticsearch 服务)才能设置初始环境。如果您使用的是其他输出,例如 Logstash,请参阅 手动加载索引模板加载 Kibana 仪表板

步骤 5:启动 Packetbeat编辑

在启动 Packetbeat 之前,请修改 packetbeat.yml 中的用户凭据,并指定 有权发布事件 的用户。

要启动 Packetbeat,请运行

sudo service packetbeat start

如果您使用 init.d 脚本启动 Packetbeat,则无法指定命令行标志(请参阅 命令参考)。要指定标志,请在前台启动 Packetbeat。

另请参阅 Packetbeat 和 systemd

Packetbeat 应该开始将数据流式传输到 Elasticsearch。

步骤 6:在 Kibana 中查看您的数据编辑

Packetbeat 附带了预建的 Kibana 仪表板和 UI,用于可视化日志数据。您之前在运行 setup 命令时加载了这些仪表板。

要打开仪表板

  1. 启动 Kibana

    1. 登录 您的 Elastic Cloud 帐户。
    2. 导航到部署中的 Kibana 终结点。
  2. 在侧边导航栏中,单击 发现。要查看 Packetbeat 数据,请确保选择了预定义的 packetbeat-* 索引模式。

    如果您在 Kibana 中没有看到数据,请尝试将时间过滤器更改为更大的范围。默认情况下,Kibana 显示过去 15 分钟的数据。

  3. 在侧边导航栏中,单击 仪表板,然后选择您要打开的仪表板。

仪表板是作为示例提供的。我们建议您自定义它们以满足您的需求。

要填充概述仪表板中的客户端位置地图,请按照使用 geoIP 信息丰富事件中描述的步骤操作。

下一步做什么?编辑

现在您已将数据流式传输到 Elasticsearch,学习如何统一您的日志、指标、正常运行时间和应用程序性能数据。

  1. 通过安装和配置其他 Elastic Beats 从其他来源提取数据

    Elastic Beats 要捕获

    Metricbeat

    基础设施指标

    Filebeat

    日志

    Winlogbeat

    Windows 事件日志

    Heartbeat

    正常运行时间信息

    APM

    应用程序性能指标

    Auditbeat

    审核事件

  2. 使用 Kibana 中的可观察性应用程序跨所有数据进行搜索

    Elastic 应用程序 用于

    指标应用程序

    探索您整个生态系统中系统和服务的指标

    日志应用程序

    实时跟踪相关日志数据

    正常运行时间应用程序

    监控应用程序和服务中的可用性问题

    APM 应用程序

    监控应用程序性能

    SIEM 应用程序

    分析安全事件