Instal dan Setup Server Wazuh di CentOS 8/Fedora 32

Dalam tutorial ini, Anda akan belajar cara menginstal dan menyiapkan server Wazuh di CentOS 8/Fedora 32. Wazuh adalah alat sumber terbuka untuk visibilitas, deteksi keamanan, dan kepatuhan. Ini adalah cabang dari OSSEC HIDS dengan integrasi tambahan dengan stack ELK dan OpenSCAP. Stack Wazuh terdiri dari server Wazuh (manajer), stack ELK, dan agen Wazuh seperti yang ditunjukkan pada gambar di bawah ini.

Pada tulisan ini, versi saat ini adalah 4.1.

Instal dan Setup Server Wazuh di CentOS 8/Fedora 32

Server Wazuh memiliki fungsi utama agent registration, data analysis, and managing of agents.

Arsitektur Penerapan

Ada dua arsitektur penyebaran yang berbeda untuk server Wazuh ;

  • All-in-one: Server Wazuh dan Elastic Stack diinstal pada host yang sama.
  • Distributed: Setiap komponen diinstal pada host yang terpisah sebagai cluster single-node atau multi-node. Jenis penerapan ini memberikan ketersediaan dan skalabilitas produk yang tinggi, dan nyaman untuk lingkungan kerja yang besar.

Dalam tutorial ini, kita akan menggunakan All-in-one deployment architecture.

Persyaratan sistem

Lihat dokumentasi untuk persyaratan sistem yang direkomendasikan.

Instal dan Setup Server Wazuh di CentOS 8/Fedora 32

Tambahkan Wazuh ke repositori

Anda harus terlebih dahulu menambahkan repositori Wazuh ke server dengan menjalankan perintah di bawah ini.

cat > /etc/yum.repos.d/wazuh.repo << 'EOL' [wazuh_repo] gpgcheck=1 gpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH enabled=1 name=Wazuh repository baseurl=https://packages.wazuh.com/4.x/yum/ protect=1 EOL 

Impor kunci GPG repositori Wazuh

rpm --import https://packages.wazuh.com/key/GPG-KEY-WAZUH

Instal Server Wazuh di CentOS 8/Fedora 32

Jalankan perintah berikut untuk menginstal server wazuh. pada CentOS 8/Fedora 32

dnf -y install wazuh-manager

Ketika proses instalasi selesai, jalankan Wazuh Manager.

systemctl start wazuh-manager

Anda dapat memeriksa status seperti yang ditunjukkan di bawah ini;

systemctl status wazuh-manager
● wazuh-manager.service - Wazuh manager Loaded: loaded (/usr/lib/systemd/system/wazuh-manager.service; disabled; vendor preset: disabled) Active: active (running) since Sat 2021-07-10 09:40:01 EAT; 4min 33s ago Process: 2847 ExecStart=/usr/bin/env ${DIRECTORY}/bin/ossec-control start (code=exited, status=0/SUCCESS) Tasks: 104 (limit: 11388) Memory: 522.8M CGroup: /system.slice/wazuh-manager.service ├─2902 /var/ossec/framework/python/bin/python3 /var/ossec/api/scripts/wazuh-apid.py ├─2944 /var/ossec/bin/ossec-authd ├─2960 /var/ossec/bin/wazuh-db ├─2984 /var/ossec/bin/ossec-execd ├─2999 /var/ossec/bin/ossec-analysisd ├─3043 /var/ossec/bin/ossec-syscheckd ├─3060 /var/ossec/bin/ossec-remoted ├─3087 /var/ossec/bin/ossec-logcollector ├─3097 /var/ossec/bin/ossec-monitord └─3107 /var/ossec/bin/wazuh-modulesd Jul 10 09:39:53 localhost.localdomain env[2847]: Started wazuh-db... Jul 10 09:39:54 localhost.localdomain env[2847]: Started ossec-execd... Jul 10 09:39:55 localhost.localdomain env[2847]: Started ossec-analysisd... Jul 10 09:39:56 localhost.localdomain env[2847]: Started ossec-syscheckd... Jul 10 09:39:58 localhost.localdomain env[2847]: Started ossec-remoted... Jul 10 09:39:58 localhost.localdomain env[2847]: Started ossec-logcollector... Jul 10 09:39:58 localhost.localdomain env[2847]: Started ossec-monitord... Jul 10 09:39:59 localhost.localdomain env[2847]: Started wazuh-modulesd... Jul 10 09:40:01 localhost.localdomain env[2847]: Completed. Jul 10 09:40:01 localhost.localdomain systemd[1]: Started Wazuh manager. 

