Wazuh Upgrade Sonrası Dashboard Çalışmıyor

Arslan GÜRALWazuhSiber Güvenlik4 hours ago29 Views

Wazuh Upgrade Sonrası Dashboard Çalışmıyor

Giriş

Wazuh 4.x sürümünde yapılan bir upgrade işlemi sonrasında dashboard arayüzüne erişilememe sorunu oldukça yaygındır. Bu makalede, upgrade sonrası karşılaşılan 5 farklı sorunu ve çözümlerini adım adım anlatıyorum.

Ortam: Wazuh 4.14.x — All-in-one kurulum (Manager + Indexer + Dashboard aynı sunucuda)


1. Sorun Tespiti: Servislerin Durumu

Upgrade sonrası ilk yapılması gereken şey, tüm Wazuh bileşenlerinin servis durumlarını kontrol etmektir.

systemctl status wazuh-dashboard wazuh-indexer wazuh-manager --no-pager

Bizim senaryomuzda:

BileşenDurum
wazuh-indexer✅ active (running)
wazuh-manager❌ inactive (dead)
wazuh-dashboard❌ inactive (dead)

Neden: Upgrade sırasında servisler durdurulmuş ancak tekrar başlatılmamış.

Çözüm

sudo systemctl start wazuh-manager
sudo systemctl start wazuh-dashboard

2. OpenSearch Security Not Initialized

Servisler başlatıldıktan sonra dashboard loglarında sürekli şu hata tekrarlanıyordu:

[ResponseError]: Response Error

Indexer’a doğrudan sorgu attığımızda kök neden ortaya çıktı:

curl -sk https://127.0.0.1:9200 -u admin:admin

Çıktı:

OpenSearch Security not initialized.

Neden

Upgrade sırasında OpenSearch security plugin’inin konfigürasyon dizini (securityconfig) silinmiş veya yolu değişmiş. securityadmin.sh aracının bu konfigürasyonu yeniden yüklemesi gerekiyor.

Çözüm

Önce konfigürasyon dosyalarının yerini buluyoruz:

# Eski yol (upgrade sonrası silinmiş olabilir):
ls /usr/share/wazuh-indexer/plugins/opensearch-security/securityconfig/

# Doğru yol (Wazuh 4.x paketinde):
ls /etc/wazuh-indexer/opensearch-security/

Eğer dosyalar /etc/wazuh-indexer/opensearch-security/ altında mevcutsa, securityadmin.sh‘ı bu dizinle çalıştırıyoruz:

export JAVA_HOME=/usr/share/wazuh-indexer/jdk

sudo /usr/share/wazuh-indexer/plugins/opensearch-security/tools/securityadmin.sh \
  -cd /etc/wazuh-indexer/opensearch-security/ \
  -nhnv \
  -cacert /etc/wazuh-indexer/certs/root-ca.pem \
  -cert /etc/wazuh-indexer/certs/admin.pem \
  -key /etc/wazuh-indexer/certs/admin-key.pem \
  -icl \
  -h 127.0.0.1

Eksik Dosya Durumu: internal_users.yml

Bazı durumlarda internal_users.yml dosyası da kaybolabilir. Bu durumda:

# Wazuh-indexer paketini indirip dosyayı çıkarın
wget https://packages.wazuh.com/4.x/apt/pool/main/w/wazuh-indexer/wazuh-indexer_4.14.2-1_amd64.deb -O /tmp/wazuh-indexer.deb

mkdir -p /tmp/wazuh-indexer-extract
dpkg-deb -x /tmp/wazuh-indexer.deb /tmp/wazuh-indexer-extract

# Eksik dosyayı geri yükleyin
sudo cp /tmp/wazuh-indexer-extract/etc/wazuh-indexer/opensearch-security/internal_users.yml \
  /etc/wazuh-indexer/opensearch-security/internal_users.yml

sudo chown wazuh-indexer:wazuh-indexer /etc/wazuh-indexer/opensearch-security/internal_users.yml
sudo chmod 640 /etc/wazuh-indexer/opensearch-security/internal_users.yml

Ardından securityadmin.sh‘ı tekrar çalıştırın.

Başarılı çıktı:

Done with success

3. Dashboard → Indexer Kimlik Doğrulama Hatası

Security initialize edildikten sonra dashboard hâlâ [ResponseError]: Response Error veriyorsa, dashboard konfigürasyonunu kontrol edin:

sudo cat /etc/wazuh-dashboard/opensearch_dashboards.yml

Eğer aşağıdaki satırlar yorum satırındaysa:

# opensearch.username: kibanaserver
# opensearch.password: kibanaserver

Çözüm

Yorum işaretlerini kaldırın:

sudo sed -i 's/^# opensearch.username: kibanaserver/opensearch.username: kibanaserver/' \
  /etc/wazuh-dashboard/opensearch_dashboards.yml

sudo sed -i 's/^# opensearch.password: kibanaserver/opensearch.password: kibanaserver/' \
  /etc/wazuh-dashboard/opensearch_dashboards.yml

Dashboard’u restart edin:

sudo systemctl restart wazuh-dashboard

Not: kibanaserver kullanıcısı, dashboard’un indexer ile iletişim kurması için kullanılan internal servis hesabıdır. Login ekranındaki admin hesabı ile karıştırmayın.


