GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal Logstash di Ubuntu 18.04

Logstash adalah alat sumber terbuka dan gratis, serta platform analisis log paling populer di dunia untuk mengumpulkan, menguraikan, dan menyimpan log untuk penggunaan di masa mendatang. Logstash hadir dengan serangkaian plugin yang kaya dan bahasa template yang sangat ekspresif yang memudahkan untuk mengubah aliran data. Logstash adalah bagian dari tumpukan ELK, tetapi Anda juga dapat menggunakannya secara mandiri. Logstash memiliki kemampuan untuk menarik dari sumber data apa pun menggunakan plugin input, menerapkan berbagai transformasi data, dan mengirimkan data ke sejumlah besar tujuan menggunakan plugin output.

Dalam tutorial ini, kami akan menunjukkan cara menginstal dan mengkonfigurasi Logstash di server Ubuntu 18.04.

Prasyarat

  • Server yang menjalankan Ubuntu 18.04.
  • Kata sandi root dikonfigurasi di server Anda.

Memulai

Sebelum memulai, perbarui sistem Anda dengan versi terbaru. Anda dapat melakukannya dengan menjalankan perintah berikut:

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

Setelah sistem Anda diperbarui, mulai ulang untuk menerapkan perubahan.

Instal Java

Sebelum menginstal Java, pastikan Anda telah menginstal Java 8 atau Java 11. Anda dapat menginstal Java 8 dengan perintah berikut:

apt-get install openjdk-8-jdk -y

Setelah menginstal Java, periksa versi Java menggunakan perintah berikut:

java -version

Anda akan melihat output berikut:

openjdk version "1.8.0_162"
OpenJDK Runtime Environment (build 1.8.0_162-8u162-b12-1-b12)
OpenJDK 64-Bit Server VM (build 25.162-b12, mixed mode)

Instal Logstash

Sebelum menginstal Logstash, Anda harus menginstal Elasticsearch di server Anda. Secara default, Elasticsearch tidak tersedia di server Ubuntu 18.04. Jadi, Anda perlu menambahkan repositori untuk Elasticsearch.

Pertama, instal paket yang diperlukan dengan perintah berikut:

apt-get install apt-transport-https -y

Selanjutnya, unduh dan tambahkan kunci GPG Elasticsearch dengan perintah berikut:

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

Selanjutnya, tambahkan repositori dengan perintah berikut:

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

Selanjutnya, instal Elasticsearch dan Logstash dengan perintah berikut:

apt-get install elasticsearch logstash -y

Setelah kedua paket diinstal, mulai Logstash dan Elasticsearch, dan aktifkan untuk memulai setelah sistem reboot dengan perintah berikut:

systemctl start logstash
systemctl enable logstash
systemctl start elasticsearch
systemctl enable elasticsearch

Anda juga dapat memeriksa status Logstash dengan perintah berikut:

systemctl status logstash

Anda akan melihat output berikut:

? logstash.service - logstash
   Loaded: loaded (/etc/systemd/system/logstash.service; disabled; vendor preset: enabled)
   Active: active (running) since Wed 2019-11-20 10:13:22 UTC; 5s ago
 Main PID: 3790 (java)
    Tasks: 13 (limit: 1110)
   CGroup: /system.slice/logstash.service
           ??3790 /usr/bin/java -Xms1g -Xmx1g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly 

Nov 20 10:13:22 ubuntu systemd[1]: Started logstash.

Secara default, Elasticsearch mendengarkan pada port 9200. Anda dapat memeriksanya dengan perintah berikut:

netstat -ant | grep 9200

Anda akan melihat output berikut:

tcp6       0      0 127.0.0.1:9200          :::*                    LISTEN     
tcp6       0      0 ::1:9200                :::*                    LISTEN  

Konfigurasikan Logstash

Konfigurasi logstash adalah salah satu bagian yang paling menantang dari setiap administrator sistem. Konfigurasi logstash terdiri dari tiga bagian konfigurasi utama, Input Logstash, Filter Logstash, dan Output Logstash. Setiap bagian bertanggung jawab atas fungsi yang berbeda dan menggunakan plugin Logstash yang berbeda.