Untuk menghindari masalah pada kontrol versi dan pembaruan, Anda disarankan untuk menonaktifkan repositori.

 sed -i "s/enabled=1/enabled=0/" /etc/yum.repos.d/wazuh.repo

Instal Elastic Stack di CentOS 8/Fedora 32

Selanjutnya, Anda perlu menginstal Elasticsearch, Kibana, Filebeat dan Wazuh APP untuk mendapatkan hasil maksimal dari Wazuh-manager.

Sebelum melanjutkan, Anda perlu memastikan bahwa komponen Elastis yang diinstal kompatibel dengan versi Wazuh-manager yang diinstal.

Dalam demo ini, Wazuh-manager 4.1.5 diinstal:

rpm -qa wazuh-manager
wazuh-manager-4.1.5-1.x86_64

Berdasarkan matriks kompatibilitas Wazuh, Wazuh 4.1.5 kompatibel dengan Elastic 7.11.2, pada tulisan ini.

Buat Repositori Elastis

cat > /etc/yum.repos.d/elasticstack.repo << EOL [elasticsearch] name=Elasticsearch repository for 7.x packages baseurl=https://artifacts.elastic.co/packages/7.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md EOL 

Instal Elasticsearch, Kibana dan Filebeat

Berdasarkan matriks kompatibilitas untuk Wazuh 4.1.5, instal Elasticsearch 7.11.2, Kibana 7.11.2 dan Filebeat 7.11.2 dengan menjalankan perintah di bawah ini;

dnf install elasticsearch-7.11.2 kibana-7.11.2 filebeat-7.11.2

keluaran sampel;

Dependencies resolved. ============================================================================================================================================================================ Package Architecture Version Repository Size ============================================================================================================================================================================ Installing: elasticsearch x86_64 7.11.2-1 elasticsearch 308 M filebeat x86_64 7.11.2-1 elasticsearch 33 M kibana x86_64 7.11.2-1 elasticsearch 244 M Transaction Summary ============================================================================================================================================================================ Install 3 Packages Total download size: 584 M Installed size: 1.2 G Is this ok [y/N]: y 

Mengonfigurasi Elasticsearch

Hanya ada beberapa perubahan yang akan kami buat dalam hal mengonfigurasi Elasticsearch.

Anda dapat mengatur nama klaster Elastis secara opsional;

sed -i 's/#cluster.name: my-application/cluster.name: wazuh-elastic/' /etc/elasticsearch/elasticsearch.yml

Selanjutnya, konfigurasikan ukuran stack JVM ke tidak lebih dari setengah ukuran memori Anda. Dalam hal ini, server pengujian kami memiliki RAM 2G dan ukuran stack diatur ke 512M untuk ukuran maksimum dan minimum.

sed -i -e '/4g/s/^## //' -e '/4g/s//512m/' /etc/elasticsearch/jvm.options

Konfigurasi sekarang terlihat seperti;

... ################################################################ # Xms represents the initial size of total heap space # Xmx represents the maximum size of total heap space -Xms512m -Xmx512m...

Mulai dan aktifkan ES untuk berjalan pada boot sistem.

systemctl daemon-reload
systemctl enable --now elasticsearch

Verifikasi bahwa Elasticsearch berjalan seperti yang diharapkan.

