web-dev-qa-db-ja.com

メールアドレスでユーザーをマップする

CyrusImapでPostfixを使用しています。

ログインは、GSS-API(SSO)で認証することによって行われます。

すべてのユーザーのメールアカウントの形式は[email protected]です。

一部のユーザーは、メールアカウントが別の形式に従うことを望んでいます。

Pepeがメールアカウントと同じように[email protected]を持っている例。

Pepeからメールを受信するすべての人は、送信者として[email protected]を持っています。

そして、pepe1 @ ejemplo.orgに送信されたすべてのメールがpepeを受信すること。

私は次のものを持っています:

/ etc/postfix/main.cf add

virtual_alias_maps = hash:/etc/postfix/virtual
canonical_maps = hash:/etc/postfix/canonical
sender_canonical_maps = hash:/etc/postfix/canonical
recipient_canonical_maps = hash:/etc/postfix/canonical

/ etc/postfix/virtual

[email protected] [email protected]
[email protected]        [email protected]

/ etc/postfix/canonical

[email protected] [email protected]
pepe    pepe1

また、次の行を実行します。

postmap /etc/postfix/virtual
postmap /etc/postfix/canonical

[email protected]にメールを送信して欲しいものを入手した場合、pepe @ ejemplo.orgはそのメールを読むことができます。

しかし、pepe @ ejemplo.orgからメールを送信すると、pe @ ejemplo.orgからメールが届きますが、表示したいpepe1はありません。

何か助けがありますか?、助けてくれてありがとう。

1
Maria José

明確にするために、コメントの代わりにここに答えてください。

1)

Nano/etc/postfix/virtualで

[email protected] [email protected]

2)

/ etc/postfix/header_checks:

/^From:.*username@ejemplo\.org/ REPLACE From:[email protected]

3)実行:

postmap /etc/postfix/virtual
postmap /etc/postfix/sender_canonical

4)/etc/postfix/main.cfに以下を追加します。

virtual_alias_maps = hash:/etc/postfix/virtual
header_checks = regexp:/etc/postfix/header_checks

5)postfixの再起動:

 postfix stop
 postfix start

[email protected]によって送信されたメールは、送信者[email protected]として使用され、pepe1 @ ejemplo.orgに送信されたメールは、username @ ejemplo.orgに送信されます。

1
Maria José