# Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2) FROM amazonlinux:2023 RUN rm /bin/sh && ln -s /bin/bash /bin/sh ARG WAZUH_VERSION ARG WAZUH_TAG_REVISION ARG S6_VERSION="v2.2.0.3" ARG TARGETARCH ARG wazuh_manager_url_amd64_rpm ARG wazuh_manager_url_arm64_rpm RUN URL_VAR="wazuh_manager_url_${TARGETARCH}_rpm" && \ manager_url="${!URL_VAR}" && \ dnf install curl-minimal xz gnupg tar gzip openssl findutils procps -y &&\ dnf clean all && \ curl -o /wazuh-manager.rpm "${manager_url}" && \ dnf install /wazuh-manager.rpm -y && \ rm -rf /wazuh-manager.rpm && \ dnf clean all && \ S6_ARCH="amd64" && \ if [ "${TARGETARCH}" = "arm64" ]; then S6_ARCH="aarch64"; fi && \ curl --fail --silent -L https://github.com/just-containers/s6-overlay/releases/download/${S6_VERSION}/s6-overlay-${S6_ARCH}.tar.gz \ -o /tmp/s6-overlay-${S6_ARCH}.tar.gz && \ tar xzf /tmp/s6-overlay-${S6_ARCH}.tar.gz -C / --exclude="./bin" && \ tar xzf /tmp/s6-overlay-${S6_ARCH}.tar.gz -C /usr ./bin && \ rm /tmp/s6-overlay-${S6_ARCH}.tar.gz && \ rm -f /var/ossec/etc/sslmanager.key && \ rm -f /var/ossec/etc/sslmanager.cert COPY config/etc/ /etc/ COPY --chown=root:wazuh config/create_user.py /var/ossec/framework/scripts/create_user.py # Prepare permanent data # Sync calls are due to https://github.com/docker/docker/issues/9547 COPY config/permanent_data.env config/permanent_data.sh / #Make mount directories for keep permissions RUN mkdir -p /var/ossec/var/multigroups && \ chown root:wazuh /var/ossec/var/multigroups && \ chmod 770 /var/ossec/var/multigroups && \ mkdir -p /var/ossec/active-response/bin && \ chown root:wazuh /var/ossec/active-response/bin && \ chmod 770 /var/ossec/active-response/bin && \ chmod 755 /permanent_data.sh && \ sync && /permanent_data.sh && \ sync && rm /permanent_data.sh # Services ports EXPOSE 55000/tcp 1514/tcp 1515/tcp 514/udp 1516/tcp ENTRYPOINT [ "/init" ]