Dağıtım
Gerekli servisleri ve pod'ları dağıtmak için bu deponun klonunu oluşturun.
git clone https://github.com/wazuh/wazuh-kubernetes.git -b v4.9.2 --depth=1
cd wazuh-kubernetesSSL Sertifikalarını Kurun
Wazuh dizinleyici kümesi için kendi kendine imzalı sertifikaları adresindeki betiği kullanarak üretebilir wazuh/certs/indexer_cluster/generate_certs.shveya kendi betiğinizi sağlayabilirsiniz.
Wazuh panosu kümesi için kendi imzalı sertifikaları adresindeki betiği kullanarak üretebilir wazuh/certs/dashboard_http/generate_certs.shveya kendi betiğinizi sağlayabilirsiniz.
Gerekli sertifikalar secretGenerator aracılığıyla şu dosyaya aktarılır kustomization.yml:
secretGenerator:
    - name: indexer-certs
      files:
        - certs/indexer_cluster/root-ca.pem
        - certs/indexer_cluster/node.pem
        - certs/indexer_cluster/node-key.pem
        - certs/indexer_cluster/dashboard.pem
        - certs/indexer_cluster/dashboard-key.pem
        - certs/indexer_cluster/admin.pem
        - certs/indexer_cluster/admin-key.pem
        - certs/indexer_cluster/filebeat.pem
        - certs/indexer_cluster/filebeat-key.pem
    - name: dashboard-certs
      files:
        - certs/dashboard_http/cert.pem
        - certs/dashboard_http/key.pem
        - certs/indexer_cluster/root-ca.pem
Depolama Sınıfını Ayarlayın (EKS Olmayan Küme İçin İsteğe Bağlı)
Çalıştırdığınız kümenin türüne bağlı olarak, Depolama Sınıfı farklı bir sağlayıcıya sahip olabilir.
Sizinkini çalıştırarak kontrol edebilirsiniz . Şuna benzer bir şey göreceksiniz:kubectl get sc
kubectl get sc
NAME                          PROVISIONER            RECLAIMPOLICY   VOLUMEBINDINGMODE   ALLOWVOLUMEEXPANSION   AGE
elk-gp2                       microk8s.io/hostpath   Delete          Immediate           false                  67d
microk8s-hostpath (default)   microk8s.io/hostpath   Delete          Immediate           false                  54dProvizyonlayıcı sütunu microk8s.io/hostpath'i gösteriyor, dosyayı düzenlemeli envs/local-env/storage-class.yaml ve bu provizyonlayıcıyı ayarlamalısınız.
Tüm Bildirimleri Kustomize Kullanarak Uygulayın
Manifest'in iki çeşidi vardır: eksve local-env. EKS kümesini kullanıyorsanız eks manifest'i kullanılmalıdır, diğer küme türleri için ise local-env manifest'i kullanılmalıdır.
Hangi bildirimi dağıtmak istediğinize bağlı olarak, yamaları düzenleyerek küme için kaynakları ayarlamak mümkündür. Her küme nesnesinin kalıcı birimleri için CPU, bellek ve depolamayı ayarlayabilirsiniz. Bu, bu yamaları kaldırarak envs/eks/veya yamaların kendilerini farklı değerlerle değiştirerek geri alınabilir.envs/local-env/kustomization.yaml
Özelleştirme dosyasını kullanarak kümeyi tek bir komutla dağıtabiliriz:
- 
EKS kümesi kubectl apply -k envs/eks/
- 
Diğer küme türleri kubectl apply -k envs/local-env/
Dağıtımın Doğrulanması
Ad alanı
kubectl get namespaces | grep wazuhwazuh         Active    12mHizmetler
kubectl get services -n wazuhNAME                  TYPE           CLUSTER-IP       EXTERNAL-IP        PORT(S)                          AGE
indexer               ClusterIP      xxx.yy.zzz.24    <none>             9200/TCP                         12m
dashboard             ClusterIP      xxx.yy.zzz.76    <none>             5601/TCP                         11m
wazuh                 LoadBalancer   xxx.yy.zzz.209   internal-a7a8...   1515:32623/TCP,55000:30283/TCP   9m
wazuh-cluster         ClusterIP      None             <none>             1516/TCP                         9m
Wazuh-indexer         ClusterIP      None             <none>             9300/TCP                         12m
wazuh-workers         LoadBalancer   xxx.yy.zzz.26    internal-a7f9...   1514:31593/TCP                   9mDağıtımlar
kubectl get deployments -n wazuhNAME             DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
wazuh-dashboard  1         1         1            1           11mDurum Kümesi
kubectl get statefulsets -n wazuhNAME                   READY   AGE
wazuh-indexer          3/3     15m
wazuh-manager-master   1/1     15m
wazuh-manager-worker   2/2     15mBaklalar
kubectl get pods -n wazuhNAME                              READY     STATUS    RESTARTS   AGE
wazuh-indexer-0                   1/1       Running   0          15m
wazuh-dashboard-f4d9c7944-httsd   1/1       Running   0          14m
wazuh-manager-master-0            1/1       Running   0          12m
wazuh-manager-worker-0-0          1/1       Running   0          11m
wazuh-manager-worker-1-0          1/1       Running   0          11mWazuh panosuna erişim
Hizmetler için alan adları oluşturduysanız, önerilen alan adını kullanarak panoya erişebilmelisiniz: https://wazuh.your-domain.com. Bulut sağlayıcıları genellikle panoya doğrudan erişim için harici bir IP adresi veya ana bilgisayar adı sağlar. Bu, hizmetleri kontrol ederek görüntülenebilir:
kubectl get services -o wide -n wazuh NAME                  TYPE           CLUSTER-IP       EXTERNAL-IP                      PORT(S)                          AGE       SELECTOR
 dashboard             LoadBalancer   xxx.xx.xxx.xxx   xxx.xx.xxx.xxx                   80:31831/TCP,443:30974/TCP       15m       app=wazuh-dashboardİsteğe bağlı : Harici IP adresine erişilemeyen yerel bir küme dağıtımında şunları kullanabilirsiniz port-forward:
