memiah.mail-relay
Postfix Mail Relay
Konfiguracja postfixa do wysyłania przez serwer pośredniczący, na przykład Amazon SES.
Wymagania
Jeśli wybranym serwerem pośredniczącym ma być Amazon AWS SES, utwórz politykę użytkownika IAM o nazwie "AmazonSesSendingAccess-[nazwa_użytkownika]", na przykład:
{
"Wersja": "2012-10-17",
"Oświadczenie": [
{
"Efekt": "Zezwól",
"Akcja": [
"ses:SendEmail",
"ses:SendRawEmail"
],
"Zasób": "*"
}
]
}
Zmienne roli
Dostępne zmienne są wymienione poniżej, wraz z wartościami domyślnymi (zobacz
defaults/main.yml
):
postfix_relay_enabled: True
Domyślnie konfiguracja postfixa jest włączona, więc można ustawić na False
.
postfix_relay_server: ""
Nazwa hosta serwera pośredniczącego postfixa, na przykład "email-smtp.region.amazonaws.com".
postfix_relay_port: 587
Port serwera pośredniczącego postfixa.
postfix_myhostname: False
Parametr myhostname określa internetową nazwę hosta tego systemu mailowego. Domyślnie używana jest w pełni kwalifikowana nazwa domeny z gethostname(). $myhostname jest używane jako domyślna wartość dla wielu innych parametrów konfiguracyjnych.
postfix_mydomain: False
Parametr mydomain określa lokalną nazwę domeny internetowej. Domyślnie używane jest $myhostname minus pierwszy składnik. $mydomain jest używane jako domyślna wartość dla wielu innych parametrów konfiguracyjnych.
postfix_myorigin: False
Parametr myorigin określa domenę, z której wydaje się, że pochodzi lokalnie wysyłany mail. Domyślnie dołącza się $myhostname, co jest w porządku dla małych serwisów. Jeśli prowadzisz domenę z wieloma maszynami, powinieneś (1) zmienić to na $mydomain oraz (2) utworzyć bazę danych aliasów dla całej domeny, która aliasuje każdego użytkownika do user@that.users.mailhost.
Dla zachowania spójności między adresami nadawcy a odbiorcy, myorigin określa również domyślną nazwę domeny, która jest dołączana do adresów odbiorców, którzy nie mają części @domena.
postfix_relay_recipient_canonical_maps: regexp:/etc/postfix/recipient_canonical_maps
Tabela mapowania adresów do adresów odbiorców w kopercie i nagłówku, używająca recipient_canonical_maps. Domyślnie używa to typu regexp table.
postfix_relay_recipient_canonical: []
# - wzór: "/./" (Wymagane)
# adres: "[email protected]" (Wymagane)
Lista kanonicznych odbiorców na podstawie formatu tabeli wyrażeń regularnych.
postfix_relay_recipient_canonical_classes: envelope_recipient
Adresy podlegające mapowaniu adresów canonical_maps. Określ jeden lub więcej:
envelope_sender
, envelope_recipient
, header_sender
, header_recipient
.
postfix_relay_catch_all_address: False
# postfix_relay_catch_all_address: [email protected]
Adres e-mail do przekierowywania wszystkich wiadomości. Domyślnie to jest wyłączone i powinno być włączane tylko w środowiskach deweloperskich. Jeśli określone, to nadpisze wszystkie elementy postfix_relay_recipient_canonical
.
postfix_relay_catch_all_pattern: /./
Domyślny (regexp) wzór używany do przechwytywania wszystkich e-maili i wysyłania do adresu catch-all.
postfix_virtual_alias_maps:
- adres: root
alias: root@localhost
Dostarczanie maili do lokalnych kont przez utworzenie wirtualnych aliasów. Domyślnie każda
wiadomość do root
będzie wysyłana do root@localhost
(dostarczana lokalnie). Wyłącz wszystkie domyślne aliasy, ustawiając tę wartość na False
.
postfix_relayhost_maps: []
# - domena: "@domain.com" (Wymagane)
# serwer: "" (Opcjonalne, domyślnie do postfix_relay_server)
# port: 587 (Opcjonalne, domyślnie do postfix_relay_port)
# użytkownik: "user-here" (Opcjonalne, domyślnie do postfix_relay_user)
# hasło: "password-here" (Opcjonalne, domyślnie do postfix_relay_password)
Umożliwia smtp_sender_dependent_authentication
, aby umożliwić przesyłanie maili przez
wiele hostów z różnymi danymi uwierzytelniającymi, w zależności od adresu e-mail nadawcy.
Zauważ, że wartość domeny można określić jako pełny adres [email protected]
lub
znak wieloznaczny @domain.com
. (Zobacz dokumentację dotyczącego relayhost_map postfixa.)
postfix_relay_user: ""
Ustaw użytkownika serwera pośredniczącego postfixa.
postfix_relay_password: ""
Ustaw hasło serwera pośredniczącego.
postfix_relay_secret_key: "klucz-tajny-tutaj"
Wygeneruj hasło do serwera pośredniczącego na podstawie podanego klucza tajnego AWS. Alternatywnie, ręcznie wprowadź
wartość postfix_relay_password
, przekształcając istniejący klucz tajny AWS na
hasło SMTP Amazon SES za pomocą dołączonego skryptu bash:
./scripts/aws-ses-smtp-password.sh klucz-tajny-tutaj
Zależności
Brak.
Przykładowy playbook
Zawieranie przykładu, jak użyć swojej roli (na przykład, z użytymi zmiennymi) jest zawsze miłe dla użytkowników:
- gospodarze: serwery
zostań: tak
vars_files:
- vars/main.yml
role:
- memiah.mail-relay
Wewnątrz vars/main.yml
:
postfix_relay_user: "user_here"
postfix_relay_password: "password_here"
postfix_relay_server: "email-smtp.region.amazonaws.com"
Licencja
MIT / BSD
Informacje o autorze
Ta rola została utworzona w 2016 roku przez Memiah Limited.
ansible-galaxy install memiah.mail-relay