Filebeat Ubuntu · 6 min read · Oct 27, 2025

Come installare FileBeat su Ubuntu

Il Elastic Stack è una combinazione di quattro componenti principali: Elasticsearch, Logstash, Kibana e Beats. Filebeat è uno dei membri più famosi di questa famiglia che raccoglie, inoltra e centralizza i dati dei log degli eventi su Elasticsearch o Logstash per l’indicizzazione. Filebeat ha molti moduli, tra cui Apache, Nginx, System, MySQL, auditd e molti altri, che semplificano la visualizzazione dei formati di log comuni con un solo comando.

In questo tutorial, ti mostreremo come installare e configurare Filebeat per inoltrare i log degli eventi e gli eventi di autenticazione SSH a Logstash su Ubuntu 18.04.

Prerequisiti

  • Un server che esegue Ubuntu 18.04 con Elasticsearch, Kibana e Logstash installati e configurati.
  • Una password di root configurata sul tuo server.

Iniziare

Prima di iniziare, aggiorna il tuo sistema con l’ultima versione. Puoi farlo eseguendo il seguente comando:

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

Una volta aggiornato il sistema, riavvialo per applicare le modifiche.

Installa Filebeat

Per impostazione predefinita, Filebeat non è disponibile nel repository predefinito di Ubuntu 18.04. Quindi dovrai aggiungere il repository APT dell’Elastic Stack 7 nel tuo sistema.

Per prima cosa, installa il pacchetto richiesto con il seguente comando:

apt-get install apt-transport-https -y

Successivamente, scarica e aggiungi la chiave dell’Elastic Stack con il seguente comando:

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

Successivamente, aggiungi il repository APT dell’Elastic Stack 7 con il seguente comando:

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

Successivamente, aggiorna il repository e installa Filebeat con il seguente comando:

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

Una volta completata l’installazione, puoi procedere al passaggio successivo.

Configura Filebeat

Per impostazione predefinita, Filebeat è configurato per inviare i dati degli eventi a Elasticsearch. Qui, configureremo Filebeat per inviare i dati degli eventi a Logstash. Puoi farlo modificando il file /etc/filebeat/filebeat.yml:

nano /etc/filebeat/filebeat.yml

Commenta l’output di elasticsearch e decommenta l’output di Logstash come mostrato di seguito:

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

# output.elasticsearch:
  # Array di host a cui connettersi.
  # hosts: ["localhost:9200"]

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

output.logstash:
  # Gli host di Logstash
  hosts: ["localhost:5044"]

Una volta terminato, puoi procedere al passaggio successivo.

Abilita il modulo di sistema di Filebeat

Per impostazione predefinita, Filebeat viene fornito con molti moduli. Puoi elencare tutti i moduli con il seguente comando:

filebeat modules list

Dovresti vedere il seguente output:

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

Per impostazione predefinita, tutti i moduli sono disabilitati. Quindi, dovrai abilitare il modulo di sistema per raccogliere e analizzare i log creati dal servizio di logging di sistema. Puoi abilitare il modulo di sistema con il seguente comando:

filebeat modules enable system

Successivamente, puoi verificare il modulo di sistema con il seguente comando:

filebeat modules list

Dovresti vedere che il modulo di sistema è ora abilitato:

Enabled:
system

Successivamente, dovrai configurare il modulo di sistema per leggere solo i log di autenticazione. Puoi farlo modificando il file /etc/filebeat/modules.d/system.yml:

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

Cambia le seguenti righe:

- module: system
  # Syslog
  syslog:
    enabled: false
...
  # Log di autorizzazione
  auth:
    enabled: true

    # Imposta percorsi personalizzati per i file di log. Se lasciato vuoto,
    # Filebeat sceglierà i percorsi a seconda del tuo OS.
    var.paths: ["/var/log/auth.log"]

Salva e chiudi il file quando hai finito.

Carica il modello di indice in Elasticsearch

Successivamente, dovrai caricare manualmente il modello in Elasticsearch. Puoi farlo con il seguente comando:

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

Dovresti vedere il seguente output:

Index setup finished.

Successivamente, genera il modello di indice e installa il modello sul server Elastic Stack con il seguente comando:

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

Infine, avvia il servizio Filebeat e abilitalo per avviarsi dopo il riavvio del sistema con il seguente comando:

systemctl start filebeat  
systemctl enable filebeat

Puoi controllare lo stato di Filebeat con il seguente comando:

systemctl status filebeat

Dovresti vedere il seguente output:

? filebeat.service - Filebeat invia file di log a Logstash o direttamente a 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

Testa la ricezione dei dati di Elasticsearch

Ora, verifica se Elasticsearch sta ricevendo dati o meno con il seguente comando:

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

Dovresti vedere il seguente output:

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

Puoi anche verificare l’indice ssh_auth-2019.05 con il seguente comando:

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

Dovresti vedere il seguente output:

{
  "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"
          },

Aggiungi indice su Kibana

Ora, accedi al tuo dashboard Kibana e fai clic su Modelli di indice. Dovresti vedere la seguente pagina:

Ora, fai clic su Crea modello di indice. Dovresti vedere la seguente pagina:

Aggiungi l’indice ssh_auth- e fai clic sul pulsante *Passo successivo. Dovresti vedere la seguente pagina:

Ora, seleziona @timestamp e fai clic sul pulsante Crea modello di indice. Dovresti vedere la seguente pagina:

Ora, fai clic sulla scheda Scopri nel pannello di sinistra. Dovresti essere in grado di vedere i tuoi dati nella seguente schermata:

Congratulazioni! Hai installato e configurato con successo Filebeat per inviare i dati degli eventi a Logstash. Puoi ora procedere a creare dashboard Kibana dopo aver ricevuto tutti i dati.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.