install-wazuh

Cara Install Wazuh di Ubuntu 24.04

Dalam tutorial ini, Sobat server akan mempelajari cara install Wazuh di Ubuntu 24.04. Platform Wazuh menawarkan fungsionalitas XDR dan SIEM yang ditujukan untuk melindungi beban kerja cloud, container, dan server sobat server. Kemampuan ini mencakup analisis data log, deteksi intrusi dan malware, pemantauan integritas file, penilaian konfigurasi, identifikasi kerentanan, dan memastikan kepatuhan terhadap standar regulasi.

Kemampuan SIEM Wazuh

Wazuh dapat digunakan untuk memantau endpoint, layanan cloud, dan kontainer, serta untuk mengumpulkan dan menganalisis data dari sumber eksternal. Wazuh menyediakan kemampuan berikut :

  • Analisis Keamanan
  • Deteksi Penyerangan
  • Analisis Data Log
  • Pemantauan Integritas File
  • Deteksi Kerentanan
  • Penilaian Konfigurasi
  • Respon Insiden
  • Pemantauan Keamanan Cloud
  • Keamanan Kontainer

Komponen Utama Server SIEM Wazuh

Sobat server perlu mengetahui Server SIEM Wazuh terdiri dari berbagai komponen;

  • Wazuh Indexer : Ini adalah mesin pencarian dan analitik teks lengkap yang sangat scalable yang mengindeks dan menyimpan peringatan yang dihasilkan oleh server Wazuh dan menyediakan kemampuan pencarian dan analitik data yang realtime. Wazuh indexer adalah bagian open source dari OpenSearch . Ia dapat diinstal pada node yang sama dengan server dan dasbor Wazuh atau pada node individual jika sobat server menggunakan pengaturan terdistribusi.
  • Server Wazuh : Server Wazuh menganalisis data yang diterima dari agen Wazuh, dapat membuat peringatan saat ancaman. Server ini juga digunakan untuk mengelola konfigurasi agen dari jarak jauh dan memantau statusnya.
  • Wazuh Dashboard : Menyediakan antarmuka web yang intuitif, menganalisis, dan memvisualisasikan data keamanan. Menyediakan dasbor siap pakai, yang memungkinkan sobat server menavigasi antarmuka pengguna dengan lancar.
  • Agen Wazuh . Agen ini dipasang dan dijalankan pada titik akhir yang ingin dipantau sobat server. Agen ini berkomunikasi dengan server Wazuh, mengirimkan data secara real-time melalui jalur yang terenkripsi dan terautentikasi.

Requirement Hardware Wazuh

Setiap komponen server Wazuh SIEM memerlukan spesifikasi perangkat keras sistem yang berbeda agar dapat berfungsi optimal.

Berikut ini persyaratan minimum dan yang direkomendasikan

  • Wazuh indexer:
    • Minimal: RAM 4 GB, 2 inti CPU
    • Direkomendasikan: RAM 16 GB, 8 inti CPU
    • Disk : 20GB
  • Server Wazuh:
    • Minimal: RAM 2 GB, 2 inti CPU
    • Disarankan: RAM 4 GB, 8 inti CPU
    • Disk : 20GB
  • Dasbor Wazuh:
    • Minimal: RAM 4 GB, 2 inti CPU
    • Disarankan: RAM 8 GB, 4 inti CPU
    • Disk: 20GB

Dalam tutorial ini, kita akan memasang komponen utama Wazuh pada satu node. Berikut spesifikasi perangkat keras sistem kita.

Memori RAM: 16 GB

free -h
               total        used        free      shared  buff/cache   available
Mem:            15Gi       3.9Gi        10Gi       1.2Mi       1.2Gi        11Gi
Swap:          2.0Gi          0B       2.0Gi

Inti CPU:

nproc --all
8

disk;

df -hT -P /
Filesystem                        Type  Size  Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv ext4   98G  7.6G   86G   9% /

Selanjutnya, lanjutkan dengan menginstal server Wazuh SIEM. Seperti yang telah disebutkan, kita akan menginstal penyebaran node tunggal dengan Wazuh indexer, Wazuh SIEM, dan dasbor Wazuh.

Instal Wazuh Indexer di Ubuntu 24.04

Instal Repositori Wazuh di Ubuntu 24.04

Untuk menjalankan instalasi komponen Wazuh SIEM dengan lancar di Ubuntu 24.04, sobat server perlu menginstal repositori Wazuh.

Jadi, untuk memulainya, instal key GPG repositori Wazuh di Ubuntu 24.04.

sudo su -
apt install gnupg apt-transport-https
curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | \
gpg --dearmor > /etc/apt/trusted.gpg.d/wazuh.gpg

