Hello,
I'm using postfix postfix-2.3.3-2 x86 configured for a single domain.
Clients are allowed to relay only after they have performed SMTP AUTH
or if they connect from $mynetworks. (postconf -n posted at
http://pastebin.ca/1356405)

I'd like to mimic M$ Exchange "recall" behaviour for emails sent by
relay-allowed clients.

To accomplish this, I thought of putting all relayed mail into the
'hold' queue by default, then with a cron script to release it
periodically (ex. "ls -lt" and "postsuper -r <maild older than N
minutes>"), and manually use 'postsuper -d' after instructing users to
call the helpdesk if they want to 'recall' a message they sent.

First thing that comes into mind after reading "man 5 access" is to
modify the "smtpd_sender_restrictions" section in main.cf:

[...]
smtpd_sender_restrictions =
    check_sender_access hash:/etc/postfix/check_sender_access_hash
    reject_non_fqdn_sender
    reject_unknown_sender_domain

...and in check_sender_access_hash to put:
mynetworks.subnet  HOLD
mydomain.tld   HOLD

What do you think about the above approach? Would there be better alternatives?
Has anyone implemented similar setups? Would the above approach catch
all relayed mail ? Would a "pcre:" table perform better than "hash:"
for this particular purpose ?

Many thanks,
Costin

Reply via email to