Bez popisu

Dockerfile 2.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. # Wazuh Docker Copyright (C) 2017, Wazuh Inc. (License GPLv2)
  2. FROM amazonlinux:2023
  3. RUN rm /bin/sh && ln -s /bin/bash /bin/sh
  4. ARG WAZUH_VERSION
  5. ARG WAZUH_TAG_REVISION
  6. ARG FILEBEAT_TEMPLATE_BRANCH
  7. ARG FILEBEAT_CHANNEL=filebeat-oss
  8. ARG FILEBEAT_VERSION=7.10.2
  9. ARG FILEBEAT_REVISION=2
  10. ARG WAZUH_FILEBEAT_MODULE
  11. ARG S6_VERSION="v2.2.0.3"
  12. ARG TARGETARCH
  13. RUN yum install curl-minimal xz gnupg tar gzip openssl findutils procps -y &&\
  14. yum clean all
  15. COPY config/check_repository.sh /
  16. COPY config/filebeat_module.sh /
  17. COPY config/permanent_data.env config/permanent_data.sh /
  18. RUN chmod 775 /check_repository.sh
  19. RUN source /check_repository.sh
  20. RUN yum install wazuh-manager-${WAZUH_VERSION}-${WAZUH_TAG_REVISION} -y && \
  21. yum clean all && \
  22. chmod 775 /filebeat_module.sh && \
  23. source /filebeat_module.sh && \
  24. rm /filebeat_module.sh && \
  25. S6_ARCH="amd64" && \
  26. if [ "${TARGETARCH}" = "arm64" ]; then S6_ARCH="aarch64"; fi && \
  27. curl --fail --silent -L https://github.com/just-containers/s6-overlay/releases/download/${S6_VERSION}/s6-overlay-${S6_ARCH}.tar.gz \
  28. -o /tmp/s6-overlay-${S6_ARCH}.tar.gz && \
  29. tar xzf /tmp/s6-overlay-${S6_ARCH}.tar.gz -C / --exclude="./bin" && \
  30. tar xzf /tmp/s6-overlay-${S6_ARCH}.tar.gz -C /usr ./bin && \
  31. rm /tmp/s6-overlay-${S6_ARCH}.tar.gz && \
  32. rm -f /var/ossec/etc/sslmanager.key && \
  33. rm -f /var/ossec/etc/sslmanager.cert
  34. COPY config/etc/ /etc/
  35. COPY --chown=root:wazuh config/create_user.py /var/ossec/framework/scripts/create_user.py
  36. COPY config/filebeat.yml /etc/filebeat/
  37. RUN chmod go-w /etc/filebeat/filebeat.yml
  38. ADD https://raw.githubusercontent.com/wazuh/wazuh/$FILEBEAT_TEMPLATE_BRANCH/extensions/elasticsearch/7.x/wazuh-template.json /etc/filebeat
  39. RUN chmod go-w /etc/filebeat/wazuh-template.json
  40. # Prepare permanent data
  41. # Sync calls are due to https://github.com/docker/docker/issues/9547
  42. #Make mount directories for keep permissions
  43. RUN mkdir -p /var/ossec/var/multigroups && \
  44. chown root:wazuh /var/ossec/var/multigroups && \
  45. chmod 770 /var/ossec/var/multigroups && \
  46. mkdir -p /var/ossec/agentless && \
  47. chown root:wazuh /var/ossec/agentless && \
  48. chmod 770 /var/ossec/agentless && \
  49. mkdir -p /var/ossec/active-response/bin && \
  50. chown root:wazuh /var/ossec/active-response/bin && \
  51. chmod 770 /var/ossec/active-response/bin && \
  52. chmod 755 /permanent_data.sh && \
  53. sync && /permanent_data.sh && \
  54. sync && rm /permanent_data.sh
  55. RUN rm /etc/yum.repos.d/wazuh.repo
  56. # Services ports
  57. EXPOSE 55000/tcp 1514/tcp 1515/tcp 514/udp 1516/tcp
  58. ENTRYPOINT [ "/init" ]