Instalación · 6 min read · Oct 27, 2025

Cómo instalar FileBeat en Ubuntu

El Elastic Stack es una combinación de cuatro componentes principales: Elasticsearch, Logstash, Kibana y Beats. Filebeat es uno de los miembros más famosos de esta familia que recopila, reenvía y centraliza los datos de registro de eventos a Elasticsearch o Logstash para su indexación. Filebeat tiene muchos módulos, incluidos Apache, Nginx, System, MySQL, auditd y muchos más, que simplifican la visualización de formatos de registro comunes con un solo comando.

En este tutorial, te mostraremos cómo instalar y configurar Filebeat para reenviar registros de eventos y eventos de autenticación SSH a Logstash en Ubuntu 18.04.

Requisitos previos

  • Un servidor que ejecute Ubuntu 18.04 con Elasticsearch, Kibana y Logstash instalados y configurados.
  • Una contraseña de root configurada en tu servidor.

Comenzando

Antes de comenzar, actualiza tu sistema con la última versión. Puedes hacerlo ejecutando el siguiente comando:

apt-get update -y  
apt-get upgrade -y

Una vez que tu sistema esté actualizado, reinícialo para aplicar los cambios.

Instalar Filebeat

Por defecto, Filebeat no está disponible en el repositorio predeterminado de Ubuntu 18.04. Por lo tanto, necesitarás agregar el repositorio APT de Elastic Stack 7 en tu sistema.

Primero, instala el paquete requerido con el siguiente comando:

apt-get install apt-transport-https -y

A continuación, descarga y agrega la clave de Elastic Stack con el siguiente comando:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -

Luego, agrega el repositorio APT de Elastic Stack 7 con el siguiente comando:

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | tee /etc/apt/sources.list.d/elastic-7.x.list

A continuación, actualiza el repositorio e instala Filebeat con el siguiente comando:

apt-get update -y  
apt-get install filebeat -y

Una vez que se haya completado la instalación, puedes proceder al siguiente paso.

Configurar Filebeat

Por defecto, Filebeat está configurado para enviar datos de eventos a Elasticsearch. Aquí, configuraremos Filebeat para enviar datos de eventos a Logstash. Puedes hacerlo editando el archivo /etc/filebeat/filebeat.yml:

nano /etc/filebeat/filebeat.yml

Comenta la salida de elasticsearch y descomenta la salida de Logstash como se muestra a continuación:

#-------------------------- Elasticsearch output ------------------------------

# output.elasticsearch:
  # Array of hosts to connect to.
  # hosts: ["localhost:9200"]

#----------------------------- Logstash output --------------------------------

output.logstash:
  # The Logstash hosts
  hosts: ["localhost:5044"]

Una vez que hayas terminado, puedes proceder al siguiente paso.

Habilitar el módulo del sistema de Filebeat

Por defecto, Filebeat viene con muchos módulos. Puedes listar todos los módulos con el siguiente comando:

filebeat modules list

Deberías ver la siguiente salida:

Enabled:

Disabled:
apache
auditd
aws
cef
cisco
coredns
elasticsearch
envoyproxy
googlecloud
haproxy
ibmmq
icinga
iis
iptables
kafka
kibana
logstash
mongodb
mssql
mysql
nats
netflow
nginx
osquery
panw
postgresql
rabbitmq
redis
santa
suricata
system
traefik
zeek

Por defecto, todos los módulos están deshabilitados. Por lo tanto, necesitarás habilitar el módulo del sistema para recopilar y analizar los registros creados por el servicio de registro del sistema. Puedes habilitar el módulo del sistema con el siguiente comando:

filebeat modules enable system

A continuación, puedes verificar el módulo del sistema con el siguiente comando:

filebeat modules list

Deberías ver que el módulo del sistema ahora está habilitado:

Enabled:
system

A continuación, necesitarás configurar el módulo del sistema para leer solo los registros de autenticación. Puedes hacerlo editando el archivo /etc/filebeat/modules.d/system.yml:

nano /etc/filebeat/modules.d/system.yml

Cambia las siguientes líneas:

- module: system
  # Syslog
  syslog:
    enabled: false
...
  # Authorization logs
  auth:
    enabled: true

    # Set custom paths for the log files. If left empty,
    # Filebeat will choose the paths depending on your OS.
    var.paths: ["/var/log/auth.log"]

Guarda y cierra el archivo cuando hayas terminado.

Cargar la plantilla de índice en Elasticsearch

A continuación, necesitarás cargar la plantilla en Elasticsearch manualmente. Puedes hacerlo con el siguiente comando:

filebeat setup --index-management -E output.logstash.enabled=false -E 'output.elasticsearch.hosts=["localhost:9200"]'

Deberías ver la siguiente salida:

Index setup finished.

A continuación, genera la plantilla de índice e instala la plantilla en el servidor de Elastic Stack con el siguiente comando:

filebeat export template > filebeat.template.json  
curl -XPUT -H 'Content-Type: application/json' http://localhost:9200/_template/filebeat-7.0.1 [email protected]

Finalmente, inicia el servicio de Filebeat y habilítalo para que se inicie después del reinicio del sistema con el siguiente comando:

systemctl start filebeat  
systemctl enable filebeat

