Wazuh Nedir ? Debian Üzerinde Wazuh Kurulumu Nasıl Yapılır ?

  • Fatih Çevik
  • 07 Nov 2021
Wazuh Nedir ? Debian Üzerinde Wazuh Kurulumu Nasıl Yapılır ?
Tehdit algılama, bütünlük izleme, olay müdahale ve uyumluluk için ücretsiz, açık kaynak kodlu ve kurumsal kullanıma hazır bir güvenlik izleme çözümüdür. Wazuh agent’ları ağdaki endpointlere kurulduğunda bu endpointlerde (host) neler olup bittiğine dair görünürlük elde edilmektedir. Linux, Windows ve MacOS işletim sistemlerinde çalışabilmektedir.


Wazuh, Elastic Stack ve OpenSCAP ile entegre edilerek daha kapsamlı bir çözüm haline getirilebilmektedir. Entegre edilerek kullanıldığında daha kapsamlı kurumsal kullanıma uygun güvenlik izleme çözümü haline gelmektedir. Wazuh sahip olduğu yetenekler ile sisteminiz üzerinde oluşabilecek zayıflıkları, yetkisiz erişimleri, log analizi, tehdit algılama, bütünlük izleme, olay müdahale, uyumluluk takibi, dosya bütünlüğü kontrolü, policy monitoring, rootkit tespiti, Windows kayıt defteri izleme, gerçek zamanlı uyarı ve active response gibi birçok denetimi gerçekleştirebilirsiniz.


OpenSCAP Nedir ?



OpenSCAP, sistem yapılandırmalarını kontrol etmek ve güvenlik açığı olan uygulamaları tespit etmek için kullanılan bir OVAL (Open Vulnerability Assessment Language) ve XCCDF (Extensible Configuration Checklist Description Format) yorumlayıcısıdır.

Elastic Stack Nedir ?



Elastic Stack, log verilerini toplamak, parse etmek, dizinlemek, depolamak, aramak ve sunmak için kullanılan bir yazılım paketidir. Elastic Stack, Elasticsearch, Logstash ve Kibana olarak bilinen günlük yönetim için üç popüler açık kaynak projesinin birleşimidir. Birlikte Wazuh alarmları için gerçek zamanlı ve kullanıcı arayüz oluşturmaktadır. Elastic Stack ile Wazuh entegrasyonu, PCI DSS uyumluluğu ve CIS(Center for Internet Security) kriterleri için kullanıma hazır dashboardlar ile birlikte gelmektedir.

Wazuh ve diğer servislerin ne olduğu hakkında fikir edindiysek artık debian üzerinde wazuh kurulum ve konfigürasyonlarına geçebiliriz.


1. Wazuh repo ekleme



1.İlk olarak kurulum için gerekli paketleri yüklemekle başlıyoruz.

apt install curl apt-transport-https unzip wget libcap2-bin software-properties-common lsb-release gnupg


2.Paketleri yükledikten sonra GPG (GNU Privacy Guard, şifreleme yazılımı PGP yerine GPL lisanslı bir özgür yazılım alternatifidir) key yüklememiz gerekiyor.

curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | apt-key add -


3.İhtiyacımız olan repoyu ekliyoruz.

echo "deb https://packages.wazuh.com/4.x/apt/ stable main" | tee -a /etc/apt/sources.list.d/wazuh.list


4.İlk adım olan wazuh repo ekleme kısmında son olarak paket bilgilerini güncelliyoruz.

apt-get update


2. Wazuh manager kurulumu



1.Wazuh manager paketini apt-get yardımıyla yüklüyoruz.

apt-get install wazuh-manager


2.Wazuh manager servisini aktif edip çalıştırıyoruz. Debian işletim sisteminde systemctl yardımıyla bu işlemi gerçekleştirebiliyoruz.

systemctl daemon-reload

systemctl enable wazuh-manager

systemctl start wazuh-manager


3.Tekrar systemctl yardımıyla Wazuh manager servisinin aktif olduğunu doğrulayabiliyoruz.

systemctl status wazuh-manager


3. Elasticsearch Kurulumu



Elasticsearch için Open Distro, oldukça ölçeklenebilir bir tam metin arama motoru olan Elasticsearch'ün açık kaynaklı bir dağıtımıdır. Gelişmiş güvenlik, uyarı, dizin yönetimi, derin performans analizi ve diğer birçok ek özellik sunar.