Instal repositori Wazuh 4.x;

echo "deb https://packages.wazuh.com/4.x/apt stable main" > /etc/apt/sources.list.d/wazuh.list

Instal Wazuh Indexer di Ubuntu 24.04

Perbarui cache paket;

apt update

Selanjutnya, instal server Wazuh SIEM.

apt install wazuh-indexer

Buat Sertifikat SSL/TLS Wazuh

Buat sertifikat SSL/TLS yang akan digunakan untuk mengenkripsi komunikasi antara komponen Wazuh SIEM.

Wazuh menyediakan beberapa alat yang dapat digunakan untuk membuat sertifikat.

Ganti nilai VER di bawah ini dengan versi rilis utama Wazuh saat ini;

VER=4.7

Kemudian, unduh alat yang diperlukan untuk membuat sertifikat;

wget https://packages.wazuh.com/${VER}/wazuh-certs-tool.sh

Unduh berkas konfigurasi yang membantu sobat server menentukan alamat IP dan nama setiap node Wazuh.

wget https://packages.wazuh.com/${VER}/config.yml

Secara default, seperti inilah tampilan konfigurasinya;

cat config.yml
nodes:
  # Wazuh indexer nodes
  indexer:
    - name: node-1
      ip: "<indexer-node-ip>"
    #- name: node-2
    #  ip: "<indexer-node-ip>"
    #- name: node-3
    #  ip: "<indexer-node-ip>"

  # Wazuh server nodes
  # If there is more than one Wazuh server
  # node, each one must have a node_type
  server:
    - name: wazuh-1
      ip: "<wazuh-manager-ip>"
    #  node_type: master
    #- name: wazuh-2
    #  ip: "<wazuh-manager-ip>"
    #  node_type: worker
    #- name: wazuh-3
    #  ip: "<wazuh-manager-ip>"
    #  node_type: worker

  # Wazuh dashboard nodes
  dashboard:
    - name: dashboard
      ip: "<dashboard-node-ip>"

Sobat server dapat mengedit berkas konfigurasi dan mengganti nama node dan alamat IP dengan nama dan IP/nama host sobat server masing-masing berdasarkan arsitektur sobat server.

Karena kita menjalankan cluster node tunggal server Wazuh SIEM, seperti inilah tampilan config.yml akhir kita

cat config.yml
nodes:
  # Wazuh indexer nodes
  indexer:
    - name: indexer
      ip: "192.168.122.149"
  # Wazuh server nodes
  server:
    - name: wazuh
      ip: "192.168.122.149"

  # Wazuh dashboard nodes
  dashboard:
    - name: dash
      ip: "192.168.122.149"

Simpan file konfigurasi yang diperbarui dan buat sertifikat SSL/TLS untuk komponen Wazuh menggunakan skrip wazuh-certs-tool.sh .

bash ./wazuh-certs-tool.sh -A

Opsi -A atau –all memungkinkan pembuatan semua perintah.

Contoh Output;

29/02/2024 17:06:03 INFO: Admin certificates created.
29/02/2024 17:06:03 INFO: Wazuh indexer certificates created.
29/02/2024 17:06:04 INFO: Wazuh server certificates created.
29/02/2024 17:06:04 INFO: Wazuh dashboard certificates created.

Sobat server dapat melihat pilihan lain menggunakan;

bash wazuh-certs-tool.sh --help

Sertifikat yang dihasilkan ditempatkan di bawah direktori wazuh-certificates yang dibuat di direktori kerja saat ini.

ls -1 wazuh-certificates
admin-key.pem
admin.pem
dash-key.pem
dash.pem
indexer-key.pem
indexer.pem
root-ca.key
root-ca.pem
wazuh-key.pem
wazuh.pem

Konfigurasikan Wazuh Indexer di Ubuntu 24.04

Karena kita menjalankan satu node Wazuh, hanya ada beberapa hal yang akan kami perbarui pada konfigurasi pengindeks Wazuh.

Konfigurasi pengindeks Wazuh default adalah /etc/wazuh-indexer/opensearch.yml.

Seperti inilah tampilannya secara default;

cat /etc/wazuh-indexer/opensearch.yml
network.host: "0.0.0.0"
node.name: "node-1"
cluster.initial_master_nodes:
- "node-1"
#- "node-2"
#- "node-3"
cluster.name: "wazuh-cluster"
#discovery.seed_hosts:
#  - "node-1-ip"
#  - "node-2-ip"
#  - "node-3-ip"
node.max_local_storage_nodes: "3"
path.data: /var/lib/wazuh-indexer
path.logs: /var/log/wazuh-indexer

