101 lines
3.1 KiB
YAML
101 lines
3.1 KiB
YAML
---
|
|
- name: Windows | Check if Program Files (x86) exists
|
|
win_stat:
|
|
path: C:\Program Files (x86)
|
|
register: check_path
|
|
|
|
- name: "Set Win Path"
|
|
set_fact:
|
|
wazuh_agent_win_path: "{% wazuh_winagent_config.install_dir_x86 if check_path.stat.exists else wazuh_winagent_config.install_dir %}"
|
|
|
|
- name: Windows | Get current installed version
|
|
win_shell: "{% if check_path.stat.exists %}{{ wazuh_winagent_config.install_dir_x86 }}{% else %}
|
|
{{ wazuh_winagent_config.install_dir }}{% endif %}ossec-agent.exe -h"
|
|
args:
|
|
removes: "{% if check_path.stat.exists %}{{ wazuh_winagent_config.install_dir_x86 }}{% else %}
|
|
{{ wazuh_winagent_config.install_dir }}{% endif %}ossec-agent.exe"
|
|
register: agent_version
|
|
failed_when: false
|
|
changed_when: false
|
|
|
|
- name: Windows | Check Wazuh agent version installed
|
|
set_fact: correct_version=true
|
|
when:
|
|
- agent_version.stdout is defined
|
|
- wazuh_winagent_config.version in agent_version.stdout
|
|
|
|
- name: Windows | Downloading windows Wazuh agent installer
|
|
win_get_url:
|
|
dest: C:\wazuh-agent-installer.msi
|
|
url: "{{ wazuh_winagent_config.repo }}wazuh-agent-{{ wazuh_winagent_config.version }}-{{ wazuh_winagent_config.revision }}.msi"
|
|
when:
|
|
- correct_version is not defined
|
|
|
|
- name: Windows | Verify the downloaded Wazuh agent installer
|
|
win_stat:
|
|
path: C:\wazuh-agent-installer.msi
|
|
get_checksum: true
|
|
checksum_algorithm: md5
|
|
register: installer_md5
|
|
when:
|
|
- correct_version is not defined
|
|
failed_when:
|
|
- installer_md5.stat.checksum != wazuh_winagent_config.md5
|
|
|
|
- name: Windows | Install Wazuh agent
|
|
win_package:
|
|
path: C:\wazuh-agent-installer.msi
|
|
when:
|
|
- correct_version is not defined
|
|
|
|
- name: Windows | Check if client.keys exists
|
|
win_stat: path="{{ wazuh_agent_win_path }}"
|
|
register: check_windows_key
|
|
notify: restart wazuh-agent windows
|
|
tags:
|
|
- config
|
|
|
|
- name: Retrieving authd Credentials
|
|
include_vars: authd_pass.yml
|
|
tags:
|
|
- config
|
|
|
|
- name: Windows | Register agent
|
|
win_shell: >
|
|
{% if check_path.stat.exists %}{{ wazuh_winagent_config.auth_path_x86 }}{% else %}
|
|
{{ wazuh_winagent_config.auth_path }}{% endif %}
|
|
-m {{ wazuh_managers.0.address }}
|
|
-p {{ wazuh_agent_authd.port }}
|
|
{% if authd_pass is defined %} -P {{ authd_pass }}{% endif %}
|
|
args:
|
|
chdir: "{{ wazuh_agent_win_path }}"
|
|
register: agent_auth_output
|
|
notify: restart wazuh-agent windows
|
|
when:
|
|
- wazuh_agent_authd.enable
|
|
- not check_windows_key.stat.exists or check_windows_key.stat.size == 0
|
|
- wazuh_managers.0.address is not none
|
|
tags:
|
|
- config
|
|
|
|
- name: Windows | Installing agent configuration (ossec.conf)
|
|
win_template:
|
|
src: var-ossec-etc-ossec-agent.conf.j2
|
|
dest: "{{ wazuh_agent_win_path }}ossec.conf"
|
|
notify: restart wazuh-agent windows
|
|
tags:
|
|
- config
|
|
|
|
- name: Windows | Installing local_internal_options.conf
|
|
win_template:
|
|
src: var-ossec-etc-local-internal-options.conf.j2
|
|
dest: "{{ wazuh_agent_win_path }}local_internal_options.conf"
|
|
notify: restart wazuh-agent windows
|
|
tags:
|
|
- config
|
|
|
|
- name: Windows | Delete downloaded Wazuh agent installer file
|
|
win_file:
|
|
path: C:\wazuh-agent-installer.msi
|
|
state: absent
|