Oefenweb.postfix

Postfix

CI
Ansible Galaxy

Richten Sie einen Postfix-Server in Debian-ähnlichen Systemen ein.

Anforderungen

Keine

Variablen

  • postfix_install [Standard: [postfix, mailutils, libsasl2-2, sasl2-bin, libsasl2-modules]]: Zu installierende Pakete

  • postfix_hostname [Standard: {{ ansible_fqdn }}]: Hostname, verwendet für myhostname und in mydestination

  • postfix_mailname [Standard: {{ ansible_fqdn }}]: Mail-Name (in /etc/mailname), verwendet für myorigin

  • postfix_compatibility_level [optional]: Mit aktivierter Abwärtskompatibilität (der Wert compatibility_level ist kleiner als der eingebaute Wert von Postfix) sucht Postfix nach Einstellungen, die auf ihrem impliziten Standardwert belassen wurden, und protokolliert eine Nachricht, wenn ein abwärtskompatibler Standardwert benötigt wird (z.B. 2, Postfix >= 3.0)

  • postfix_default_database_type [Standard: hash]: Der Standarddatenbanktyp für die Verwendung in newaliases, postalias und postmap Befehlen

  • postfix_aliases [Standard: []]: Aliase, die in /etc/aliases vorhanden sein müssen

  • postfix_aliases_database_type [Standard: "{{ postfix_default_database_type }}"]: Der Datenbanktyp für Aliase

  • postfix_virtual_aliases [Standard: []]: Virtuelle Aliase, die in /etc/postfix/virtual vorhanden sein müssen

  • postfix_sender_canonical_maps [Standard: []]: Sender-Adressenumschreibung in /etc/postfix/sender_canonical_maps (siehe)

  • postfix_sender_canonical_maps_database_type [Standard: "{{ postfix_default_database_type }}"]: Der Datenbanktyp für die Verwendung in postfix_sender_canonical_maps

  • postfix_recipient_canonical_maps [Standard: []]: Empfänger-Adressenumschreibung in /etc/postfix/recipient_canonical_maps (siehe)

  • postfix_recipient_canonical_maps_database_type [Standard: "{{ postfix_default_database_type }}"]: Der Datenbanktyp für die Verwendung in postfix_recipient_canonical_maps

  • postfix_transport_maps [Standard: []]: Transportzuordnung basierend auf der Empfängeradresse /etc/postfix/transport_maps (siehe)

  • postfix_transport_maps_database_type [Standard: "{{ postfix_default_database_type }}"]: Der Datenbanktyp für die Verwendung in postfix_transport_maps

  • postfix_sender_dependent_relayhost_maps [Standard: []]: Transportzuordnung basierend auf der Senderadresse /etc/postfix/sender_dependent_relayhost_maps (siehe)

  • postfix_header_checks [Standard: []]: Nachschlagetabellen für die Inhaltsprüfung der primären Nicht-MIME-Nachrichtenkopfzeilen /etc/postfix/header_checks (siehe)

  • postfix_header_checks_database_type [Standard: regexp]: Der Datenbanktyp für die Verwendung in header_checks

  • postfix_generic [Standard: postfix_smtp_generic_maps]: Veraltet, verwenden Sie postfix_smtp_generic_maps

  • postfix_smtp_generic_maps [Standard: []]: Generische Tabellenadressenzuordnung in /etc/postfix/generic (siehe)

  • postfix_smtp_generic_maps_database_type [Standard: "{{ postfix_default_database_type }}"]: Der Datenbanktyp für die Verwendung in smtp_generic_maps

  • postfix_mydestination [Standard: ["{{ postfix_hostname }}", 'localdomain', 'localhost', 'localhost.localdomain']]: Gibt an, welche Domains diese Maschine lokal zustellen wird, anstatt sie an eine andere Maschine weiterzuleiten

  • postfix_mynetworks [Standard: ['127.0.0.0/8', '[::ffff:127.0.0.0]/104', '[::1]/128']]: Die Liste der "vertrauenswürdigen" Remote-SMTP-Clients, die mehr Privilegien haben als "Fremde"

  • postfix_inet_interfaces [Standard: all]: Netzwerkschnittstellen zum Binden (siehe)

  • postfix_inet_protocols [Standard: all]: Die Internetprotokolle, die von Postfix verwendet werden, wenn Verbindungen hergestellt oder akzeptiert werden (siehe)

  • postfix_smtp_ipv4_bind [optional]: Ausgehende Netzwerkschnittstellen zu verwenden (IPv4) (siehe)

  • postfix_smtp_ipv6_bind [optional]: Ausgehende Netzwerkschnittstellen zu verwenden (IPv6) (siehe)

  • postfix_relayhost [Standard: '' (kein Relay-Host)]: Hostname, um alle E-Mails weiterzuleiten

  • postfix_relayhost_mxlookup [Standard: false (keine MX-Abfrage verwenden)]: Abfrage nach MX-Eintrag anstelle des A-Eintrags für den Relayhost

  • postfix_relayhost_port [Standard: 587]: Relay-Port (auf postfix_relayhost, falls gesetzt)

  • postfix_relaytls [Standard: false]: Verwenden Sie TLS beim Senden mit einem Relay-Host

  • postfix_smtpd_client_restrictions [optional]: Liste von Client-Beschränkungen (siehe)

  • postfix_smtpd_helo_restrictions [optional]: Liste von HELO-Beschränkungen (siehe)

  • postfix_smtpd_sender_restrictions [optional]: Liste von Sender-Beschränkungen (siehe)

  • postfix_smtpd_recipient_restrictions [optional]: Liste von Empfänger-Beschränkungen (siehe)

  • postfix_smtpd_relay_restrictions [optional]: Liste von Zugriffsrechten zur Steuerung des E-Mail-Relays (siehe)

  • postfix_smtpd_data_restrictions [optional]: Liste von Datenbeschränkungen (siehe)

  • postfix_sasl_auth_enable [Standard: true]: Aktivieren Sie die SASL-Authentifizierung im SMTP-Client

  • postfix_sasl_user [Standard: postmaster@{{ ansible_domain }}]: SASL Relay-Benutzername

  • postfix_sasl_password [Standard: k8+haga4@#pR]: SASL Relay-Passwort Ändern Sie dies unbedingt!

  • postfix_sasl_security_options [Standard: noanonymous]: SMTP-Client SASL-Sicherheitsoptionen

  • postfix_sasl_tls_security_option [Standard: noanonymous]: SMTP-Client SASL-TLS-Sicherheitsoptionen

  • postfix_sasl_mechanism_filter [Standard: '']: SMTP-Client SASL-Authentifizierungsmechanismusfilter (siehe)

  • postfix_smtp_tls_security_level [Standard: encrypt]: Die standardmäßige SMTP-TLS-Sicherheitsstufe für den Postfix SMTP-Client (siehe)

  • postfix_smtp_tls_wrappermode [Standard: false]: Fordern Sie, dass der Postfix SMTP-Client sich mit dem veralteten SMTPS-Protokoll anstelle des STARTTLS-Befehls verbindet (siehe)

  • postfix_smtp_tls_note_starttls_offer [Standard: true]: Protokolliert den Hostnamen eines Remote-SMTP-Servers, der STARTTLS anbietet, wenn TLS für diesen Server noch nicht aktiviert ist (siehe)

  • postfix_smtp_tls_cafile [optional]: Eine Datei, die CA-Zertifikate der Root-CA enthält, die zum Signieren entweder der Remote-SMTP-Serverzertifikate oder der zwischenstaatlichen CA-Zertifikate vertrauenswürdig sind (z.B. /etc/ssl/certs/ca-certificates.crt)

  • postfix_smtpd_banner [Standard: $myhostname ESMTP $mail_name (Ubuntu)]: Begrüßungsbanner Sie MÜSSEN $myhostname am Anfang des Textes angeben. Dies ist durch das SMTP-Protokoll erforderlich.

  • postfix_disable_vrfy_command [Standard: true]: Deaktivieren Sie den SMTP VRFY-Befehl. Dies stoppt einige Techniken zum Sammeln von E-Mail-Adressen

  • postfix_message_size_limit [Standard: 10240000]: Die maximale Größe in Byte einer Nachricht, einschließlich der Umschlaginformationen

  • postfix_smtpd_tls_cert_file [Standard: /etc/ssl/certs/ssl-cert-snakeoil.pem]: Pfad zur Zertifikatsdatei

  • postfix_smtpd_tls_key_file [Standard: /etc/ssl/certs/ssl-cert-snakeoil.key]: Pfad zur Schlüsseldatei

  • postfix_smtpd_security_level [optional]: Die SMTP-TLS-Sicherheitsstufe für den Postfix SMTP-Server (siehe)

  • postfix_smtp_tls_mandatory_ciphers [optional]: Die Mindest-TLS-Verschlüsselungsstärke, die der Postfix SMTP-Client mit obligatorischem TLS verwenden wird (siehe)

  • postfix_smtp_tls_mandatory_protocols [optional]: TLS-Protokolle, die der Postfix SMTP-Client mit obligatorischer TLS-Verschlüsselung verwenden wird (siehe)

  • postfix_smtp_tls_protocols [optional]: TLS-Protokolle, die der Postfix SMTP-Client mit opportunistischer TLS-Verschlüsselung verwenden wird (siehe)

  • postfix_smtpd_tls_mandatory_ciphers [optional]: Die Mindest-TLS-Verschlüsselungsstärke, die der Postfix SMTP-Server mit obligatorischer TLS-Verschlüsselung verwenden wird. (siehe)

  • postfix_smtpd_tls_mandatory_protocols [optional]: TLS-Protokolle, die vom Postfix SMTP-Server mit obligatorischer TLS-Verschlüsselung akzeptiert werden (siehe)

  • postfix_smtpd_tls_protocols [optional]: TLS-Protokolle, die vom Postfix SMTP-Server mit opportunistischer TLS-Verschlüsselung akzeptiert werden (siehe)

  • postfix_raw_options [Standard: []]: Liste von Zeilen (zum Übergeben zusätzlicher (nicht unterstützter) Konfiguration)

Abhängigkeiten

  • debconf
  • debconf-utils

Beispiel(e)

Ein einfaches Beispiel, das kein SASL-Relaying verwendet:

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

Ein einfaches Beispiel mit virtuellen Aliassen für das E-Mail-Forwarding, das kein SASL-Relaying verwendet:

---
- 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]

