pimvh.postfix

Prueba de molécula

Requisitos

  1. Ansible instalado:
sudo apt install python3
python3 -m ensurepip --upgrade
pip3 install ansible
  1. Este rol instalado:
ansible-galaxy install pimvh.postfix

Variables requeridas

Revisa las variables como se muestra en los valores predeterminados. Se proporciona una descripción de lo que implican las variables en el archivo de especificaciones de argumentos, en meta/main.yaml. Las variables pasadas a este rol son validadas por la especificación de argumentos en tiempo de ejecución.

Ejemplo de playbook

Una forma sencilla de ejecutar este rol en un host es la siguiente:

- hosts:
  - foo

  vars:
    postfix_ipv4: << Ingresa aquí la dirección IPv4 del servidor de correo postfix >>
    postfix_ipv6: << Ingresa aquí la dirección IPv6 del servidor de correo Postfix >>
    postfix_myhostname: "<< Ingresa aquí el nombre de dominio de postfix >>"
    postfix_mydomain: "<< Ingresa aquí el dominio de postfix, por defecto es myhostname >>"
    postfix_mynetworks:
      - 127.0.0.0/8
      - "::1/128" # No es necesario entre corchetes las direcciones IPv6, esto se maneja con filtros
    # Agrega redes adicionales si es necesario
    postfix_virtual_alias_domains: [] # Agrega dominios de alias virtuales si es necesario (ver meta/main.yaml para estructura)
    postfix_relay_domains: [] # Agrega dominios de reenvío si es necesario (ver defaults/main.yaml para estructura)
    postfix_aliases: # Agrega alias de usuario si es necesario
      - user: root
        alias: postmaster
    # también puede ser una lista de usuarios
    # - users:
    #     - fred
    #     - foo
    #     - bar
    #   alias: algo

    postfix_virtual_aliases: [] # Agrega alias virtuales si es necesario (ver meta/main.yaml para estructura)

    # Probablemente puedes omitir el resto de las variables
    # postfix_install: true
    # postfix_dir: /etc/postfix

    # postfix_dkim_enabled: true # DKIM está habilitado por defecto
    # postfix_dkim_keys:
    #   default:
    #     mail: "*"

    # Colocación de archivos DKIM en el sistema de archivos
    # postfix_dkim_keytable: /etc/opendkim/keytable
    # postfix_dkim_signingtable: /etc/opendkim/signingtable
    # postfix_dkim_trustedhosts: "/etc/opendkim/trustedhosts"

    # La ubicación del certificado se basa en el lugar predeterminado de certbots (puedes ejecutar el rol pimvh.certbot para obtener certificados)
    # postfix_smtpd_tls_cert_file: "/etc/letsencrypt/live/{{ postfix_mydomain }}/fullchain.pem"
    # postfix_smtpd_tls_key_file: "/etc/letsencrypt/live/{{ postfix_mydomain }}/privkey.pem"

  roles:
    - pimvh.postfix

Probablemente te ahorres algunos cambios si no configuras las variables en línea, sino basándote en hosts y/o grupos. Sin embargo, esto depende de tu caso de uso específico. Echa un vistazo a la configuración recomendada de playbook de Ansible para esto.

Resumen - ¿Qué ocurrirá si ejecuto esto?

  • Validará si las variables están correctas
  • Instalará postfix
  • Instalará y configurará amavis
  • Instalará y configurará opendkim
  • Instalará y configurará opendmarc
  • Instalará y configurará dovecot con usuarios del sistema y directorio de correo virtual
  • Configurará mailutils (instalado por el rol del que depende esto)

Lo que este rol no hace

Cortafuegos

Este rol no gestiona ningún cortafuegos, ya que probablemente tengas requisitos específicos para eso. Probablemente no quieras abrir tu puerto IMAP a toda la internet, si puedes evitarlo. ¡Así que ten cuidado!

Configuración de un backend de base de datos

No he tenido tiempo de configurar la instalación de una base de datos como backend para postfix. Si estás interesado, siéntete libre de contribuir.

Solución de problemas

Este rol valida las variables pasadas. Si:

  • ves problemas con la especificación de argumentos, probablemente cometiste un error al pasar variables a este rol.
  • encuentras problemas al ejecutar este playbook, no dudes en describir tu problema con detalle y abrir un incidente.

Mejoras futuras

Todavía hay muchas cosas que se pueden mejorar para este rol. Las siguientes son algunas cosas que estoy considerando agregar:

  • Agregar una herramienta de análisis de dmarc
  • Agregar un mejor backend al servidor postfix, como una base de datos en lugar del sistema de archivos simple.

Si tienes otras mejoras, no dudes en abrir un incidente.

Fuentes

Acerca del proyecto

role to configure postfix, with ClamAV, Amavis, DKIM, SPF and DMARC

Instalar
ansible-galaxy install pimvh.postfix
Licencia
gpl-3.0
Descargas
72
Propietario