I need to block an external email address in postfix from sending me emails. This is an external email address of a third party domain name that I'm not controlling.
The reason why I need to block it is because they have something misconfigured and I'm getting a message saying "Warning, your message has not being delivered yet", every second or so. I already contacted their tech support, but they are taking a long time to fix it and in the meantime, my server and my users are suffering.
I tried doing this. In my mail.cf I added:
smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/sender_access, permit
and in /etc/postfix/sender_access I added:
[email protected] REJECT
I run
postmap hash:sender_access
and restart postfix, but it seemed to have no effect.
I also tried:
smtpd_recipient_restrictions = check_sender_access hash:/etc/postfix/sender_access
in the main.cf, which fails with this error:
postfix/smtpd[2144]: fatal: parameter "smtpd_recipient_restrictions": specify at least one working instance of: check_relay_domains, reject_unauth_destination, reject, defer or defer_if_permit
Trying:
smtpd_recipient_restrictions = check_sender_access hash:/etc/postfix/sender_access, permit
gave me the same error.
smtpd_sender_restrictions
only affects mail based onreturn path
, not MAIL FROM header as it says in the docs. Not sure if this is a bug or what. I tried spoofing an email to my server that should have been rejected by settingfrom
in the header and it had no effect. When i added the-f
flag to sendmail to specify return path it successfully rejected my email.smtpd_sender_restrictions
will only block mail based on itsReturn-Path
header NOT itsFrom
header. So if yoursmtpd_sender_restrictions hash:/etc/postfix/block
contains[email protected] REJECT
mail withFrom: [email protected]
will NOT be rejected; rather, only mail withReturn-Path: [email protected]
will be blocked (!!) Arrrrgh.