Konfigurasikan Masukan Logstash

Pertama, Anda perlu membuat file konfigurasi input beats-input.conf untuk menerima data dari Beats pada port TCP 5044:

nano /etc/logstash/conf.d/beats-input.conf

Tambahkan baris berikut:

input {
  beats {
    port => 5044
  }
}

Simpan dan tutup file setelah Anda selesai.

Konfigurasikan Filter Logstash

Selanjutnya, Anda perlu mengonfigurasi plugin filter untuk memproses peristiwa yang diterima dari ketukan. Di sini, kami akan mengonfigurasi ketukan untuk mengumpulkan peristiwa otentikasi SSH dari sistem Ubuntu. Untuk melakukannya, buat file konfigurasi filter baru ssh-auth-filter.conf:

nano /etc/logstash/conf.d/ssh-auth-filter.conf

Tambahkan baris berikut:

filter {
  grok {
    match => { "message" => "%{SYSLOGTIMESTAMP:timestamp}\s+%{IPORHOST:dst_host}\s+%{WORD:syslog_program}\[\d+\]:\s+(?\w+\s+password)\s+for\s+%{USER:auth_user}\s+from\s+%{SYSLOGHOST:src_host}.*" }
    add_field => { "activity" => "SSH Logins" }
    add_tag => "linux_auth"
    }
}

Simpan dan tutup file setelah Anda selesai.

Konfigurasikan Keluaran Logstash

Selanjutnya, Anda perlu mengonfigurasi plugin keluaran untuk memungkinkan Logstash mengirim data peristiwa ke tujuan tertentu.

Di sini, kita akan membuat file konfigurasi output Logstash yang mengirimkan data ke Elasticsearch yang berjalan di localhost.

nano /etc/logstash/conf.d/elasticsearch-output.conf

Tambahkan baris berikut:

output {
   elasticsearch {
     hosts => ["localhost:9200"]
     manage_template => false
     index => "ssh_auth-%{+YYYY.MM}"
 }
  stdout { codec => rubydebug }
}

Simpan dan tutup file setelah Anda selesai. Kemudian, restart layanan Logstash untuk menerapkan perubahan:

systemctl restart logstash

Uji Logstash

Logstash sekarang diinstal dan dikonfigurasi. Saatnya untuk menguji apakah itu berfungsi atau tidak.

Anda dapat memverifikasi konfigurasi Logstash dengan perintah berikut:

sudo -u logstash /usr/share/logstash/bin/logstash --path.settings /etc/logstash -t

Jika semuanya baik-baik saja, Anda akan melihat output berikut:

Sending Logstash logs to /var/log/logstash which is now configured via log4j2.properties
[2019-11-26T06:27:48,104][INFO ][logstash.setting.writabledirectory] Creating directory {:setting=>"path.queue", :path=>"/var/lib/logstash/queue"}
[2019-11-26T06:27:48,119][INFO ][logstash.setting.writabledirectory] Creating directory {:setting=>"path.dead_letter_queue", :path=>"/var/lib/logstash/dead_letter_queue"}
[2019-11-26T06:27:50,331][INFO ][org.reflections.Reflections] Reflections took 47 ms to scan 1 urls, producing 20 keys and 40 values 
Configuration OK
[2019-11-26T06:27:51,899][INFO ][logstash.runner          ] Using config.test_and_exit mode. Config Validation Result: OK. Exiting Logstash

Selamat! Anda telah berhasil menginstal dan mengkonfigurasi Logstash di server Ubuntu 18.04.


Ubuntu
  1. Cara Menginstal XWiki di Ubuntu 20.04

  2. Cara Menginstal phpBB di Ubuntu 20.04

  3. Cara Menginstal MongoDB di Ubuntu 20.04

  1. Cara Menginstal R di Ubuntu 20.04

  2. Cara Menginstal Go di Ubuntu 18.04

  3. Cara Menginstal R di Ubuntu 18.04

  1. Cara Menginstal R di Ubuntu 18.04

  2. Cara Menginstal Syncthing di Ubuntu 20.04

  3. Cara Menginstal Usermin di Ubuntu 20.04