Puedes verificar el estado de Filebeat con el siguiente comando:

systemctl status filebeat

Deberías ver la siguiente salida:

? filebeat.service - Filebeat sends log files to Logstash or directly to Elasticsearch.
   Loaded: loaded (/lib/systemd/system/filebeat.service; disabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-11-26 06:45:18 UTC; 14s ago
     Docs: https://www.elastic.co/products/beats/filebeat
 Main PID: 13059 (filebeat)
    Tasks: 28 (limit: 463975)
   CGroup: /system.slice/filebeat.service
           ??13059 /usr/share/filebeat/bin/filebeat -e -c /etc/filebeat/filebeat.yml -path.home /usr/share/filebeat -path.config /etc/filebeat 

Nov 26 06:45:18 ubuntu filebeat[13059]: 2019-11-26T06:45:18.528Z        INFO        log/harvester.go:251        Harvester started for file: /va
Nov 26 06:45:18 ubuntu filebeat[13059]: 2019-11-26T06:45:18.528Z        INFO        log/harvester.go:251        Harvester started for file: /va
Nov 26 06:45:18 ubuntu filebeat[13059]: 2019-11-26T06:45:18.529Z        INFO        log/harvester.go:251        Harvester started for file: /va
Nov 26 06:45:18 ubuntu filebeat[13059]: 2019-11-26T06:45:18.529Z        INFO        log/harvester.go:251        Harvester started for file: /va
Nov 26 06:45:18 ubuntu filebeat[13059]: 2019-11-26T06:45:18.530Z        INFO        log/harvester.go:251        Harvester started for file: /va
Nov 26 06:45:18 ubuntu filebeat[13059]: 2019-11-26T06:45:18.530Z        INFO        log/harvester.go:251        Harvester started for file: /va
Nov 26 06:45:21 ubuntu filebeat[13059]: 2019-11-26T06:45:21.485Z        INFO        add_cloud_metadata/add_cloud_metadata.go:87        add_clou
Nov 26 06:45:21 ubuntu filebeat[13059]: 2019-11-26T06:45:21.486Z        INFO        log/harvester.go:251        Harvester started for file: /va
Nov 26 06:45:22 ubuntu filebeat[13059]: 2019-11-26T06:45:22.485Z        INFO        pipeline/output.go:95        Connecting to backoff(async(tc
Nov 26 06:45:22 ubuntu filebeat[13059]: 2019-11-26T06:45:22.487Z        INFO        pipeline/output.go:105        Connection to backoff(async(t

Probar la recepción de datos de Elasticsearch

Ahora, verifica si Elasticsearch está recibiendo datos o no con el siguiente comando:

curl -X GET localhost:9200/_cat/indices?v

Deberías ver la siguiente salida:

health status index                            uuid                   pri rep docs.count docs.deleted store.size pri.store.size
green  open   .kibana_task_manager_1           fpHT_GhXT3i_w_0Ob1bmrA   1   0          2            0     46.1kb         46.1kb
yellow open   ssh_auth-2019.11                 mtyIxhUFTp65WqVoriFvGA   1   1      15154            0      5.7mb          5.7mb
yellow open   filebeat-7.4.2-2019.11.26-000001 MXSpQH4MSZywzA5cEMk0ww   1   1          0            0       283b           283b
green  open   .apm-agent-configuration         Ft_kn1XXR16twRhcZE4xdQ   1   0          0            0       283b           283b
green  open   .kibana_1                        79FslznfTw6LfTLc60vAqA   1   0          8            0     31.9kb         31.9kb

También puedes verificar el índice ssh_auth-2019.05 con el siguiente comando:

curl -X GET localhost:9200/ssh_auth-*/_search?pretty

Deberías ver la siguiente salida:

{
  "took" : 1,
  "timed_out" : false,
  "_shards" : {
    "total" : 1,
    "successful" : 1,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : {
      "value" : 10000,
      "relation" : "gte"
    },
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "ssh_auth-2019.11",
        "_type" : "_doc",
        "_id" : "g7OXpm4Bi50dVWRYAyK4",
        "_score" : 1.0,
        "_source" : {
          "log" : {
            "offset" : 479086,
            "file" : {
              "path" : "/var/log/elasticsearch/gc.log"
            }
          },
          "event" : {
            "timezone" : "+00:00",
            "dataset" : "elasticsearch.server",
            "module" : "elasticsearch"
          },

Agregar índice en Kibana

Ahora, inicia sesión en tu panel de Kibana y haz clic en Patrones de índice. Deberías ver la siguiente página:

Ahora, haz clic en Crear patrón de índice. Deberías ver la siguiente página:

Agrega el índice ssh_auth- y haz clic en el botón *Siguiente. Deberías ver la siguiente página:

Ahora, selecciona @timestamp y haz clic en el botón Crear patrón de índice. Deberías ver la siguiente página:

Ahora, haz clic en la pestaña Descubrir en el panel izquierdo. Deberías poder ver tus datos en la siguiente pantalla:

¡Felicidades! Has instalado y configurado correctamente Filebeat para enviar datos de eventos a Logstash. Ahora puedes proceder a crear paneles de Kibana después de recibir todos los datos.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.