So richten Sie mit Postfix+Dovecot+MySQL Catch-All für nicht vorhandene Benutzer in mehreren Domänen ein

So richten Sie mit Postfix+Dovecot+MySQL Catch-All für nicht vorhandene Benutzer in mehreren Domänen ein

Ich habe meinen E-Mail-Server mit Postfix, Dovecot und MySQL eingerichtet und alles ist in Ordnung. Derzeit hoste ich mehrere Domänen auf diesem Server. Jetzt möchte ich Catch-All nur für NICHT EXISTIERENDE Benutzer einrichten, und zwar wie folgt:

[email geschützt]—>[email geschützt]
[email geschützt](nicht vorhanden) —>[email geschützt]
[email geschützt]—>[email geschützt]
[email geschützt](nicht vorhanden) —>[email geschützt]

Danke

Antwort1

Sie benötigen einen Alias ​​für alle, dies kann mit einem @-Alias ​​erreicht werden.

Aus meiner Aliastabelle im Postfix-Admin

address: @domain.com
goto: [email protected]
domain: domain.com
active: 1

Jede E-Mail, die noch nicht definiert ist, fällt unter diesen Alias.

Als zusätzlichen Bonus möchten Sie möglicherweise einen Alias ​​erstellen und dessen E-Mail ablehnen. Dies kann mit einer Union-Abfrage in MySQL-Empfängerzuordnungen erreicht werden.

smtpd_recipient_restrictions = check_recipient_access mysql:/etc/postfix/sql/mysql_virtual_recipient_access.cf

query = select case active when 0 then 'REJECT' when 1 then 'OK' end as access from alias where address  = '%s' union select case active when 0 then 'REJECT' when 1 then 'OK' end as access from mailbox where username = '%s'

Dadurch können Sie Alias-Benutzer erstellen, die E-Mails ebenfalls einfach ablehnen.

verwandte Informationen