feat: install wazuh agent in packages role; remove unused deployment files

Wazuh agent:
- packages role now copies the local wazuh-agent RPM to the host, installs
  it via dnf, points /var/ossec/etc/ossec.conf at wazuh.boxswapper.io,
  and enables/starts the wazuh-agent service
- new vars: wazuh_agent_rpm, wazuh_server_address (manager version 4.14.1
  matches the agent RPM)

Cleanup of files not used by the ansible deployment:
- removed wazuh-docker/docker-compose.yml, generate-indexer-certs.yml,
  README.md (role generates certs via podman run, config/ dir is the
  only part referenced)
- removed committed .omo/ session data (already gitignored)

Done by Sisyphus.
This commit is contained in:
2026-09-16 09:33:42 -06:00
parent 170146efb1
commit 3e7939b682
7 changed files with 30 additions and 163 deletions

View File

@@ -1,10 +0,0 @@
{
"sessionID": "ses_f9c7a2a4bffeGbArqDu2FhIlC5",
"updatedAt": "2026-09-02T19:11:53.267Z",
"sources": {
"background-task": {
"state": "idle",
"updatedAt": "2026-09-02T19:11:53.267Z"
}
}
}

View File

@@ -1,10 +0,0 @@
{
"sessionID": "ses_f9c868146ffeKpqM2tbofhzWO3",
"updatedAt": "2026-09-02T19:03:22.170Z",
"sources": {
"background-task": {
"state": "idle",
"updatedAt": "2026-09-02T19:03:22.170Z"
}
}
}

View File

@@ -11,3 +11,28 @@
- fail2ban - fail2ban
- python3-libdnf5 - python3-libdnf5
state: present state: present
- name: Copy Wazuh agent RPM to host
ansible.builtin.copy:
src: "{{ playbook_dir }}/{{ wazuh_agent_rpm }}"
dest: "/tmp/{{ wazuh_agent_rpm }}"
owner: root
group: root
mode: '0644'
- name: Install Wazuh agent RPM
ansible.builtin.dnf:
name: "/tmp/{{ wazuh_agent_rpm }}"
state: present
- name: Point Wazuh agent at Wazuh manager
ansible.builtin.replace:
path: /var/ossec/etc/ossec.conf
regexp: '<address>MANAGER_IP</address>'
replace: '<address>{{ wazuh_server_address }}</address>'
- name: Enable and start Wazuh agent
ansible.builtin.systemd:
name: wazuh-agent
enabled: true
state: started

View File

@@ -62,3 +62,8 @@ wazuh_dashboard_ip: 10.10.0.40
wazuh_manager_ip: 10.10.0.41 wazuh_manager_ip: 10.10.0.41
wazuh_indexer_ip: 10.10.0.42 wazuh_indexer_ip: 10.10.0.42
## Wazuh agent (installed on this host by packages role)
## Server address the agent reports to (manager reachable on ports 1514/1515 via router forwarding)
wazuh_agent_rpm: wazuh-agent-4.14.1-1.x86_64.rpm
wazuh_server_address: wazuh.boxswapper.io

View File

@@ -1,24 +0,0 @@
# Deploy Wazuh Docker in single node configuration
This deployment is defined in the `docker-compose.yml` file with one Wazuh manager containers, one Wazuh indexer containers, and one Wazuh dashboard container. It can be deployed by following these steps:
1) Increase max_map_count on your host (Linux). This command must be run with root permissions:
```
$ sysctl -w vm.max_map_count=262144
```
2) Run the certificate creation script:
```
$ docker compose -f generate-indexer-certs.yml run --rm generator
```
3) Start the environment with docker compose:
- In the foregroud:
```
$ docker compose up
```
- In the background:
```
$ docker compose up -d
```
The environment takes about 1 minute to get up (depending on your Docker host) for the first time since Wazuh Indexer must be started for the first time and the indexes and index patterns must be generated.

View File

