memiah.mail-relay
Postfix Mail Relay
Configura postfix para enviar correos a través de un relay de correo, por ejemplo Amazon SES.
Requisitos
Si eliges utilizar Amazon AWS SES como opción de relay de correo, crea una política de usuario IAM "AmazonSesSendingAccess-[nombre de usuario]", por ejemplo:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ses:SendEmail",
"ses:SendRawEmail"
],
"Resource": "*"
}
]
}
Variables de Rol
Las variables disponibles se enumeran a continuación, junto con sus valores predeterminados (consulta defaults/main.yml
):
postfix_relay_enabled: True
Por defecto, la configuración de postfix está habilitada. Si deseas desactivarla, cámbiala a False
.
postfix_relay_server: ""
Nombre del servidor relay de postfix, por ejemplo, "email-smtp.región.amazonaws.com".
postfix_relay_port: 587
Puerto del servidor relay de postfix.
postfix_myhostname: False
El parámetro myhostname especifica el nombre de host de internet de este sistema de correo. El valor predeterminado es usar el nombre de dominio completamente calificado de gethostname(). $myhostname se usa como valor predeterminado para muchos otros parámetros de configuración.
postfix_mydomain: False
El parámetro mydomain especifica el nombre de dominio de internet local. El valor predeterminado es usar $myhostname sin el primer componente. $mydomain se usa como valor predeterminado para muchos otros parámetros de configuración.
postfix_myorigin: False
El parámetro myorigin especifica el dominio del cual parece provenir el correo enviado localmente. El valor predeterminado es agregar $myhostname, lo cual está bien para sitios pequeños. Si manejas un dominio con múltiples máquinas, debes (1) cambiar esto a $mydomain y (2) configurar una base de datos de alias a nivel de dominio que asocie a cada usuario con user@esa.máquina.de.correo.
Para mantener la consistencia entre las direcciones del remitente y el destinatario, myorigin también especifica el nombre de dominio predeterminado que se agrega a las direcciones de los destinatarios que no tienen la parte @dominio.
postfix_relay_recipient_canonical_maps: regexp:/etc/postfix/recipient_canonical_maps
Tabla de búsqueda para el mapeo de direcciones de los destinatarios en el sobre y el encabezado usando recipient_canonical_maps. Por defecto, esto utiliza el tipo de tabla regexp.
postfix_relay_recipient_canonical: []
# - pattern: "/./" (Requerido)
# address: "[email protected]" (Requerido)
Lista de destinatarios canónicos basada en el formato de las tablas de expresiones regulares.
postfix_relay_recipient_canonical_classes: envelope_recipient
Direcciones sujetas a mapeo de direcciones canonical_maps. Especifica uno o más de: envelope_sender
, envelope_recipient
, header_sender
, header_recipient
.
postfix_relay_catch_all_address: False
# postfix_relay_catch_all_address: [email protected]
Dirección de correo electrónico para redirigir todo el correo. Por defecto, esto está deshabilitado y generalmente solo debe habilitarse en entornos de desarrollo. Si se especifica, esto sobrescribirá todos los elementos de postfix_relay_recipient_canonical
.
postfix_relay_catch_all_pattern: /./
Patrón (regexp) predeterminado utilizado para atrapar todos los correos y enviarlos a la dirección de redirección.
postfix_virtual_alias_maps:
- address: root
alias: root@localhost
Entregar correo a cuentas locales configurando alias virtuales. Por defecto, cualquier correo dirigido a root
será enviado a root@localhost
(entregado localmente). Desactiva todos los alias predeterminados configurando este valor a False
.
postfix_relayhost_maps: []
# - domain: "@dominio.com" (Requerido)
# server: "" (Opcional, predeterminado a postfix_relay_server)
# port: 587 (Opcional, predeterminado a postfix_relay_port)
# user: "usuario-aquí" (Opcional, predeterminado a postfix_relay_user)
# password: "contraseña-aquí" (Opcional, predeterminado a postfix_relay_password)
Activa smtp_sender_dependent_authentication
para permitir que el correo sea enviado a través de múltiples hosts con diferentes credenciales, dependiendo de la dirección de correo del remitente. Ten en cuenta que el valor de dominio puede especificarse como una dirección completa [email protected]
o utilizando un comodín @dominio.com
. (Consulta la documentación de postfix relayhost_map).
postfix_relay_user: ""
Establecer el usuario de relay de postfix.
postfix_relay_password: ""
Establecer la contraseña del servidor relay.
postfix_relay_secret_key: "clave-secreta-aquí"
Generar la contraseña de relay a partir de la clave secreta de AWS especificada. O, completa manualmente el valor de postfix_relay_password
convirtiendo una clave secreta de AWS existente en una contraseña SMTP de Amazon SES usando el script bash incluido:
./scripts/aws-ses-smtp-password.sh clave-secreta-aquí
Dependencias
Ninguna.
Ejemplo de Playbook
Incluir un ejemplo de cómo usar tu rol (por ejemplo, con variables pasadas como parámetros) también es útil para los usuarios:
- hosts: servidores
become: yes
vars_files:
- vars/main.yml
roles:
- memiah.mail-relay
Dentro de vars/main.yml
:
postfix_relay_user: "usuario_aquí"
postfix_relay_password: "contraseña_aquí"
postfix_relay_server: "email-smtp.región.amazonaws.com"
Licencia
MIT / BSD
Información del Autor
Este rol fue creado en 2016 por Memiah Limited.
ansible-galaxy install memiah.mail-relay