Verteilerliste mit virtual aliases - address rewriting

Robert Schetterer rs at sys4.de
Mo Okt 3 10:32:53 CEST 2022


Am 03.10.22 um 09:11 schrieb Andreas Wass - Glas Gasperlmair:
> Hallo Liste,
> 
> Hab jetzt ziemlich rumprobiert und lt. folgender readme müsste es doch 
> möglich sein einen alias in seine einzelnen Adressen umzuschreiben:
> Hier drin steht:
> 
>   *
> 
>     Replace an address by multiple addresses. For example, replace the
>     address of an alias by the addresses listed under that alias.
> 
> readme:
> https://www.postfix.org/ADDRESS_REWRITING_README.html
> 
> meine sender_canonical_maps bzw. meine recipient_canonical_maps sehen so 
> aus:
> abt-versand at meinedomain.at 
> email1 at meinedomain.at,email2 at meinedomain.at,email3 at meinedomain.at
> 
> Versende ich nun eine E-Mail an meine externe private E-Mail-Adresse und 
> CC an abt-versand at meinedomain.at, sehe ich trotzdem nur den alias 
> "abt-versand at meinedomain.at" nicht aber die einzelnen 3 E-Mail-Adressen, 
> die diesen alias haben.
> 
> Keiner eine Idee?

Idee schon, aber nicht mit puren postfix
du koenntest das wohl mit einer .forward , oder mit sieve machen etc 
evtl auch mit /usr/bin/sendmail ansonsten wuerde mir nur header_checks 
einfallen

hier ist sowas aehnliches muesst man dementsprechend abaendern

https://serverfault.com/questions/643070/postfix-rewriting-sender-with-generic-header-check

aber das ist arges gefrickel, sorry mehr faellt mir grad nicht ein

milter koennte auch funktionieren
http://www.snertsoft.com/sendmail/milter-ahead/

so wie ich das sehe kannst du die Mail vor der weiterleitung
manipulieren oder danach, aber nicht waehrend oder mit der postfix 
weiterleitung