@@ -1,109 +0,0 @@
# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
services:
wazuh.manager:
image: wazuh/wazuh-manager:5.0.0
hostname: wazuh.manager
restart: always
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 655360
hard: 655360
ports:
- "1514:1514"
- "1515:1515"
- "514:514/udp"
- "55000:55000"
environment:
- INDEXER_URL=https://wazuh.indexer:9200
- INDEXER_USERNAME=admin
- INDEXER_PASSWORD=*WD*oW9m6iKf4hDovy7BbMmhLxC9D?Tv
- FILEBEAT_SSL_VERIFICATION_MODE=full
- SSL_CERTIFICATE_AUTHORITIES=/etc/ssl/root-ca.pem
- SSL_CERTIFICATE=/etc/ssl/filebeat.pem
- SSL_KEY=/etc/ssl/filebeat.key
- API_USERNAME=wazuh-wui
- API_PASSWORD=MyS3cr37P450r.*-
volumes:
- wazuh_api_configuration:/var/ossec/api/configuration
- wazuh_etc:/var/ossec/etc
- wazuh_logs:/var/ossec/logs
- wazuh_queue:/var/ossec/queue
- wazuh_var_multigroups:/var/ossec/var/multigroups
- wazuh_active_response:/var/ossec/active-response/bin
- wazuh_wodles:/var/ossec/wodles
- filebeat_etc:/etc/filebeat
- filebeat_var:/var/lib/filebeat
- ./config/wazuh_indexer_ssl_certs/root-ca-manager.pem:/etc/ssl/root-ca.pem
- ./config/wazuh_indexer_ssl_certs/wazuh.manager.pem:/etc/ssl/filebeat.pem
- ./config/wazuh_indexer_ssl_certs/wazuh.manager-key.pem:/etc/ssl/filebeat.key
- ./config/wazuh_cluster/wazuh_manager.conf:/wazuh-config-mount/etc/ossec.conf
wazuh.indexer:
image: wazuh/wazuh-indexer:5.0.0
hostname: wazuh.indexer
restart: always
ports:
- "9200:9200"
environment:
- "OPENSEARCH_JAVA_OPTS=-Xms1g -Xmx1g"
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 65536
hard: 65536
volumes:
- wazuh-indexer-data:/var/lib/wazuh-indexer
- ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-indexer/config/certs/root-ca.pem
- ./config/wazuh_indexer_ssl_certs/wazuh.indexer-key.pem:/usr/share/wazuh-indexer/config/certs/wazuh.indexer.key
- ./config/wazuh_indexer_ssl_certs/wazuh.indexer.pem:/usr/share/wazuh-indexer/config/certs/wazuh.indexer.pem
- ./config/wazuh_indexer_ssl_certs/admin.pem:/usr/share/wazuh-indexer/config/certs/admin.pem
- ./config/wazuh_indexer_ssl_certs/admin-key.pem:/usr/share/wazuh-indexer/config/certs/admin-key.pem
- ./config/wazuh_indexer/wazuh.indexer.yml:/usr/share/wazuh-indexer/config/opensearch.yml
- ./config/wazuh_indexer/internal_users.yml:/usr/share/wazuh-indexer/config/opensearch-security/internal_users.yml
wazuh.dashboard:
image: wazuh/wazuh-dashboard:5.0.0
hostname: wazuh.dashboard
restart: always
ports:
- 443:5601
environment:
- INDEXER_USERNAME=admin
- INDEXER_PASSWORD=SecretPassword
- WAZUH_API_URL=https://wazuh.manager
- DASHBOARD_USERNAME=kibanaserver
- DASHBOARD_PASSWORD=kibanaserver
- API_USERNAME=wazuh-wui
- API_PASSWORD=MyS3cr37P450r.*-
volumes:
- ./config/wazuh_indexer_ssl_certs/wazuh.dashboard.pem:/usr/share/wazuh-dashboard/certs/wazuh-dashboard.pem
- ./config/wazuh_indexer_ssl_certs/wazuh.dashboard-key.pem:/usr/share/wazuh-dashboard/certs/wazuh-dashboard-key.pem
- ./config/wazuh_indexer_ssl_certs/root-ca.pem:/usr/share/wazuh-dashboard/certs/root-ca.pem
- ./config/wazuh_dashboard/opensearch_dashboards.yml:/usr/share/wazuh-dashboard/config/opensearch_dashboards.yml
- ./config/wazuh_dashboard/wazuh.yml:/usr/share/wazuh-dashboard/data/wazuh/config/wazuh.yml
- wazuh-dashboard-config:/usr/share/wazuh-dashboard/data/wazuh/config
- wazuh-dashboard-custom:/usr/share/wazuh-dashboard/plugins/wazuh/public/assets/custom
depends_on:
- wazuh.indexer
links:
- wazuh.indexer:wazuh.indexer
- wazuh.manager:wazuh.manager
volumes:
wazuh_api_configuration:
wazuh_etc:
wazuh_logs:
wazuh_queue:
wazuh_var_multigroups:
wazuh_active_response:
wazuh_wodles:
filebeat_etc:
filebeat_var:
wazuh-indexer-data:
wazuh-dashboard-config:
wazuh-dashboard-custom:

View File

@@ -1,10 +0,0 @@
# Wazuh App Copyright (C) 2017, Wazuh Inc. (License GPLv2)
services:
generator:
image: wazuh/wazuh-certs-generator:0.0.3
hostname: wazuh-certs-generator
environment:
- CERT_TOOL_VERSION=4.14
volumes:
- ./config/wazuh_indexer_ssl_certs/:/certificates/
- ./config/certs.yml:/config/certs.yml