Ein einfaches Beispiel, das die Absenderadresse umschreibt:

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

Geben Sie den Relaishostnamen an, wenn Sie das Relaying aktivieren möchten:

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

Geben Sie den Relaisdomänennamen an und verwenden Sie MX-Einträge, wenn Sie das Relaying zu den DNS-MX-Einträgen einer Domain aktivieren möchten:

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

Bedingtes 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"

Aliases mit RegExp-Tabelle (alle lokalen E-Mails an die angegebene Adresse weiterleiten):

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

Für AWS SES-Unterstützung:

---
- 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-Anmeldeinformationen (kein Zugriffsschlüssel):
    postfix_sasl_user: AKIXXXXXXXXXXXXXXXXX
    postfix_sasl_password: ASDFXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Für MailHog-Unterstützung:

---
- 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

Für Gmail-Unterstützung:

---
- 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'

Wenn Sie Ihr Google-Konto für zusätzliche Sicherheit konfigurieren, um die 2-Schritte-Verifizierung zu verwenden, wird Postfix möglicherweise keine E-Mails mehr senden, und Sie könnten Fehlermeldungen in der Datei /var/log/mail.log bemerken.

Um dieses Problem zu beheben, müssen Sie die Seite (Anwendungen und Sites autorisieren) unter Ihren Google-Kontoeinstellungen besuchen. Geben Sie auf dieser Seite den Namen der zu autorisierenden Anwendung (Postfix) ein und klicken Sie auf die Schaltfläche Generieren. Setzen Sie die Variable postfix_sasl_password mit dem von dieser Seite generierten Passwort.

Ein einfaches Beispiel, das zeigt, wie man einige rohe Konfiguration hinzufügt:

---
- 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

Lizenz

MIT

Autorinformationen

Mischa ter Smitten

Feedback, Fehlerberichte, Anfragen, ...

Sind willkommen!

Über das Projekt

Set up a postfix server in Debian-like systems

Installieren
ansible-galaxy install Oefenweb.postfix
Lizenz
mit
Downloads
344.4k
Besitzer