cur
l -XGET localhost:9200
{ "name" : "localhost.localdomain", "cluster_name" : "wazuh-elastic", "cluster_uuid" : "G-GICWOxRH6U0y-MJ5omaw", "version" : { "number" : "7.11.2", "build_flavor" : "default", "build_type" : "rpm", "build_hash" : "3e5a16cfec50876d20ea77b075070932c6464c7d", "build_date" : "2021-03-06T05:54:38.141101Z", "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" } 

Konfigurasikan Filebeat

Buat cadangan file konfigurasi Filebeat.

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

Dalam pengaturan kami, kami menggunakan file konfigurasi Filebeat di bawah ini. Anda dapat mengkonfigurasinya sesuai keinginan Anda.

cat > /etc/filebeat/filebeat.yml << 'EOL' # Wazuh - Filebeat configuration file output.elasticsearch: hosts: ["localhost:9200"] 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 EOL 

Kemudian download templat peringatan untuk ELK

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

Uji koneksi Filebeat ke Elasticsearch

filebeat test output

keluaran sampel;

elasticsearch: http://localhost:9200... parse url... OK connection... parse host... OK dns lookup... OK addresses: ::1, 127.0.0.1 dial up... OK TLS... WARN secure connection disabled talk to server... OK version: 7.11.2 

Instal modul Wazuh untuk Filebeat:

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

Mulai dan aktifkan Filebeat untuk berjalan pada boot sistem;

systemctl daemon-reload
systemctl enable --now filebeat

Filebeat akan menulis log ke /var/log/filebeat/ untuk berjaga-jaga jika Anda perlu memeriksa sesuatu.

Konfigurasikan Kibana

Tentukan alamat yang akan diikat oleh server Kibana. Dengan alamat IP dan nama host keduanya adalah nilai yang valid.localhost adalah nilai default.

Dalam kasus saya, alamat IP server Wazuh saya adalah 192.168.56.145. Oleh karena itu, saya akan mengkonfigurasi Kibana untuk mendengarkan di alamat ini.

sed -i -e '/server.host:/s/^#//' -e '/server.host:/s/localhost/192.168.56.145/' /etc/kibana/kibana.yml

Instal Plugin Kibana Aplikasi Wazuh

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

Sebelum Anda mengdownload dan menginstal plugin, dapatkan tag untuk versi spesifik Wazuh Anda ;

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

Anda dapat membuat daftar plugin yang diinstal;

sudo -u kibana /usr/share/kibana/bin/kibana-plugin list

Keluaran;

[email protected]

Mulai Kibana;

systemctl enable --now kibana

Mulai ulang pengelola Elasticsearch dan Wazuh;

systemctl restart elasticsearch wazuh-manager

Buka Port di Firewall

Baca tentang port Server Wazuh di halaman Port Wazuh yang Diperlukan.

Anda perlu mengizinkan beberapa port di firewall. Ini termasuk;

  • 5601/tcp untuk akses eksternal ke Kibana
  • 1514/udp/tcp untuk mengizinkan pengumpulan peristiwa dari agen (bila dikonfigurasi untuk UDP, TCP digunakan secara default).
  • 1515/udp untuk service pendaftaran Agen
firewall-cmd --add-port=5601/tcp --permanent
firewall-cmd --add-port={1514,1515}/udp --permanent
firewall-cmd --add-port={1514,1515}/tcp --permanent

Kemudian reload firewall

firewall-cmd --reload

Mengakses Interface Web Kibana

Anda sekarang dapat mengakses interface web Kibana melalui alamat http://server-IP-or-hostname:5601.

Dasbor Aplikasi Wazuh

Di bagian selanjutnya, kita akan mempelajari cara mendorong data/log peristiwa ke Elasticsearch melalui agen Wazuh.

Mengirim Acara/Data ke Server Wazuh menggunakan Agen Wazuh

Agen Wazuh dapat diinstal pada server client atau workstation dari mana log dikumpulkan. Agen tersedia untuk sistem Windows dan UNIX.

Instal Agen Wazuh di CentOS 8/Fedora 32

Dalam tutorial ini, kita akan menginstal agen Wazuh di server CentOS 8 lain yang bertindak di titik akhir dari mana kita mengumpulkan log.

Buat Repositori Wazuh

Copy dan tempel konten berikut untuk menambahkan repositori Wazuh pada agen CentOS 8.

rpm --import http://packages.wazuh.com/key/GPG-KEY-WAZUH
cat > /etc/yum.repos.d/wazuh.repo <<EOF [wazuh_repo] gpgcheck=1 gpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH enabled=1 name=Wazuh repository baseurl=https://packages.wazuh.com/4.x/yum/ protect=1 EOF
Instal Agen Wazuh di CentOS 8/Fedora 32

Setelah repo terpasang, Anda dapat menginstal agen Wazuh dengan menjalankan perintah di bawah ini;

dnf -y install wazuh-agent

Instalasi sekarang selesai. Langkah selanjut
nya adalah memungkinkan agen untuk berkomunikasi dengan manajer.

Tambahkan Agen Wazuh di Server Wazuh

Pada manajer Wazuh, jalankan perintah:

/var/ossec/bin/manage_agents

Pilih tambahkan agen (A) dan tekan enter.

Wazuh v4.1.5 Agent manager. * following options are available: * (A)dd an agent (A). (E)xtract key for an agent (E). (L)ist already added agents (L). (R)emove an agent (R). (Q)uit. Choose your action: A,E,L,R or Q: A

Berikan nama untuk agen (dalam kasus kami RHAgent) dan IP agen dan konfirmasi.

Note the ID given to the agent.

Adding a new agent (use 'q' to return to the main menu). Please provide the following: A name for the new agent: RHAgent IP Address of the new agent: 192.168.56.130 Confirm adding it?(y/n): y Agent added with ID 002.
Ekstrak Kunci Agen Wazuh

Agar agen dapat berkomunikasi dengan manajer, agen membutuhkan kunci. Lanjutkan untuk mengekstrak kunci agen dengan mengetik E. Pilih ID Agen (002 dalam kasus ini).

Choose your action: A,E,L,R or Q: E Available agents: ID: 001, Name: centos8, IP: 192.168.56.103 ID: 002, Name: RHAgent, IP: 192.168.56.130 Provide the ID of the agent to extract the key (or 'q' to quit): 002 Agent key information for '002' is: MDAyIFJIQWdlbnQgMTkyLjE2OC41Ni4xMzAgMzFjNTVjOGNiMzU2YmJkOTcyYzE2YjVhMDZiNzNkMGNmYTFhYmJlYWM4OTZmMGE0OWY3NzdjNjEwNTJiMGZjMQ==

Copy kunci dan tempel di tempat yang dapat diakses seperti yang akan kita gunakan pada langkah berikutnya.

Atur Alamat Server Wazuh di Agen Wazuh

Pada the agent, edit filenya /var/ossec/etc/ossec.conf dan tambahkan IP pengelola Wazuh/nama host yang dapat diselesaikan.

vim /var/ossec/etc/ossec.conf
... <server> <address>192.168.56.145</address> <port>1514</port> <protocol>udp</protocol> </server>...

Simpan dan keluar

Navigasi ke /var/ossec/bindan jalankan manage_agentsskrip untuk mengimpor kunci agen.

/var/ossec/bin/manage_agents

Tekan I untuk mengimpor kunci yang sebelumnya dibuat dari manajer.

Provide the Key generated by the server. best approach is to cut and paste it. *** OBS: Do not include spaces or new lines. Paste it here (or 'q' to quit): PASTE THE AGENT KEY HERE Agent information: ID:002 Name:RHAgent IP Address:192.168.56.130 Confirm adding it?(y/n): y Added.

Keluar dan mulai ulang agen.

/var/ossec/bin/ossec-control restart
Verifikasi Penerimaan Data Agen di Kibana

Pendaftaran agen selesai. Mari kita periksa datanya dari modul Wazuh di Kibana.

Navigasi ke Wazuh>Modules>Security Events untuk melihat acara dan dasbor terkait keamanan.

Anda dapat mempelajari lebih lanjut tentang modul seperti Audit dan Pemantauan Kebijakan, Kepatuhan terhadap Peraturan, serta Deteksi dan Respons Ancaman.

Itu menandai akhir dari tutorial kami tentang cara Menginstal dan mengatur Server Wazuh di CentOS 8/Fedora 32.

Bacaan lebih lanjut

Memasang Server Wazuh di CentOS

Tutorial Terkait

Instal Agen OSSEC di CentOS 8

Menginstal ELK Stack di CentOS 8

Instal Elastic Stack 7 di Fedora 30/Fedora 29/CentOS 7