plugins.security.ssl.http.pemcert_filepath: /etc/wazuh-indexer/certs/indexer.pem
plugins.security.ssl.http.pemkey_filepath: /etc/wazuh-indexer/certs/indexer-key.pem
plugins.security.ssl.http.pemtrustedcas_filepath: /etc/wazuh-indexer/certs/root-ca.pem
plugins.security.ssl.transport.pemcert_filepath: /etc/wazuh-indexer/certs/indexer.pem
plugins.security.ssl.transport.pemkey_filepath: /etc/wazuh-indexer/certs/indexer-key.pem
plugins.security.ssl.transport.pemtrustedcas_filepath: /etc/wazuh-indexer/certs/root-ca.pem
plugins.security.ssl.http.enabled: true
plugins.security.ssl.transport.enforce_hostname_verification: false
plugins.security.ssl.transport.resolve_hostname: false

plugins.security.authcz.admin_dn:
- "CN=admin,OU=Wazuh,O=Wazuh,L=California,C=US"
plugins.security.check_snapshot_restore_write_privileges: true
plugins.security.enable_snapshot_restore_privilege: true
plugins.security.nodes_dn:
- "CN=node-1,OU=Wazuh,O=Wazuh,L=California,C=US"
#- "CN=node-2,OU=Wazuh,O=Wazuh,L=California,C=US"
#- "CN=node-3,OU=Wazuh,O=Wazuh,L=California,C=US"
plugins.security.restapi.roles_enabled:
- "all_access"
- "security_rest_api_access"

plugins.security.system_indices.enabled: true
plugins.security.system_indices.indices: [".plugins-ml-model", ".plugins-ml-task", ".opendistro-alerting-config", ".opendistro-alerting-alert*", ".opendistro-anomaly-results*", ".opendistro-anomaly-detector*", ".opendistro-anomaly-checkpoints", ".opendistro-anomaly-detection-state", ".opendistro-reports-*", ".opensearch-notifications-*", ".opensearch-notebooks", ".opensearch-observability", ".opendistro-asynchronous-search-response*", ".replication-metadata-store"]

### Option to allow Filebeat-oss 7.10.2 to work ###
compatibility.override_main_response_version: true

Seperti yang telah disebutkan, untuk satu node, hanya ada beberapa perubahan yang akan kita buat di sini:

  • network.host : Kami akan membiarkan pengaturan default untuk mengizinkan pengindeks Wazuh mendengarkan semua antarmuka untuk koneksi HTTP dan Transport (jika kami memiliki kluster).
  • node.name : Ditetapkan ke nama pengindeks seperti yang ditentukan config.yml yang digunakan dalam menghasilkan sertifikat SSL/TLS.
  • cluster.initial_master_nodes : digunakan selama penyiapan awal kluster untuk mengidentifikasi node yang memenuhi syarat untuk menjadi master. Ini lebih relevan saat menjalankan kluster multi-node. Nilai pengaturan ini harus sama persis dengan  nilai node.name berdasarkan arsitektur kluster sobat server.
  • cluster.name : menentukan nama cluster. sobat server dapat membiarkannya default atau menentukan nama sobat server sendiri.
  • plugins.security.nodes_dn : Pengaturan ini digunakan untuk menentukan Distinguished Names (DN) dari node yang diizinkan untuk bergabung dengan kluster. sobat server dapat memperoleh nilai tersebut menggunakan perintah openssl;

sobat server bisa mendapatkan DN menggunakan perintah di bawah ini;

openssl x509 -noout -subject -in wazuh-certificates/indexer.pem
subject=C = US, L = California, O = Wazuh, OU = Wazuh, CN = indexer

Seperti inilah tampilan konfigurasi pengindeks Wazuh kami yang telah diperbarui;

cat /etc/wazuh-indexer/opensearch.yml
network.host: "0.0.0.0"
node.name: "indexer"
cluster.initial_master_nodes:
- "indexer"
cluster.name: "wazuh-cluster"
node.max_local_storage_nodes: "3"
path.data: /var/lib/wazuh-indexer
path.logs: /var/log/wazuh-indexer

plugins.security.ssl.http.pemcert_filepath: /etc/wazuh-indexer/certs/indexer.pem
plugins.security.ssl.http.pemkey_filepath: /etc/wazuh-indexer/certs/indexer-key.pem
plugins.security.ssl.http.pemtrustedcas_filepath: /etc/wazuh-indexer/certs/root-ca.pem
plugins.security.ssl.transport.pemcert_filepath: /etc/wazuh-indexer/certs/indexer.pem
plugins.security.ssl.transport.pemkey_filepath: /etc/wazuh-indexer/certs/indexer-key.pem
plugins.security.ssl.transport.pemtrustedcas_filepath: /etc/wazuh-indexer/certs/root-ca.pem
plugins.security.ssl.http.enabled: true
plugins.security.ssl.transport.enforce_hostname_verification: false
plugins.security.ssl.transport.resolve_hostname: false

