memiah.mail-relay

Postfixメールリレー

メールリレーを介して送信するためにPostfixを設定します。たとえば、Amazon SESを使用します。

要件

選択したメールリレーオプションがAmazon AWS SESを使用する場合、「AmazonSesSendingAccess-[ユーザー名]」というIAMユーザーポリシーを作成します。例えば:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ses:SendEmail",
                "ses:SendRawEmail"
            ],
            "Resource": "*"
        }
    ]
}

役割変数

利用可能な変数は以下に示され、デフォルト値も記載されています(defaults/main.ymlを参照):

  • postfix_relay_enabled: True

デフォルトでPostfixの設定は有効です。無効にするにはFalseに設定します。

  • postfix_relay_server: ""

Postfixリレーサーバのホスト名。例:"email-smtp.region.amazonaws.com"。

  • postfix_relay_port: 587

Postfixリレーサーバのポート。

  • postfix_myhostname: False

myhostnameパラメーターは、メールシステムのインターネットホスト名を指定します。デフォルトはgethostname()から取得した完全修飾ドメイン名を使用します。$myhostnameは他の多くの設定パラメーターのデフォルト値として使用されます。

  • postfix_mydomain: False

mydomainパラメーターは、ローカルインターネットドメイン名を指定します。デフォルトは$myhostnameの最初の部分を除いたものです。$mydomainは他の多くの設定パラメーターのデフォルト値として使用されます。

  • postfix_myorigin: False

myoriginパラメーターは、ローカルで送信されたメールがどのドメインから来ているように見えるかを指定します。デフォルトは$myhostnameを追加することになっています。複数のマシンを持つドメインを運営している場合、(1)これを$mydomainに変更し、(2)各ユーザーをuser@that.users.mailhostにエイリアスするドメイン全体のエイリアスデータベースを設定する必要があります。

一貫性を保つため、myoriginは、@ドメイン部分のない受信者アドレスに追加されるデフォルトのドメイン名も指定します。

  • postfix_relay_recipient_canonical_maps: regexp:/etc/postfix/recipient_canonical_maps

封筒およびヘッダー受信者アドレスのアドレスマッピングルックアップテーブル。デフォルトではregexpテーブルが使用されます。

  • postfix_relay_recipient_canonical: []

    - pattern: "/./" (必須)

    address: "redirect@email.domain" (必須)

正規表現テーブル形式に基づく標準受信者のリスト。

  • postfix_relay_recipient_canonical_classes: envelope_recipient

canonical_mapsアドレスマッピングの対象となるアドレス。指定できる値:envelope_senderenvelope_recipientheader_senderheader_recipientのいずれか。

すべてのメールをリダイレクトするためのメールアドレス。デフォルトでは無効で、一般的には開発環境でのみ有効にするべきです。指定すると、すべてのpostfix_relay_recipient_canonical項目を上書きします。

  • postfix_relay_catch_all_pattern: /./

すべてのメールをトラップし、キャッチオールアドレスに送信するためのデフォルト(正規表現)パターン。

  • postfix_virtual_alias_maps:
    • address: root alias: root@localhost

仮想エイリアスを設定することで、ローカルアカウントにメールを配信します。デフォルトでは、root宛てのメールはroot@localhostに送信されます(ローカルに配信)。デフォルトのエイリアスをすべて無効にするには、この値をFalseに設定します。

  • postfix_relayhost_maps: []

    - domain: "@domain.com" (必須)

    server: "" (オプション、デフォルトはpostfix_relay_server)

    port: 587 (オプション、デフォルトはpostfix_relay_port)

    user: "user-here" (オプション、デフォルトはpostfix_relay_user)

    password: "password-here" (オプション、デフォルトはpostfix_relay_password)

smtp_sender_dependent_authenticationを有効にし、送信者のメールアドレスに応じて異なる資格情報で複数のホストを介してメールを中継できるようにします。ドメイン値は、[email protected]のフルアドレスとして指定するか、@domain.comのワイルドカードとして指定できます。(Postfixリレーhost_mapドキュメントを参照。)

  • postfix_relay_user: ""

Postfixリレー用のユーザーを設定します。

  • postfix_relay_password: ""

リレーサーバのパスワードを設定します。

  • postfix_relay_secret_key: "secret-key-here"

指定されたAWSシークレットキーからリレーパスワードを生成します。あるいは、既存のAWSシークレットキーをAmazon SES SMTPパスワードに変換して、手動でpostfix_relay_password値を入力することも可能です。付属のbashスクリプトを使用して:

./scripts/aws-ses-smtp-password.sh secret-key-here

依存関係

なし。

例プレイブック

ユーザー向けに、パラメーターとして渡される変数を含む役割の使い方の例を示します:

- hosts: servers
  become: yes
  vars_files:
    - vars/main.yml
  roles:
    - memiah.mail-relay

vars/main.yml内の内容

postfix_relay_user: "user_here"
postfix_relay_password: "password_here"
postfix_relay_server: "email-smtp.region.amazonaws.com"

ライセンス

MIT / BSD

著者情報

この役割は2016年にMemiah Limitedによって作成されました。

プロジェクトについて

Configure postfix SMTP relay.

インストール
ansible-galaxy install memiah.mail-relay
ライセンス
Unknown
ダウンロード
457
所有者