kubectl -n wazuh port-forward --address <INTERFACE_IP_ADDRESS> service/dashboard 8443:443<INTERFACE_IP_ADDRESS>Kubernetes ana bilgisayarının IP adresi nerede ?
Wazuh kontrol paneline şu adresten ulaşabilirsiniz https://<INTERFACE_IP_ADDRESS>:8443: .
Varsayılan kimlik bilgileri şunlardır admin:SecretPassword: .
Wazuh Kullanıcılarının Şifresini Değiştirin
Güvenliği artırmak için Wazuh kullanıcılarının varsayılan şifresini değiştirebilirsiniz. İki tür Wazuh kullanıcısı vardır:
- 
Wazuh dizinleyici kullanıcıları 
- 
Wazuh API kullanıcıları 
Wazuh Dizinleyici Kullanıcıları
Varsayılan admin ve kibanaserver kullanıcıların şifrelerini değiştirmek için aşağıdakileri yapın.
Uyarı:  Özel kullanıcılarınız varsa, bunları internal_users.yml dosyaya ekleyin. Aksi takdirde, bu prosedürü yürütmek onları siler.
Wazuh Dashboard Oturumunuzu Kapatma
Şifre değiştirme işlemine başlamadan önce Wazuh kontrol paneli oturumunuzdan çıkış yapmanızı öneririz.
Çıkış yapmadığınız takdirde, kalıcı oturum çerezleri kullanıcı şifrelerini değiştirdikten sonra Wazuh'a erişirken hatalara neden olabilir.
Yeni birBir karmaHash ayarlamaBu başlığa kalıcı bağlantıAyarlama
- 
.wazuh-indexer-0'de bir Bash kabuğu başlatınwazuh-indexer-0.n.#kubectl exec -it wazuh-indexer-0 -n wazuh -- /bin/bash
- 
Yeni parolanızın karmasını oluşturmak için bu komutları çalıştırın. İstendiğinde, yeni parolayı girin ve Enter'a bası n .n.wazuh-indexer@wazuh-indexer-0:~$ export JAVA_HOME=/usr/share/wazuh-indexer/jdk wazuh-indexer@wazuh-indexer-0:~$ bash /usr/share/wazuh-indexer/plugins/opensearch-security/tools/hash.sh
- 
Oluşturulan hash'i kopyalayın ve Bash kabuğundan çıkın. 
- 
Dosyayı açın wazuh/indexer_stack/wazuh-indexer/indexer_conf/internal_users.yml. Şifresini değiştirdiğiniz kullanıcıya ait bloğu bulun.
- 
Karmayı değiştirin. - 
adminkullanıcı... admin: hash: "$2y$12$K/SpwjtB.wOHJ/Nc6GVRDuc1h0rM1DfvziFRNPtk27P.c4yDr9njO" reserved: true backend_roles: - "admin" description: "Demo admin user" ...
- 
kibanaserverkullanıcı... kibanaserver: hash: "$2a$12$4AcgAt3xwOWadA5s5blL6ev39OXDNhmOesEoo33eZtrq2N0YrU3H." reserved: true description: "Demo kibanaserver user" ...
 