plugins.security.authcz.admin_dn:
- "CN=admin,OU=Wazuh,O=Wazuh,L=California,C=US"
plugins.security.check_snapshot_restore_write_privileges: true
plugins.security.enable_snapshot_restore_privilege: true
plugins.security.nodes_dn:
- "CN=indexer,OU=Wazuh,O=Wazuh,L=California,C=US"
plugins.security.restapi.roles_enabled:
- "all_access"
- "security_rest_api_access"

plugins.security.system_indices.enabled: true
plugins.security.system_indices.indices: [".plugins-ml-model", ".plugins-ml-task", ".opendistro-alerting-config", ".opendistro-alerting-alert*", ".opendistro-anomaly-results*", ".opendistro-anomaly-detector*", ".opendistro-anomaly-checkpoints", ".opendistro-anomaly-detection-state", ".opendistro-reports-*", ".opensearch-notifications-*", ".opensearch-notebooks", ".opensearch-observability", ".opendistro-asynchronous-search-response*", ".replication-metadata-store"]

compatibility.override_main_response_version: true

Berikutnya, salin sertifikat SSL/TLS yang dihasilkan untuk pengindeks Wazuh serta sertifikat/kunci Admin ke direktori sertifikat seperti yang didefinisikan dalam berkas konfigurasi /etc/wazuh-indexer/opensearch.yml .

plugins.security.ssl.http.pemcert_filepath: /etc/wazuh-indexer/certs/indexer.pem
plugins.security.ssl.http.pemkey_filepath: /etc/wazuh-indexer/certs/indexer-key.pem
plugins.security.ssl.http.pemtrustedcas_filepath: /etc/wazuh-indexer/certs/root-ca.pem
plugins.security.ssl.transport.pemcert_filepath: /etc/wazuh-indexer/certs/indexer.pem
plugins.security.ssl.transport.pemkey_filepath: /etc/wazuh-indexer/certs/indexer-key.pem
plugins.security.ssl.transport.pemtrustedcas_filepath: /etc/wazuh-indexer/certs/root-ca.pem

Jadi, buat direktori dan salin sertifikat;

mkdir /etc/wazuh-indexer/certs/
cp wazuh-certificates/{root-ca.pem,indexer.pem,indexer-key.pem,admin.pem,admin-key.pem} /etc/wazuh-indexer/certs/

Sekarang akan terlihat seperti;

