Uzun bir aradan sonra tekrardan buradayım 😀 ELK Stack ve Beats Family üzerinde durmuş olduğum bir konu hakkında sizlerle bilgilerimi paylaşmak istiyorum. Buradaki amacım ELK Stack ve Beats Family nasıl kullanılıyor. Yapılarındaki sıralamaları anlamanıza yardımcı olmak için yazılmış bir blog yazısıdır. Umarım keyif alırsınız.
ELK STACK
Elasticsearch Nedir? Nasıl Kurulur?
Nedir?
Elasticsearch veri blokları arasında arama motoru görevi yapmaktadır. Ayrıca Büyük verilerin tutulduğu kısım yani veritabanı işlemi de görmektedir. Verileri JSON formatından indekslemektedir. Ayrıca logların süreleri gerçeğe çok yakındır. 3 – 5 sn gibi fark oluşmaktadır. Elasticsearch portları 9200 ve 9300’dür.
Nasıl Kurulur?
İşlemlerimi ubuntu server üzerinde gerçekleştirmekteyim. Elasticsearch kurulumu yapılmadan önce java yazılımlarının server üzerinde kurulu olunması gerekmektedir. ELK STACK java dili ile yazılmış ürünlerdir.
apt-get install default-jdk
apt-get install default-jre
Adım adım elasticsearch kurulumuna geçelim.
Adım-1: İlk olarak Elasticsearch için GPG anahtarını APT’ ye aktarım için aşağıdaki komutu kullanıyoruz.
Adım-2: Server içerisinde güncelleme yapıldığında otomatik olarak elasticsearch paketi de ekli olduğundan kontrol eder güncelleme varsa güncellenir.
Adım-3: Elasticsearch kurulumuna başlayalım. Kurulum tamamlandıktan sonra konfigürasyon adımına geçelim.
Adım-4: Elasticsearch için gerekli konfigürasyon dosyasına giderek ayarlamaları yapmamız gerekmektedir. nano /etc/elasticsearch/elasticsearch.yml giderek konfigürasyon dosyasını açıyoruz.
Dosya içerisinde Network kısmına gelerek network.host: 0.0.0.0 yapıyoruz sebebi diğer yapılandırmalarda çıkış olarak her IP adresini görmesini istememizden kaynaklıdır. http.port: ise default olarak kalmasını tercih ederiz. Fakat değiştirmek mümkündür.
Adım-5: Elasticsearch’ü Ubuntu server üzerinde çalıştırmaktır. Çalıştığını server üzerinde görüyoruz.
Elasticsearch yapısını tamamladım. Şimdi sırada logstash kurulumundadır.
Logstash Nedir? Nasıl Kurulur?
Çeşitli kaynaklardan gelen logların işlendiği kısımdır. Kurulum ise apt-get install logstash komutuyla kurulmaktadır. Logstash üzerinde konfigürasyon yapılmasına gerek yoktur. Logstash için default port 5044 dür. conf.d içerisinde logları anlamlandırmak amacıyla filter yazılmaktadır. İnput kısmında uyarım olacaktır. Farklı logları aynı port üzerinden geçirmek istenildiğinde inputu tek bir conf dosyasına yazmanız yeterli olacaktır. Aksi takdirde aynı portu açmaya çalışarak logstash üzerinden hata ile karşılaşacaksınızdır.
- input: Log göndericilerinden gelen logları aldığımız bölümdür. Logstasha nasıl geldiğini belirtir.
- filter: Logları ayıklamak için ayarlamalar yapılır.
- output: Logların nereye gönderileceği yer belirtilir. İşlendikten sonra,
Conf.d içerisine filtreleme yapmak istediğimiz işlemleri tamamladıktan sonra systemctl start logstash diyerek servisi başlatıyoruz.
Kibana Nedir? Nasıl Kurulur?
Nedir?
Kibana, işlenmiş verilerin elasticsearche aktarılarak, sonrasında elasticsearch üzerinde depolanan logların görselleştirilmesidir. Kibana portu 5601 dir.
Nasıl Kurulur?
apt-get install kibana komutu ile server üzerine indirilmektedir. Ardından nano /etc/kibana/kibana.yml içerisine girerek konfigürasyon işlemleri yapılması gerekmektedir.
Kibananın kendi portunu burada da default bırakıyoruz. Server.host: ise hangi IP ile arayüze girmek istediğini belirtiyoruz. En alt kısımda ise elasticsearchten verinin kibanaya localhosttan gelmesini istiyoruz. Kibana konfigürasyonunu tamamlıyoruz. Kibana servisini systemctl start kibana ile başlatıyoruz.
Beats Family Nedir?
Beats ailesinin amacı görevlerine ait logların toplanıp işlenmesi gerekenleri logstash’e, işlenmeye gerek duyulmayan kısmını elasticsearch’e yönlendirerek logların kibana üzerinde görünmesidir. Kullanmış olduğum beats ürünlerinden bahsetmek istiyorum.
Filebeat: Günlük dosyalarını toplamak ve logstash’e aktararak logların işlenmesini sağlamaktadır.
Winlogbeat: Sysmon ile birlikte Windows günlüklerine göre logları toplamaktadır. Logların logstash üzerine gönderilerek işlenmesi sağlanmaktadır.
Packetbeat: Ağ paket analizörü olarak bilinmektedir. Network anormalliklerini izlememizi sağlar. Logstash üzerinden işlenerek Ağ paketleri ayarlanabilmektedir.
Blog serisi devam edecektir. Hangi kaynaklardan log toplanıyor, saldırılara karşı nasıl bir içerik görünüyor ve logstash de nasıl işleniyor. Hepsini tek tek sizlerle paylaşacağım. Diğer blog yazımda görüşmek üzere…