1.Elasticsearch OSS ve Elasticsearch için Open Distro yüklüyoruz.

apt install elasticsearch-oss opendistroforelasticsearch


Elasticsearch konfigürasyonu


2.Aşağıdaki komut ile konfigürasyon dosyasını indiriyoruz.

curl -so /etc/elasticsearch/elasticsearch.yml https://packages.wazuh.com/resources/4.2/open-distro/elasticsearch/7.x/elasticsearch_all_in_one.yml


Elasticsearch kullanıcı ve rolleri


Wazuh kibanayı sorunsuz kullanmak için kullanıcı ve rol eklemeniz gerekmektedir.

3.Aşağıdaki komut satırları ile Wazuh kullanıcıları ve Kibana ek rolleri ekliyoruz.

curl -so /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/roles.yml https://packages.wazuh.com/resources/4.2/open-distro/elasticsearch/roles/roles.yml
curl -so /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/roles_mapping.yml https://packages.wazuh.com/resources/4.2/open-distro/elasticsearch/roles/roles_mapping.yml
curl -so /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/internal_users.yml https://packages.wazuh.com/resources/4.2/open-distro/elasticsearch/roles/internal_users.yml


Bu kullanıcılar ve roller Wazuh Kibana eklentisi ile birlikte çalışacak şekilde tasarlanmıştır, fakat korumaları mevcuttur ve Kibana arayüzünden değiştirilemezler. Bunları değiştirmek veya yeni kullanıcı ile rol eklemek için securityadmin scriptinin çalıştırılması gerekmektedir.

Sertifikaların oluşturulması


4.Demo sertifikaları kaldırın.

rm /etc/elasticsearch/esnode-key.pem /etc/elasticsearch/esnode.pem /etc/elasticsearch/kirk-key.pem /etc/elasticsearch/kirk.pem /etc/elasticsearch/root-ca.pem -f


5.Sertifikaları oluışturup konumlandırın:



curl -so ~/wazuh-cert-tool.sh https://packages.wazuh.com/resources/4.2/open-distro/tools/certificate-utility/wazuh-cert-tool.sh
curl -so ~/instances.yml https://packages.wazuh.com/resources/4.2/open-distro/tools/certificate-utility/instances_aio.yml


  • Sertifika oluşturmak için indirdiğiniz scripti çalıştırın.


bash ~/wazuh-cert-tool.sh


  • Elasticsearch sertifikalarını ilgili konumlara taşıyın.


mkdir /etc/elasticsearch/certs/
mv ~/certs/elasticsearch* /etc/elasticsearch/certs/
mv ~/certs/admin* /etc/elasticsearch/certs/
cp ~/certs/root-ca* /etc/elasticsearch/certs/


6.Sertifika işlemleri bittikten sonra elasticsearch servisini aktif edip çalıştırın.

systemctl daemon-reload

systemctl enable elasticsearch

systemctl start elasticsearch


7.Yeni sertifika bilgilerini yüklemek ve clusterı başlatmak için securityadmin scriptini çalıştırın.

export JAVA_HOME=/usr/share/elasticsearch/jdk/ && /usr/share/elasticsearch/plugins/opendistro_security/tools/securityadmin.sh -cd /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/ -nhnv -cacert /etc/elasticsearch/certs/root-ca.pem -cert /etc/elasticsearch/certs/admin.pem -key /etc/elasticsearch/certs/admin-key.pem


8.Kurulumun başarılı olduğunu aşağıdaki komut ile test edin.

curl -XGET https://localhost:9200 -u admin:admin -k