ls -1 /etc/wazuh-indexer/certs/*
/etc/wazuh-indexer/certs/admin-key.pem
/etc/wazuh-indexer/certs/admin.pem
/etc/wazuh-indexer/certs/indexer-key.pem
/etc/wazuh-indexer/certs/indexer.pem
/etc/wazuh-indexer/certs/root-ca.pem

Perbarui izin dan tetapkan kepemilikan sertifikat SSL/TLS ke wazuh-indexer;

chmod 500 /etc/wazuh-indexer/certs
chmod 400 /etc/wazuh-indexer/certs/*
chown -R wazuh-indexer: /etc/wazuh-indexer/certs

Memulai dan Menginisialisasi Wazuh Indexer Cluster

Sobat Server sekarang dapat memulai dan mengaktifkan pengindeks Wazuh untuk berjalan saat sistem dinyalakan. Pastikan tidak ada layanan yang mendengarkan di port 9200/tcp.

systemctl enable --now wazuh-indexer
systemctl status wazuh-indexer
● wazuh-indexer.service - Wazuh-indexer
     Loaded: loaded (/usr/lib/systemd/system/wazuh-indexer.service; enabled; preset: enabled)
     Active: active (running) since Thu 2024-02-29 17:45:06 UTC; 25s ago
       Docs: https://documentation.wazuh.com
   Main PID: 5400 (java)
      Tasks: 90 (limit: 18952)
     Memory: 1.3G (peak: 1.3G)
        CPU: 23.804s
     CGroup: /system.slice/wazuh-indexer.service
             └─5400 /usr/share/wazuh-indexer/jdk/bin/java -Xshare:auto -Dopensearch.networkaddress.cache.ttl=60 -Dopensearch.networkaddress.cache.negative.ttl=10 -XX:+Alway>

Feb 29 17:44:59 elk.kifarunix-demo.com systemd[1]: Starting wazuh-indexer.service - Wazuh-indexer...
Feb 29 17:45:00 elk.kifarunix-demo.com systemd-entrypoint[5400]: WARNING: A terminally deprecated method in java.lang.System has been called
Feb 29 17:45:00 elk.kifarunix-demo.com systemd-entrypoint[5400]: WARNING: System::setSecurityManager has been called by org.opensearch.bootstrap.OpenSearch (file:/usr/share>
Feb 29 17:45:00 elk.kifarunix-demo.com systemd-entrypoint[5400]: WARNING: Please consider reporting this to the maintainers of org.opensearch.bootstrap.OpenSearch
Feb 29 17:45:00 elk.kifarunix-demo.com systemd-entrypoint[5400]: WARNING: System::setSecurityManager will be removed in a future release
Feb 29 17:45:00 elk.kifarunix-demo.com systemd-entrypoint[5400]: WARNING: A terminally deprecated method in java.lang.System has been called
Feb 29 17:45:00 elk.kifarunix-demo.com systemd-entrypoint[5400]: WARNING: System::setSecurityManager has been called by org.opensearch.bootstrap.Security (file:/usr/share/w>
Feb 29 17:45:00 elk.kifarunix-demo.com systemd-entrypoint[5400]: WARNING: Please consider reporting this to the maintainers of org.opensearch.bootstrap.Security
Feb 29 17:45:00 elk.kifarunix-demo.com systemd-entrypoint[5400]: WARNING: System::setSecurityManager will be removed in a future release
Feb 29 17:45:06 elk.kifarunix-demo.com systemd[1]: Started wazuh-indexer.service - Wazuh-indexer.

Berikutnya, jalankan skrip “ /usr/share/wazuh-indexer/bin/indexer-security-init.sh ” pada node pengindeks Wazuh untuk menerapkan informasi sertifikat yang diperbarui dan memulai kluster node tunggal.

/usr/share/wazuh-indexer/bin/indexer-security-init.sh
**************************************************************************
** This tool will be deprecated in the next major release of OpenSearch **
** https://github.com/opensearch-project/security/issues/1755           **
**************************************************************************
Security Admin v7
Will connect to 127.0.0.1:9200 ... done
Connected as "CN=admin,OU=Wazuh,O=Wazuh,L=California,C=US"
OpenSearch Version: 2.8.0
Contacting opensearch cluster 'opensearch' and wait for YELLOW clusterstate ...
Clustername: wazuh-cluster
Clusterstate: GREEN
Number of nodes: 1
Number of data nodes: 1
.opendistro_security index does not exists, attempt to create it ... done (0-all replicas)
Populate config from /etc/wazuh-indexer/opensearch-security/
Will update '/config' with /etc/wazuh-indexer/opensearch-security/config.yml 
   SUCC: Configuration for 'config' created or updated
Will update '/roles' with /etc/wazuh-indexer/opensearch-security/roles.yml 
   SUCC: Configuration for 'roles' created or updated
Will update '/rolesmapping' with /etc/wazuh-indexer/opensearch-security/roles_mapping.yml 
   SUCC: Configuration for 'rolesmapping' created or updated
Will update '/internalusers' with /etc/wazuh-indexer/opensearch-security/internal_users.yml 
   SUCC: Configuration for 'internalusers' created or updated
Will update '/actiongroups' with /etc/wazuh-indexer/opensearch-security/action_groups.yml 
   SUCC: Configuration for 'actiongroups' created or updated
Will update '/tenants' with /etc/wazuh-indexer/opensearch-security/tenants.yml 
   SUCC: Configuration for 'tenants' created or updated
Will update '/nodesdn' with /etc/wazuh-indexer/opensearch-security/nodes_dn.yml 
   SUCC: Configuration for 'nodesdn' created or updated
Will update '/whitelist' with /etc/wazuh-indexer/opensearch-security/whitelist.yml 
   SUCC: Configuration for 'whitelist' created or updated
Will update '/audit' with /etc/wazuh-indexer/opensearch-security/audit.yml 
   SUCC: Configuration for 'audit' created or updated
Will update '/allowlist' with /etc/wazuh-indexer/opensearch-security/allowlist.yml 
   SUCC: Configuration for 'allowlist' created or updated
SUCC: Expected 10 config types for node {"updated_config_types":["allowlist","tenants","rolesmapping","nodesdn","audit","roles","whitelist","internalusers","actiongroups","config"],"updated_config_size":10,"message":null} is 10 (["allowlist","tenants","rolesmapping","nodesdn","audit","roles","whitelist","internalusers","actiongroups","config"]) due to: null
Done with success

Pengindeks Wazuh (opensearch) sekarang seharusnya sudah berjalan. Konfirmasikan port-portnya;

ss -atlnp | grep -E "92|93"

DENGARKAN 0 4096 *:9200 *:* pengguna:((“java”,pid=5400,fd=565)) DENGARKAN 0 4096 *:9300 *:* pengguna:((“java”,pid=5400,fd=563))

Atau;

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

Saat diminta kata sandi, defaultnya adalah admin .

Enter host password for user 'admin':
{
  "name" : "indexer",
  "cluster_name" : "wazuh-cluster",
  "cluster_uuid" : "m5qZ7M3xRdaJ-t9X5AlL0Q",
  "version" : {
    "number" : "7.10.2",
    "build_type" : "rpm",
    "build_hash" : "db90a415ff2fd428b4f7b3f800a51dc229287cb4",
    "build_date" : "2023-06-03T06:24:25.112415503Z",
    "build_snapshot" : false,
    "lucene_version" : "9.6.0",
    "minimum_wire_compatibility_version" : "7.10.0",
    "minimum_index_compatibility_version" : "7.0.0"
  },
  "tagline" : "The OpenSearch Project: https://opensearch.org/"
}

Instal Wazuh Server/Manager di Ubuntu 24.04

Karena sobat server sudah menginstal repositori Wazuh, cukup jalankan perintah di bawah ini untuk menginstal server Wazuh di Ubuntu 24.04.

apt install wazuh-manager

Setelah instalasi selesai, sobat server dapat memulai dan mengaktifkan Wazuh-manager untuk berjalan saat sistem boot;

systemctl enable --now wazuh-manager

Buka Port Wazuh Manager di Firewall. Biasanya, agen Wazuh diatur untuk berkomunikasi dengan manajer Wazuh melalui port TCP 1514 secara default.

ss -alnptu | grep -i wazuh
tcp   LISTEN 0      128                   0.0.0.0:1514       0.0.0.0:*    users:(("wazuh-remoted",pid=49410,fd=4))               
tcp   LISTEN 0      128                   0.0.0.0:1515       0.0.0.0:*    users:(("wazuh-authd",pid=49236,fd=3))

Jadi, buka port 1514/tcp pada Wazuh manager.

iptables -A INPUT -p tcp --dport 1514 -j ACCEPT

Atau

ufw allow 1514/tcp

Izinkan juga port 1515/tcp untuk pendaftaran agen;

iptables -A INPUT -p tcp --dport 1515 -j ACCEPT

Atau

ufw allow 1515/tcp

Baca selengkapnya tentang port yang diperlukan .

Instal dan Konfigurasikan Filebeat untuk Wazuh Manager

Instal Filebeat

Filebeat diharuskan mengirimkan log dan data kejadian ke pengindeks Wazuh, tempat data tersebut diindeks dan disimpan untuk pencarian dan analisis yang efisien.

Pada saat tulisan ini dibuat, pengindeks Wazuh v4.7.2 kompatibel dengan Filebeat-OSS 7.10.2 yang disediakan oleh repositori Wazuh.

apt-cache policy filebeat
filebeat:
  Installed: (none)
  Candidate: 7.10.2
  Version table:
     7.10.2 500
        500 https://packages.wazuh.com/4.x/apt stable/main amd64 Packages
     7.10.0 500
        500 https://packages.wazuh.com/4.x/apt stable/main amd64 Packages
     7.9.1 500
        500 https://packages.wazuh.com/4.x/apt stable/main amd64 Packages

Jadi, instal Filebeat menggunakan perintah di bawah ini;

apt install filebeat

Konfigurasikan Filebeat

Setelah instalasi selesai, buat cadangan file konfigurasi default

mv /etc/filebeat/filebeat.yml{,.stock}

Jalankan perintah di bawah ini untuk membuat file konfigurasi Filebeat baru dengan konfigurasi berikut.

cat > /etc/filebeat/filebeat.yml << 'EOL'
output.elasticsearch:
  hosts: ["192.168.122.149:9200"]
  protocol: https
  username: admin
  password: admin
  ssl.certificate_authorities: "/etc/filebeat/certs/root-ca.pem"
  ssl.certificate: "/etc/filebeat/certs/filebeat.pem"
  ssl.key: "/etc/filebeat/certs/filebeat-key.pem"
setup.template.json.enabled: true
setup.template.json.path: '/etc/filebeat/wazuh-template.json'
setup.template.json.name: 'wazuh'
setup.ilm.overwrite: true
setup.ilm.enabled: false

filebeat.modules:
  - module: wazuh
    alerts:
      enabled: true
    archives:
      enabled: false
logging.level: info
logging.to_files: true
logging.files:
  path: /var/log/filebeat
  name: filebeat
  keepfiles: 7
  permissions: 0644
logging.metrics.enabled: false

seccomp:
  default_action: allow
  syscalls:
  - action: allow
    names:
    - rseq
EOL

Catatan, alamat IP yang digunakan pada pengaturan host harus sesuai dengan yang ditetapkan saat membuat sertifikat ssl.

Sobat server dapat menggunakan penyimpanan kunci Filebeat untuk menyimpan kredensial dalam variabel, bukan teks biasa seperti dalam konfigurasi di atas.

Untuk menyimpan kredensial dalam keystore, buat keystore;

filebeat keystore create

Simpan nama pengguna dan kata sandi di keystore menggunakan variabel;

Kedua perintah akan meminta sobat server mengetikkan nilai setiap variabel.

filebeat keystore add USERNAME
filebeat keystore add PASS

sobat server kemudian dapat memperbarui kredensial pada filebeat.yml dengan mengubah;

  username: admin
  password: admin

ke;

  username: ${USERNAME}
  password: ${PASS}

Berikutnya, instal sertifikat server CA Wazuh root yang dibuat sebelumnya untuk digunakan oleh Filebeat;

mkdir /etc/filebeat/certs/

Salin sertifikat node server Wazuh ( file cert diberi nama sesuai nama node Wazuh yang diberikan dalam certs config.yml ) dan ganti namanya seperti yang ditetapkan dalam filebeat.yml;

cp wazuh-certificates/root-ca.pem /etc/filebeat/certs/root-ca.pem
cp wazuh-certificates/wazuh.pem /etc/filebeat/certs/filebeat.pem
cp wazuh-certificates/wazuh-key.pem /etc/filebeat/certs/filebeat-key.pem

Instal Modul Filebeat Wazuh:

wget -qO- https://packages.wazuh.com/4.x/filebeat/wazuh-filebeat-0.3.tar.gz \
| tar -xz -C /usr/share/filebeat/module/

Unduh dan instal templat pengindeks Wazuh dari cabang rilis terkini repo Github ( v4.7.2 pada saat tulisan ini dibuat ):

wget -O /etc/filebeat/wazuh-template.json \
https://raw.githubusercontent.com/wazuh/wazuh/v4.7.2/extensions/elasticsearch/7.x/wazuh-template.json
chmod go+r /etc/filebeat/wazuh-template.json

Uji konfigurasi Filebeat;

filebeat test config
Config OK

Uji output Filebeat Elasticsearch;

filebeat test output
elasticsearch: https://192.168.122.149:9200...
  parse url... OK
  connection...
    parse host... OK
    dns lookup... OK
    addresses: 192.168.122.149
    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

Mulai dan aktifkan Filebeat untuk berjalan saat sistem boot;

systemctl enable --now filebeat

Periksa status;

systemctl status filebeat

Semuanya sekarang telah diatur untuk kluster server Wazuh SIEM node tunggal.

Instal Wazuh Dashboard di Ubuntu 24.04

Karena sobat server sudah menginstal repositori Wazuh, jalankan saja perintah di bawah ini untuk menginstal dasbor Wazuh.

apt install wazuh-dashboard

Konfigurasikan dasbor Wazuh untuk mengizinkan akses eksternal dan menghubungkannya ke pengindeks Wazuh.

Berkas konfigurasi default untuk dasbor Wazuh adalah /etc/wazuh-dashboard/opensearch_dashboards.yml.

Kami hanya akan memperbarui alamat pengindeks Wazuh;

vim /etc/wazuh-dashboard/opensearch_dashboards.yml
server.host: 0.0.0.0
server.port: 443
opensearch.hosts: https://192.168.122.149:9200
opensearch.ssl.verificationMode: certificate
#opensearch.username:
#opensearch.password:
opensearch.requestHeadersAllowlist: ["securitytenant","Authorization"]
opensearch_security.multitenancy.enabled: false
opensearch_security.readonly_mode.roles: ["kibana_read_only"]
server.ssl.enabled: true
server.ssl.key: "/etc/wazuh-dashboard/certs/dashboard-key.pem"
server.ssl.certificate: "/etc/wazuh-dashboard/certs/dashboard.pem"
opensearch.ssl.certificateAuthorities: ["/etc/wazuh-dashboard/certs/root-ca.pem"]
uiSettings.overrides.defaultRoute: /app/wazuh

Simpan dan keluar dari berkas.

Instal sertifikat dasbor Wazuh.

mkdir /etc/wazuh-dashboard/certs/
cp wazuh-certificates/dash.pem /etc/wazuh-dashboard/certs/dashboard.pem
cp wazuh-certificates/dash-key.pem /etc/wazuh-dashboard/certs/dashboard-key.pem
cp wazuh-certificates/root-ca.pem /etc/wazuh-dashboard/certs/

Perbarui izin dan tetapkan kepemilikan sertifikat SSL/TLS ke wazuh-indexer;

chmod 500 /etc/wazuh-dashboard/certs
chmod 400 /etc/wazuh-dashboard/certs/*
chown -R wazuh-dashboard: /etc/wazuh-dashboard/certs

Mulai dan aktifkan dasbor Wazuh untuk berjalan saat sistem boot;

systemctl enable --now wazuh-dashboard

Memeriksa status setiap layanan;

systemctl status wazuh-dashboard
● wazuh-dashboard.service - wazuh-dashboard
     Loaded: loaded (/etc/systemd/system/wazuh-dashboard.service; enabled; preset: enabled)
     Active: active (running) since Thu 2024-02-29 19:48:44 UTC; 3s ago
   Main PID: 52149 (node)
      Tasks: 11 (limit: 18952)
     Memory: 231.0M (peak: 237.4M)
        CPU: 3.867s
     CGroup: /system.slice/wazuh-dashboard.service
             └─52149 /usr/share/wazuh-dashboard/node/bin/node --no-warnings --max-http-header-size=65536 --unhandled-rejections=warn /usr/share/wazuh-dashboard/src/cli/dist>

Feb 29 19:48:46 elk.kifarunix-demo.com opensearch-dashboards[52149]: {"type":"log","@timestamp":"2024-02-29T19:48:46Z","tags":["info","savedobjects-service"],"pid":52149,"m>
Feb 29 19:48:47 elk.kifarunix-demo.com opensearch-dashboards[52149]: {"type":"log","@timestamp":"2024-02-29T19:48:47Z","tags":["info","savedobjects-service"],"pid":52149,"m>
Feb 29 19:48:47 elk.kifarunix-demo.com opensearch-dashboards[52149]: {"type":"log","@timestamp":"2024-02-29T19:48:47Z","tags":["info","savedobjects-service"],"pid":52149,"m>
Feb 29 19:48:47 elk.kifarunix-demo.com opensearch-dashboards[52149]: {"type":"log","@timestamp":"2024-02-29T19:48:47Z","tags":["info","savedobjects-service"],"pid":52149,"m>
Feb 29 19:48:47 elk.kifarunix-demo.com opensearch-dashboards[52149]: {"type":"log","@timestamp":"2024-02-29T19:48:47Z","tags":["info","savedobjects-service"],"pid":52149,"m>
Feb 29 19:48:47 elk.kifarunix-demo.com opensearch-dashboards[52149]: {"type":"log","@timestamp":"2024-02-29T19:48:47Z","tags":["info","plugins-system"],"pid":52149,"message>
Feb 29 19:48:47 elk.kifarunix-demo.com opensearch-dashboards[52149]: {"type":"log","@timestamp":"2024-02-29T19:48:47Z","tags":["listening","info"],"pid":52149,"message":"Se>
Feb 29 19:48:47 elk.kifarunix-demo.com opensearch-dashboards[52149]: {"type":"log","@timestamp":"2024-02-29T19:48:47Z","tags":["info","http","server","OpenSearchDashboards">
Feb 29 19:48:47 elk.kifarunix-demo.com opensearch-dashboards[52149]: {"type":"log","@timestamp":"2024-02-29T19:48:47Z","tags":["error","opensearch","data"],"pid":52149,"mes>
Feb 29 19:48:47 elk.kifarunix-demo.com opensearch-dashboards[52149]: {"type":"log","@timestamp":"2024-02-29T19:48:47Z","tags":["error","opensearch","data"],"pid":52149,...

Mengakses Interface Web Dasbor Wazuh

Buka dashboard Wazuh di Firewall;

ufw allow 443/tcp

Sobat Server sekarang dapat mengakses dasbor Wazuh melalui url  https://<server-IP-or-hostname>.

Terima peringatan sertifikat SSL yang ditandatangani sendiri dan lanjutkan ke dasbor Wazuh.

Kredensial default adalah admin/admin untuk pengguna dan kata sandi.

sobat server akan diarahkan di dashboard agen Wazuh.

Tidak ada agen yang terhubung secara default. Namun, seharusnya ada beberapa data default yang sudah dikumpulkan dari manajer Wazuh.

Selesai!! sobat server telah berhasil menyiapkan server Wazuh SIEM yang terintegrasi dengan pengindeks Wazuh dan dasbor Wazuh.

Sobat server sekarang dapat melanjutkan dan menginstal agen Wazuh dan memulai pengumpulan log dari endpoint yang diinginkan

Leave a Reply

Your email address will not be published. Required fields are marked *

Back To Top