- 
Yeni şŞifreyi ayarlamaBu başlığa kalıcı bağlantıAyarlama
Uyarı
:Yeni şifrenizde $veya & karakterlerini kullanmayın . Bu karakterler dağıtım sırasında hatalara neden olabilir.&
- 
Yeni parolanızı base64 biçiminde kodlayın. Karma değerini korumak için son satır karakteri eklemekten kaçının. Örneğin, seçeneği -nkomutlaechoaşağıdaki gibi kullanın.#echo -n "NewPassword" | base64
- 
Dizinleyici veya pano sırları yapılandırma dosyasını aşağıdaki gibi düzenleyin. Alanın değerini passwordyeni kodlanmış parolanızla değiştirin.- 
Kullanıcı şifresini değiştirmek için dosyayı admindüzenleyinwazuh/secrets/indexer-cred-secret.yaml.... apiVersion: v1 kind: Secret metadata: name: indexer-cred data: username: YWRtaW4= # string "admin" base64 encoded password: U2VjcmV0UGFzc3dvcmQ= # string "SecretPassword" base64 encoded ...
- 
Kullanıcı şifresini değiştirmek için dosyayı kibanaserverdüzenleyinwazuh/secrets/dashboard-cred-secret.yaml.... apiVersion: v1 kind: Secret metadata: name: dashboard-cred data: username: a2liYW5hc2VydmVy # string "kibanaserver" base64 encoded password: a2liYW5hc2VydmVy # string "kibanaserver" base64 encoded ...
 
- 
Değişiklikleri uygulamaBu başlığa kalıcı bağlantıUygulama
- 
Bildirim değişikliklerini uygulayın - 
EKS kümesi #kubectl apply -k envs/eks/
- 
Diğer küme türleri #kubectl apply -k envs/local-env/
 
- 
- 
Bir kez daha bash kabuğunu başlatın wazuh-indexer-0.#kubectl exec -it wazuh-indexer-0 -n wazuh -- /bin/bash
- 
Aşağıdaki değişkenleri ayarlayın: export INSTALLATION_DIR=/usr/share/wazuh-indexer CACERT=$INSTALLATION_DIR/certs/root-ca.pem KEY=$INSTALLATION_DIR/certs/admin-key.pem CERT=$INSTALLATION_DIR/certs/admin.pem export JAVA_HOME=/usr/share/wazuh-indexer/jdk 
- 
Wazuh dizinleyicisinin düzgün bir şekilde başlatılmasını bekleyin. Bekleme süresi iki ila beş dakika arasında değişebilir. Kümenin boyutuna, atanan kaynaklara ve ağın hızına bağlıdır. Ardından, securityadmin.shtüm değişiklikleri uygulamak içinbetiğiscripti çalıştırın.$bash /usr/share/wazuh-indexer/plugins/opensearch-security/tools/securityadmin.sh -cd /usr/share/wazuh-indexer/opensearch-security/ -nhnv -cacert $CACERT -cert $CERT -key $KEY -p 9200 -icl -h $NODE_NAME
- 
Bileşen kimlik bilgilerini güncellemek için tüm Wazuh yönetici bölmelerini silin. $kubectl delete -n wazuh pod/wazuh-manager-master-0 pod/wazuh-manager-worker-0 pod/wazuh-manager-worker-1
- 
Wazuh kontrol panelinde yeni kimlik bilgilerinizle giriş yapın. 
Wazuh API kullanıKullanıcılarıBu başlığa kalıcı bağlantı
Kullanıcı wazuh-wui, varsayılan olarak Wazuh API'sine bağlanacak kullanıcıdır. Parolayı değiştirmek için şu adımları izleyin.
Not
Wazuh API kullanıcıları için parola 8 ila 64 karakter uzunluğunda olmalıdır. En az bir büyük harf ve bir küçük harf, bir sayı ve bir sembol içermelidir.
- 
Yeni parolanızı base64 biçiminde kodlayın. Karma değerini korumak için son satır karakteri eklemekten kaçının. Örneğin, seçeneği -nkomutlaechoaşağıdaki gibi kullanın.#echo -n "NewPassword" | base64
- 
Dosyayı düzenleyinwazuh/secrets/wazuh-api-cred-secret.yamldosyayı düzenleyin vepasswordalanın değerini değiştirinpasswordapiVersion: v1 kind: Secret metadata: name: wazuh-api-cred namespace: wazuh data: username: d2F6dWgtd3Vp # string "wazuh-wui" base64 encoded password: UGFzc3dvcmQxMjM0LmE= # string "MyS3cr37P450r.*-" base64 encoded
- 
Manifest değişikliklerini uygulayın. #kubectl apply -k envs/eks/
- 
Wazuh panosu ve Wazuh yöneticisi ana bilgisayarı için pod'ları yeniden başlatın. 
AcentelerBu başlığa kalıcı bağlantı
Wazuh ajanları ana bilgisayarları izlemek için tasarlanmıştır. Bunları kullanmaya başlamak için:
- 
Dosyayı değiştirerek aracı kaydedin /var/ossec/etc/ossec.conf. "Taşıma protokolünü" TCP olarak değiştirin ve 'yiMANAGER_IP1514 numaralı bağlantı noktasına işaret eden hizmetin harici IP adresiyle veya bulut sağlayıcısı tarafından sağlanan ana bilgisayar adıyla değiştirin
Acentelerin kaydedilmesi hakkında daha fazla bilgi edinmek için dokümantasyonun Wazuh acente kaydı bölümüne bakın.
