他の回答に記載されている正規表現は、メールアドレスのユーザー部分と一致します(login-in-user @ example.org)。追加情報を次に示します。
完全なメールアドレスをユーザー名として使用するには、次の正規表現を使用します(例:)/etc/postfix/login_map
:
/^(.*)$/ ${1}
これは、ユーザー名が常に完全なメールアドレス(logged-in-user@example.org)であることを意味します-他の既存のユーザー名はそのアドレスからの送信を許可されていませんユーザーを追加します。
これは、複数のドメインが構成されているサーバーで使用される場合があります。ユーザーjohn.doe@example.comは、そのアドレスからのみ送信でき、john.doe @ example.org(異なるユーザーと電子メール、異なる人)からは送信できません。この場合、ユーザー名john.doeはあいまいになります。
また、構成によっては、このファイルを指す必要があるsmtpd_sender_login_maps設定がmaster.cf(main.cfではなく)にある場合があります。Dovecotの公式ドキュメントには次の例があります(SASL / submissionを使用している場合):
submission inet n - n - - smtpd
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_sasl_type=dovecot
-o smtpd_sasl_path=private/auth
-o smtpd_sasl_security_options=noanonymous
-o smtpd_sasl_local_domain=$myhostname
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o smtpd_sender_login_maps=hash:/etc/postfix/virtual
-o smtpd_sender_restrictions=reject_sender_login_mismatch
-o smtpd_recipient_restrictions=reject_non_fqdn_recipient,reject_unknown_recipient_domain,permit_sasl_authenticated,reject
この例では、正しいファイルを指すように設定を調整し、タイプとしてregexまたは(より良い)pcreを使用する必要があります。特に、「virtual」というファイルがすでに別の目的で使用されている場合(たとえば、公式のPostfixの例にあるvirtual_alias_mapsの場合)、ログインマッピングに別のファイルを使用する必要があります。
から:
smtpd_sender_login_maps=hash:/etc/postfix/virtual
に:
smtpd_sender_login_maps=pcre:/etc/postfix/login_map