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