4. Admin Şifresi Çalışmıyor (Invalid Username or Password)

Dashboard login ekranı açılıyor ama admin şifresiyle giriş yapılamıyorsa, bunun sebebi internal_users.yml dosyasının varsayılan (demo) hash’lerle geri yüklenmesidir. Eski şifreniz artık geçersizdir.

Çözüm: Şifre Sıfırlama

Adım 1: Yeni bcrypt hash oluşturun:

export JAVA_HOME=/usr/share/wazuh-indexer/jdk

sudo /usr/share/wazuh-indexer/plugins/opensearch-security/tools/hash.sh \
  -p 'YeniGuvenliSifre123!'

Çıktı örneği:

$2y$12$AbCdEfGhIjKlMnOpQrStUvWxYz1234567890abcdefghijklmn

Adım 2: internal_users.yml‘deki admin hash’ini güncelleyin:

sudo vi /etc/wazuh-indexer/opensearch-security/internal_users.yml

admin: bloğundaki hash: değerini yeni hash ile değiştirin:

admin:
  hash: "$2y$12$AbCdEfGhIjKlMnOpQrStUvWxYz1234567890abcdefghijklmn"
  reserved: true
  backend_roles:
  - "admin"
  description: "Demo admin user"

Adım 3: Değişikliği indexer’a yükleyin:

sudo JAVA_HOME=/usr/share/wazuh-indexer/jdk \
  /usr/share/wazuh-indexer/plugins/opensearch-security/tools/securityadmin.sh \
  -cd /etc/wazuh-indexer/opensearch-security/ \
  -nhnv \
  -cacert /etc/wazuh-indexer/certs/root-ca.pem \
  -cert /etc/wazuh-indexer/certs/admin.pem \
  -key /etc/wazuh-indexer/certs/admin-key.pem \
  -icl \
  -h 127.0.0.1

Adım 4: Doğrulama:

curl -sk https://127.0.0.1:9200 -u 'admin:YeniGuvenliSifre123!'

Cluster bilgileri dönüyorsa şifre başarıyla güncellendi.


5. Alerts Index Pattern Eksik (No Template Found)

Dashboard’a giriş yaptıktan sonra health check ekranında şu hata görülebilir:

[Alerts index pattern] No template found for the selected index-pattern title [wazuh-alerts-*]

Neden

wazuh-alerts index template’ini Filebeat yükler. Upgrade sonrası Filebeat’in indexer’a bağlantısı kopmuş olabilir (şifre değişikliği nedeniyle).

Çözüm

Adım 1: Filebeat bağlantısını test edin:

sudo filebeat test output

Eğer 401 Unauthorized dönüyorsa:

Adım 2: Filebeat keystore’daki şifreyi güncelleyin:

echo 'YeniGuvenliSifre123!' | sudo filebeat keystore add password --stdin --force

Adım 3: Filebeat’i restart edin:

sudo systemctl restart filebeat

Adım 4: Bağlantıyı doğrulayın:

sudo filebeat test output

Beklenen çıktı:

elasticsearch: https://127.0.0.1:9200...
  ...
  talk to server... OK
  version: 7.10.2

Adım 5: Template’in yüklendiğini kontrol edin:

curl -sk https://127.0.0.1:9200/_cat/templates?v \
  -u 'admin:YeniGuvenliSifre123!' | grep wazuh

Beklenen çıktı:

wazuh            [wazuh-alerts-4.x-*, wazuh-archives-4.x-*] 0     1
wazuh-agent      [wazuh-monitoring-*]                        0
wazuh-statistics [wazuh-statistics-*]                        0

Özet: Kontrol Listesi

Wazuh upgrade sonrası sorun yaşıyorsanız aşağıdaki kontrol listesini sırasıyla takip edin:

#KontrolKomut
1Tüm servislerin durumusystemctl status wazuh-indexer wazuh-manager wazuh-dashboard
2OpenSearch Security initialized mı?curl -sk https://127.0.0.1:9200 -u admin:SIFRE
3securityconfig dosyaları yerinde mi?ls /etc/wazuh-indexer/opensearch-security/
4Dashboard config’te username/password açık mı?cat /etc/wazuh-dashboard/opensearch_dashboards.yml
5Admin hash güncel mi?Dashboard login testi
6Filebeat indexer’a bağlanabiliyor mu?filebeat test output
7Alerts template yüklü mü?curl ... /_cat/templates?v | grep wazuh

Güvenlik Hatırlatmaları

  • Varsayılan demo şifreleri (admin/admin, kibanaserver/kibanaserver) mutlaka değiştirin
  • internal_users.yml‘deki tüm kullanıcıların hash’lerini güncelleyin
  • Filebeat keystore’daki şifreyi admin şifresiyle senkron tutun
  • Upgrade öncesi /etc/wazuh-indexer/opensearch-security/ dizininin yedeğini alın

Kaynaklar


Bu makale gerçek bir upgrade sorun giderme sürecinden derlenmiştir.

0 Votes: 0 Upvotes, 0 Downvotes (0 Points)

Leave a reply

Bu site istenmeyenleri azaltmak için Akismet kullanır. Yorum verilerinizin nasıl işlendiğini öğrenin.

Previous Post

Next Post

Loading Next Post...
Takip et
Search Trending
Popüler
Loading

Signing-in 3 seconds...

Signing-up 3 seconds...