Oefenweb.postfix

postfix

CI Ansible Galaxy

Ustaw serwer postfix w systemach podobnych do Debiana.

Wymagania

Brak

Zmienne

  • postfix_install [domyślnie: [postfix, mailutils, libsasl2-2, sasl2-bin, libsasl2-modules]]: Pakiety do zainstalowania

  • postfix_hostname [domyślnie: {{ ansible_fqdn }}]: Nazwa hosta, używana w myhostname oraz mydestination

  • postfix_mailname [domyślnie: {{ ansible_fqdn }}]: Nazwa mailowa (w /etc/mailname), używana w myorigin

  • postfix_compatibility_level [opcjonalnie]: Przy włączonej zgodności wstecznej, Postfix szuka ustawień o domyślnych wartościach, a gdy takie wymagania są potrzebne, loguje komunikat.

  • postfix_default_database_type [domyślnie: hash]: Domyślny typ bazy dla poleceń newaliases, postalias i postmap

  • postfix_aliases [domyślnie: []]: Aliasów, które należy zapewnić w /etc/aliases

  • postfix_aliases_database_type [domyślnie: "{{ postfix_default_database_type }}"]: Typ bazy dla aliasów

  • postfix_virtual_aliases [domyślnie: []]: Wirtualne aliasy w /etc/postfix/virtual

  • postfix_sender_canonical_maps [domyślnie: []]: Zmiana adresów nadawców w /etc/postfix/sender_canonical_maps

  • postfix_sender_canonical_maps_database_type [domyślnie: "{{ postfix_default_database_type }}"]: Typ bazy dla postfix_sender_canonical_maps

  • postfix_recipient_canonical_maps [domyślnie: []]: Zmiana adresów odbiorców w /etc/postfix/recipient_canonical_maps

  • postfix_recipient_canonical_maps_database_type [domyślnie: "{{ postfix_default_database_type }}"]: Typ bazy dla postfix_recipient_canonical_maps

  • postfix_transport_maps [domyślnie: []]: Mapowanie transportu na podstawie adresu odbiorcy w /etc/postfix/transport_maps

  • postfix_transport_maps_database_type [domyślnie: "{{ postfix_default_database_type }}"]: Typ bazy dla postfix_transport_maps

  • postfix_sender_dependent_relayhost_maps [domyślnie: []]: Mapowanie transportu na podstawie adresu nadawcy w /etc/postfix/sender_dependent_relayhost_maps

  • postfix_header_checks [domyślnie: []]: Tabele wyszukiwania dla inspekcji zawartości nagłówków wiadomości /etc/postfix/header_checks

  • postfix_header_checks_database_type [domyślnie: regexp]: Typ bazy do użycia w header_checks

  • postfix_generic [domyślnie: postfix_smtp_generic_maps]: Przestarzałe, użyj postfix_smtp_generic_maps

  • postfix_smtp_generic_maps [domyślnie: []]: Mapowanie adresów w /etc/postfix/generic

  • postfix_smtp_generic_maps_database_type [domyślnie: "{{ postfix_default_database_type }}"]: Typ bazy do użycia w smtp_generic_maps

  • postfix_mydestination [domyślnie: ["{{ postfix_hostname }}", 'localdomain', 'localhost', 'localhost.localdomain']]: Określa, jakie domeny maszyna dostarczy lokalnie.

  • postfix_mynetworks [domyślnie: ['127.0.0.0/8', '[::ffff:127.0.0.0]/104', '[::1]/128']]: Lista "zaufanych" klientów SMTP.

  • postfix_inet_interfaces [domyślnie: all]: Interfejsy sieciowe do powiązania.

  • postfix_inet_protocols [domyślnie: all]: Protokół internetowy, którego Postfix będzie używał.

  • postfix_smtp_ipv4_bind [opcjonalnie]: Wyjściowe interfejsy sieciowe do użycia (IPv4).

  • postfix_smtp_ipv6_bind [opcjonalnie]: Wyjściowe interfejsy sieciowe do użycia (IPv6).

  • postfix_relayhost [domyślnie: '' (brak hosta relay)]: Nazwa hosta do przekazywania wszystkich emaili.

  • postfix_relayhost_mxlookup [domyślnie: false (nie używa lookup mx)]: Wyszukiwanie rekordu MX zamiast A dla hosta relay.

  • postfix_relayhost_port [domyślnie: 587]: Port relay (na postfix_relayhost, jeśli ustawiony).

  • postfix_relaytls [domyślnie: false]: Użyj TLS podczas wysyłania przez hosta relay.

  • postfix_smtpd_client_restrictions [opcjonalnie]: Lista restrykcji klientów.

  • postfix_smtpd_helo_restrictions [opcjonalnie]: Lista restrykcji HELO.

  • postfix_smtpd_sender_restrictions [opcjonalnie]: Lista restrykcji nadawców.

  • postfix_smtpd_recipient_restrictions [opcjonalnie]: Lista restrykcji odbiorców.

  • postfix_smtpd_relay_restrictions [opcjonalnie]: Lista restrykcji dostępu do relays.

  • postfix_smtpd_data_restrictions [opcjonalnie]: Lista restrykcji danych.

  • postfix_sasl_auth_enable [domyślnie: true]: Włącz autoryzację SASL w kliencie SMTP.

  • postfix_sasl_user [domyślnie: postmaster@{{ ansible_domain }}]: Nazwa użytkownika SASL dla relay.

  • postfix_sasl_password [domyślnie: k8+haga4@#pR]: Hasło SASL dla relay Upewnij się, że to zmienisz!

  • postfix_sasl_security_options [domyślnie: noanonymous]: Opcje bezpieczeństwa SASL dla klienta SMTP.

  • postfix_sasl_tls_security_option [domyślnie: noanonymous]: Opcje bezpieczeństwa TLS SASL dla klienta SMTP.

  • postfix_sasl_mechanism_filter [domyślnie: '']: Filtr mechanizmów autoryzacji SASL dla klienta SMTP.

  • postfix_smtp_tls_security_level [domyślnie: encrypt]: Domyślny poziom zabezpieczeń TLS SMTP dla klienta.

  • postfix_smtp_tls_wrappermode [domyślnie: false]: Żądanie, aby klient łączył się z wykorzystaniem protokołu SMTPS.

  • postfix_smtp_tls_note_starttls_offer [domyślnie: true]: Logowanie nazwy hosta zdalnego serwera SMTP, który oferuje STARTTLS.

  • postfix_smtp_tls_cafile [opcjonalnie]: Plik zawierający certyfikaty CA zaufanych do podpisywania certyfikatów serwera.

  • postfix_smtpd_banner [domyślnie: $myhostname ESMTP $mail_name (Ubuntu)]: Baner powitalny Musisz podać $myhostname na początku tekstu. To jest wymagane przez protokół SMTP.

  • postfix_disable_vrfy_command [domyślnie: true]: Wyłącz polecenie SMTP VRFY.

  • postfix_message_size_limit [domyślnie: 10240000]: Maksymalny rozmiar wiadomości w bajtach, w tym informacje o kopercie.

  • postfix_smtpd_tls_cert_file [domyślnie: /etc/ssl/certs/ssl-cert-snakeoil.pem]: Ścieżka do pliku certyfikatu.

  • postfix_smtpd_tls_key_file [domyślnie: /etc/ssl/certs/ssl-cert-snakeoil.key]: Ścieżka do pliku klucza.

  • postfix_smtpd_security_level [opcjonalnie]: Poziom zabezpieczeń TLS SMTP dla serwera.

  • postfix_smtp_tls_mandatory_ciphers [opcjonalnie]: Minimalny poziom cipherów TLS dla obowiązkowego TLS.

  • postfix_smtp_tls_mandatory_protocols [opcjonalnie]: Protokół TLS, który klient SMTP będzie używał w przypadku obowiązkowego szyfrowania TLS.

  • postfix_smtp_tls_protocols [opcjonalnie]: Protokół TLS, który klient SMTP będzie używał z opcjonalnym szyfrowaniem TLS.

  • postfix_smtpd_tls_mandatory_ciphers [opcjonalnie]: Minimalny poziom cipherów TLS dla obowiązkowego szyfrowania na serwerze.

  • postfix_smtpd_tls_mandatory_protocols [opcjonalnie]: Protokół TLS akceptowany przez serwer dla obowiązkowego szyfrowania.

  • postfix_smtpd_tls_protocols [opcjonalnie]: Protokół TLS akceptowany przez serwer dla opcjonalnego szyfrowania.

  • postfix_raw_options [domyślnie: []]: Lista linii (do przekazania dodatkowej (nieobsługiwanej) konfiguracji).

Zależności

  • debconf
  • debconf-utils

Przykład(y)

Prosty przykład, który nie używa SASL relaying:

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_aliases:
      - user: root
        alias: [email protected]

Prosty przykład z wirtualnymi aliasami do przekazywania maili, który nie używa SASL relaying:

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_mydestination:
      - "{{ postfix_hostname }}"
      - '$mydomain'
      - localdomain
      - localhost
      - localhost.localdomain
    postfix_virtual_aliases:
      - virtual: [email protected]
        alias: [email protected]
      - virtual: [email protected]
        alias: [email protected], [email protected]

Prosty przykład, który zmienia adres nadawcy:

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_sender_canonical_maps:
      - sender: root
        rewrite: [email protected]

Podaj nazwę hosta relay, jeśli chcesz włączyć relaying:

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_aliases:
      - user: root
        alias: [email protected]
    postfix_relayhost: mail.yourdomain.org

Podaj nazwę domeny hosta relay i użyj rekordów MX, aby włączyć relaying do DNS MX rekordów dla domeny:

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_aliases:
      - user: root
        alias: [email protected]
    postfix_relayhost: yourdomain.org
    postfix_relayhost_mxlookup: true

Warunkowy relaying:

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_transport_maps:
      - pattern: '[email protected]'
        result: ':'
      - pattern: '*'
        result: "smtp:{{ ansible_lo['ipv4']['address'] }}:1025"
    postfix_sender_dependent_relayhost_maps:
      - pattern: '[email protected]'
        result: 'DUNNO'
      - pattern: '[email protected]'
        result: 'DUNNO'
      - pattern: '*'
        result: "smtp:{{ ansible_lo['ipv4']['address'] }}:1025"

Alias z tabelą regexp (przekaż wszystkie lokalne maile do określonego adresu):

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_aliases_database_type: regexp
    postfix_aliases:
      - user: /.*/
        alias: [email protected]

Dla wsparcia AWS SES:

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_aliases:
      - user: root
        alias: [email protected]
    postfix_relayhost: email-smtp.us-east-1.amazonaws.com
    postfix_relaytls: true
    # AWS IAM SES credentials (not access key):
    postfix_sasl_user: AKIXXXXXXXXXXXXXXXXX
    postfix_sasl_password: ASDFXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Dla wsparcia MailHog:

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_aliases:
      - user: root
        alias: [email protected]
    postfix_relayhost: "{{ ansible_lo['ipv4']['address'] }}"
    postfix_relayhost_port: 1025
    postfix_sasl_auth_enable: false

Dla wsparcia Gmail:

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_aliases:
      - user: root
        alias: [email protected]
    postfix_relayhost: smtp.gmail.com
    postfix_relaytls: true
    postfix_smtp_tls_cafile: /etc/ssl/certs/ca-certificates.crt
    postfix_sasl_user: 'foo'
    postfix_sasl_password: 'bar'

Jeśli skonfigurujesz swoje konto Google dla dodatkowego bezpieczeństwa, aby używać weryfikacji dwuetapowej, wtedy Postfix może przestać wysyłać maile, a Ty możesz zauważyć komunikaty o błędach w pliku /var/log/mail.log.

Aby naprawić ten problem, musisz odwiedzić stronę (Autoryzacja aplikacji i witryn) w ustawieniach swojego konta Google. Na tej stronie wprowadź nazwę aplikacji do autoryzacji (Postfix) i kliknij przycisk Generuj. Ustaw zmienną postfix_sasl_password na hasło wygenerowane na tej stronie.

Prosty przykład, który pokazuje, jak dodać trochę surowej konfiguracji:

---
- hosts: all
  roles:
    - oefenweb.postfix
  vars:
    postfix_raw_options:
      - |
        milter_default_action = accept
        milter_protocol = 6
        smtpd_milters = unix:opendkim/opendkim.sock unix:opendmarc/opendmarc.sock unix:spamass/spamass.sock unix:clamav/clamav-milter.ctl
        milter_connect_macros = "i j {daemon_name} v {if_name} _"
        policyd-spf_time_limit = 3600

Licencja

MIT

Informacje o autorze

Mischa ter Smitten

Opinie, zgłaszanie błędów, prośby, ...

mile widziane!

O projekcie

Set up a postfix server in Debian-like systems

Zainstaluj
ansible-galaxy install Oefenweb.postfix
Licencja
mit
Pobrania
344.4k
Właściciel