Örnek çıktı aşağıdakine benzer olmalıdır.

            {
"name" : "node-1" ,
"cluster_name" : "elasticsearch" ,
"cluster_uuid" : "tWYgqpgdRz6fGN8gH11flw" ,
"version" : {
"number" : "7.10.2" ,
"build_flavor" : "oss" ,
"build_type" : "rpm" ,
"build_hash" : "747e1cc71def077253878a59143c1f785afa92b9" ,
"build_date" : "2021-01-13T00:42:12.435326Z" ,
"build_snapshot" : false ,
"lucene_version" : "8.7.0" ,
"minimum_wire_compatibility_version" : "6.8.0" ,
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}


4. Filebeat Kurulumu



Filebeat, uyarıları ve arşivlenmiş olayları Elasticsearch'e güvenli bir şekilde ileten Wazuh sunucusundaki araçtır.

1.Filebeat paketini yükleyin.

apt-get install filebeat


2.Wazuh uyarılarını elasticsearche iletmek için kullanılan önceden konfigüre edilmiş Filebeat konfigürasyon dosyasını indirin.

curl -so /etc/filebeat/filebeat.yml https://packages.wazuh.com/resources/4.2/open-distro/filebeat/7.x/filebeat_all_in_one.yml


3.Elasticsearch için uyarı şablonlarını indirin.

curl -so /etc/filebeat/wazuh-template.json https://raw.githubusercontent.com/wazuh/wazuh/4.2/extensions/elasticsearch/7.x/wazuh-template.json
chmod go+r /etc/filebeat/wazuh-template.json


4.Filebeat için Wazuh modülü indirin.

curl -s https://packages.wazuh.com/4.x/filebeat/wazuh-filebeat-0.1.tar.gz | tar -xvz -C /usr/share/filebeat/module


5.Elasticsearch sertifikalarını /etc/filebeat/certs içine kopyalayın.

mkdir /etc/filebeat/certs
cp ~/certs/root-ca.pem /etc/filebeat/certs/
mv ~/certs/filebeat* /etc/filebeat/certs/


6.Filebeat servisini aktif edip çalıştırın.

systemctl daemon-reload
systemctl enable filebeat
systemctl start filebeat


7.Filebeat'in başarılı şekilde kurulduğunu test etmek için aşağıdaki komutu çalıştırın.

filebeat test output


Çıktı aşağıdakine benzer olmalıdır. Her şey tamam ise sonraki adıma geçebilirsiniz.

             elasticsearch: https:                                                         //127.0.0.1                                                                                                                  :9200...                                                         
parse url. .. OK
connection. ..
parse host. .. OK
dns lookup. .. OK
addresses: 127.0.0.1
dial up. .. OK
TLS. ..
security: server's certificate chain verification is enabled
handshake. .. OK
TLS version : TLSv1.3
dial up. .. OK
talk to server. .. OK
version : 7.10.2


5. Kibana Kurulumu



Kibana, Elasticsearch'te depolanan olayları ve arşivleri araştırmak ve görselleştirmek için esnek ve sezgisel bir web arayüzüdür.

1.İlk olarak kibana paketini yükleyin.

apt-get install opendistroforelasticsearch-kibana


2.Kibana konfigürasyon dosyasını indirin.

curl -so /etc/kibana/kibana.yml https://packages.wazuh.com/resources/4.2/open-distro/kibana/7.x/kibana_all_in_one.yml


/etc/kibana/kibana.yml dosyasında, server.host değeri 0.0.0.0 olarak görünmektedir. Bu kibanaya dışarıdan erişilebileceği ve bütün bağlantıları kabul edeceği anlamına gelir. Spesifik bir IP üzerinden erişmek için bu değeri değiştirebilirsiniz.


3./usr/share/kibana/data dizinini oluşturun ve gerekli izinleri verin.

mkdir /usr/share/kibana/data
chown -R kibana:kibana /usr/share/kibana/data


4.Wazuh Kibana pluginini yükleyin. Yükleme işlemi Kibana'nın ana dizini içinde yapılmalıdır.

cd /usr/share/kibana
sudo -u kibana /usr/share/kibana/bin/kibana-plugin install https://packages.wazuh.com/4.x/ui/kibana/wazuh_kibana-4.2.4_7.10.2-1.zip


5.Elasticsearch sertifikalarını /etc/kibana/certs içerisine kopyalayın.

mkdir /etc/kibana/certs
cp ~/certs/root-ca.pem /etc/kibana/certs/
mv ~/certs/kibana* /etc/kibana/certs/
chown kibana:kibana /etc/kibana/certs/*


6.Kibana soketini ayrıcalıklı 443 portuna bağlayın.

setcap 'cap_net_bind_service=+ep' /usr/share/kibana/node/bin/node


7.Son olarak kibana servisini de aktif edip çalıştırıyoruz ardından web arayüzüne erişebiliriz.

systemctl daemon-reload
systemctl enable kibana
systemctl start kibana


8.Bu aşamaya kadar her şeyi sorunsuz yaptıysanız artık web arayüzüne bağlanabilirsiniz.

URL: https://
user: admin
password: admin


Wazuh agent ile loglama konusunu da bir başka yazımızda ele alacağız.
Size yardımcı olmamı
ister misiniz ?