> 
> VG, Andi
> 
> Am 30.09.2022 um 11:29 schrieb Andreas Wass - Glas Gasperlmair:
>> Hallo Liste,
>>
>> Gleich vorab: Bitte keine Kommentare bezüglich "verwende doch mailman" 
>> oder "schreib den alias doch ins BCC Feld"
>>
>> Ich habe da einige aliases in meiner DB, welche ich als Verteilerliste 
>> verwenden möchte.
>> virtual_alias_maps = proxy:mysql:/etc/postfix/mysql-virtual-alias-maps.cf
>>
>> +-----+-----------+------------------------+------------------------+
>> | id  | domain_id | source                 | destination |
>> +-----+-----------+------------------------+------------------------+
>> | 1 |         2 | abt-versand at meinedomain.at | email1 at meinedomain.at |
>> | 2 |         2 | abt-versand at meinedomain.at | email2 at meinedomain.at |
>> | 3 |         2 | abt-versand at meinedomain.at | email3 at meinedomain.at  |
>> +-----+-----------+------------------------+------------------------+
>>
>> Das ganze funktioniert prima, allerdings hätte ich gerne, dass 
>> Empfänger nicht sehen, dass das E-Mail an abt-versand at meinedomain.at 
>> gesendet wurde, sondern dass das E-Mail an email1 at meinedomain.at, 
>> email2 at meinedomain.at und email3 at meinedomain.at gesendet wurde.
>>
>> Ich möchte einfach verhindern, wenn ein E-Mail z.B. extern an 
>> office at irgendeinkunde.at versendet und der alias ("Verteiler" ) 
>> abt-versand at meinedomain.at  im Feld CC steht, dass dieser alias 
>> (Verteiler) NICHT als solcher beim Kunden z.B. ersichtlich ist.
>> Trotzdem möchte ich, dass der Kunde sieht, dass das E-Mail als CC auch 
>> an email1 at meinedomain.at, email2 at meinedomain.at und 
>> email3 at meinedomain.at gesendet wurde
>>
>> Kann man das mit address rewriting umsetzen und wenn ja wie?
>>
>> Ich hoffe, ich habe mich klar genug ausgedrückt
>>
>> Anbei noch meine master.cf, falls hier was zu ändern ist:
>>
>> # 
>> ==========================================================================
>> # service type  private unpriv  chroot  wakeup  maxproc command + args
>> #               (yes)   (yes)   (no)    (never) (100)
>> # 
>> ==========================================================================
>> #smtp      inet  n       -       y       -       -       smtpd
>> smtp      inet  n       -       y       -       1       postscreen
>> smtpd     pass  -       -       y       -       -       smtpd
>>   -o smtpd_sasl_auth_enable=no
>> dnsblog   unix  -       -       y       -       0       dnsblog
>> tlsproxy  unix  -       -       y       -       0       tlsproxy
>> submission inet n       -       y       -       -       smtpd
>>   -o syslog_name=postfix/submission
>>   -o smtpd_tls_security_level=encrypt
>>   -o smtpd_sasl_auth_enable=yes
>> #  -o smtpd_tls_auth_only=yes
>>   -o smtpd_reject_unlisted_recipient=no
>> #  -o smtpd_client_restrictions=$mua_client_restrictions
>> #  -o smtpd_helo_restrictions=$mua_helo_restrictions
>> #  -o smtpd_sender_restrictions=$mua_sender_restrictions
>>   -o smtpd_recipient_restrictions=
>>   -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
>> #  -o milter_macro_daemon_name=ORIGINATING
>> #smtps     inet  n       -       y       -       -       smtpd
>> #  -o syslog_name=postfix/smtps
>> #  -o smtpd_tls_wrappermode=yes
>> #  -o smtpd_sasl_auth_enable=yes
>> #  -o smtpd_reject_unlisted_recipient=no
>> #  -o smtpd_client_restrictions=$mua_client_restrictions
>> #  -o smtpd_helo_restrictions=$mua_helo_restrictions
>> #  -o smtpd_sender_restrictions=$mua_sender_restrictions
>> #  -o smtpd_recipient_restrictions=
>> #  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
>> #  -o milter_macro_daemon_name=ORIGINATING
>> #628       inet  n       -       y       -       -       qmqpd
>> pickup    unix  n       -       y       60      1       pickup
>> cleanup   unix  n       -       y       -       0       cleanup
>> qmgr      unix  n       -       n       300     1       qmgr
>> #qmgr     unix  n       -       n       300     1       oqmgr
>> tlsmgr    unix  -       -       y       1000?   1       tlsmgr
>> rewrite   unix  -       -       y       -       - trivial-rewrite
>> bounce    unix  -       -       y       -       0       bounce
>> defer     unix  -       -       y       -       0       bounce
>> trace     unix  -       -       y       -       0       bounce
>> verify    unix  -       -       y       -       1       verify
>> flush     unix  n       -       y       1000?   0       flush
>> proxymap  unix  -       -       n       -       -       proxymap
>> proxywrite unix -       -       n       -       1       proxymap
>> smtp      unix  -       -       y       -       -       smtp
>> relay     unix  -       -       y       -       -       smtp
>>         -o syslog_name=postfix/$service_name
>> #       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
>> showq     unix  n       -       y       -       -       showq
>> error     unix  -       -       y       -       -       error
>> retry     unix  -       -       y       -       -       error
>> discard   unix  -       -       y       -       -       discard
>> local     unix  -       n       n       -       -       local
>> virtual   unix  -       n       n       -       -       virtual
>> lmtp      unix  -       -       y       -       -       lmtp
>> anvil     unix  -       -       y       -       1       anvil
>> scache    unix  -       -       y       -       1       scache
>> postlog   unix-dgram n  -       n       -       1       postlogd
>> #
>> # ====================================================================
>> # Interfaces to non-Postfix software. Be sure to examine the manual
>> # pages of the non-Postfix software to find out what options it wants.
>> #
>> # Many of the following services use the Postfix pipe(8) delivery
>> # agent.  See the pipe(8) man page for information about ${recipient}
>> # and other message envelope options.
>> # ====================================================================
>> #
>> # maildrop. See the Postfix MAILDROP_README file for details.
>> # Also specify in main.cf: maildrop_destination_recipient_limit=1
>> #
>> maildrop  unix  -       n       n       -       -       pipe
>>   flags=DRXhu user=vmail argv=/usr/bin/maildrop -d ${recipient}
>> #
>> # ====================================================================
>> #
>> # Recent Cyrus versions can use the existing "lmtp" master.cf entry.
>> #
>> # Specify in cyrus.conf:
>> #   lmtp    cmd="lmtpd -a" listen="localhost:lmtp" proto=tcp4
>> #
>> # Specify in main.cf one or more of the following:
>> #  mailbox_transport = lmtp:inet:localhost
>> #  virtual_transport = lmtp:inet:localhost
>> #
>> # ====================================================================
>> #
>> # Cyrus 2.1.5 (Amos Gouaux)
>> # Also specify in main.cf: cyrus_destination_recipient_limit=1
>> #
>> #cyrus     unix  -       n       n       -       -       pipe
>> #  flags=DRX user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m 
>> ${extension} ${user}
>> #
>> # ====================================================================
>> # Old example of delivery via Cyrus.
>> #
>> #old-cyrus unix  -       n       n       -       -       pipe
>> #  flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user}
>> #
>> # ====================================================================
>> #
>> # See the Postfix UUCP_README file for configuration details.
>> #
>> uucp      unix  -       n       n       -       -       pipe
>>   flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail 
>> ($recipient)
>> #
>> # Other external delivery methods.
>> #
>> ifmail    unix  -       n       n       -       -       pipe
>>   flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
>> bsmtp     unix  -       n       n       -       -       pipe
>>   flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender 
>> $recipient
>> scalemail-backend unix -       n       n       -       2 pipe
>>   flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store 
>> ${nexthop} ${user} ${extension}
>> mailman   unix  -       n       n       -       -       pipe
>>   flags=FRX user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py 
>> ${nexthop} ${user}
>>
> 


-- 
[*] sys4 AG

http://sys4.de, +49 (89) 30 90 46 64
Schleißheimer Straße 26/MG, 80333 München

Sitz der Gesellschaft: München, Amtsgericht München: HRB 199263
Vorstand: Patrick Ben Koetter, Marc Schiffbauer
Aufsichtsratsvorsitzender: Florian Kirstein


Mehr Informationen über die Mailingliste postfix-users