Postfix seems to be ignoring the smtpd_recipient_restrictions = 
check_recipient_access instruction.

I've got a Postfix + Dovecot + Amavis setup and all works fine. I use address 
extensions for the virtual users, so I can "turn off" addresses that have been 
included on spammers' lists.

When an email is "To" one of the turned off addresses, the header_checks 
detects the message and deletes it. 

When an email is only RCPT TO one of the turned off addresses, the 
smtpd_recipient_restrictions = check_recipient_access instruction _should_ (I 
think) tell Postfix to reject the message. But the messages still end up in my 
inbox.

What am I missing here? How do I get check_recipient_access to reject the 
addresses specified in the recipient_checks table?

(Postfix 2.11.0 running on Ubuntu 14.04.3 LTS)

Thanks,

Neil.


Logs and config follows:



/var/log/mail.log (This email should be rejected, but is instead accepted)
-----------------

Nov  8 17:48:07 pserver postfix/smtpd[15446]: connect from mail-
db3on0074.outbound.protection.outlook.com[157.55.234.74]                        
                                                                                
                      
Nov  8 17:48:08 pserver postfix/smtpd[15446]: 0FC981C4: client=mail-
db3on0074.outbound.protection.outlook.com[157.55.234.74]                        
                                                                                
                  
Nov  8 17:48:08 pserver postfix/cleanup[15451]: 0FC981C4: message-
id=<2020849.HWx7EOcjLU@desktop>                                                 
                                                                                
                    
Nov  8 17:48:08 pserver postfix/qmgr[2638]: 0FC981C4: 
from=<u...@gooddomain.org>, size=17198, nrcpt=1 (queue active)                  
                                                                                
                              
Nov  8 17:48:08 pserver postfix/smtpd[15446]: disconnect from mail-
db3on0074.outbound.protection.outlook.com[157.55.234.74]                        
                                                                                
                   
Nov  8 17:48:10 pserver postfix/smtpd[15456]: connect from 
localhost[127.0.0.1]                                                            
                                                                                
                           
Nov  8 17:48:10 pserver postfix/smtpd[15456]: 286381DC: 
client=localhost[127.0.0.1]                                                     
                                                                                
                              
Nov  8 17:48:10 pserver postfix/cleanup[15451]: 286381DC: message-
id=<2020849.HWx7EOcjLU@desktop>                                                 
                                                                                
                    
Nov  8 17:48:10 pserver postfix/qmgr[2638]: 286381DC: 
from=<u...@gooddomain.org>, size=17633, nrcpt=1 (queue active)                  
                                                                                
                              
Nov  8 17:48:10 pserver postfix/smtpd[15456]: disconnect from 
localhost[127.0.0.1]                                                            
                                                                                
                        
Nov  8 17:48:10 pserver amavis[12838]: (12838-14) Passed CLEAN 
{RelayedInbound}, [157.55.234.74]:56949 [137.108.238.2] <u...@gooddomain.org> 
-> <user.ban...@example.com>, Queue-ID: 0FC981C4, Message-ID: 
<2020849.HWx7EOcjLU@desktop>, mail_id: I_IbbLvsH2OU, Hits: -1.902, size: 
17184, queued_as: 286381DC, 2017 ms                                             
                                                                                
                                                          
Nov  8 17:48:10 pserver postfix/smtp[15452]: 0FC981C4: 
to=<user.ban...@example.com>, relay=127.0.0.1[127.0.0.1]:10024, delay=2.2, 
delays=0.16/0.01/0/2, dsn=2.0.0, status=sent (250 2.0.0 from MTA(smtp:
[127.0.0.1]:10025): 250 2.0.0 Ok: queued as 286381DC)                           
                                                                                
                                                                                
                                                        
Nov  8 17:48:10 pserver postfix/qmgr[2638]: 0FC981C4: removed                   
                                                                                
                                                                                
      
Nov  8 17:48:10 pserver postfix/pipe[15457]: 286381DC: 
to=<user.ban...@example.com>, relay=dovecot, delay=0.22, delays=0.04/0/0/0.18, 
dsn=2.0.0, status=sent (delivered via dovecot service)                          
                                     
Nov  8 17:48:10 pserver postfix/qmgr[2638]: 286381DC: removed 


/var/log/mail.err
-----------------
<Nothing>


Config:
-------

root@pserver:/etc/postfix# postconf -nf
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
content_filter = smtp-amavis:[127.0.0.1]:10024
dovecot_destination_recipient_limit = 1
header_checks = regexp:/etc/postfix/header_checks
home_mailbox = Maildir/
inet_interfaces = all
mailbox_size_limit = 0
mailbox_transport = dovecot
mydestination = $myhostname localhost.$mydomain localhost
mydomain = example.org
myhostname = mail.$mydomain
mynetworks = 127.0.0.0/8, 192.168.1.0/24
myorigin = $mydomain
permit_mx_backup_networks = backup.com backup2.com
proxy_interfaces = 101.11.22.33
readme_directory = no
recipient_delimiter = .
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_data_restrictions = reject_unauth_pipelining
smtpd_helo_restrictions = reject_unknown_helo_hostname
smtpd_recipient_restrictions = permit_sasl_authenticated permit_mynetworks
    permit_mx_backup check_recipient_access hash:/etc/postfix/recipient_checks
    reject_unauth_destination
smtpd_relay_restrictions = permit_sasl_authenticated permit_mynetworks
    permit_mx_backup check_recipient_access hash:/etc/postfix/recipient_checks
    reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = private/auth
smtpd_sasl_type = dovecot
smtpd_sender_restrictions = reject_unknown_sender_domain
smtpd_tls_cert_file = /etc/ssl/example/certs/mail-cert.pem
smtpd_tls_key_file = /etc/ssl/example/private/mail-key.pem
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
virtual_alias_domains = otherdomain.org.uk other-domain.org.uk
virtual_alias_maps = hash:/etc/postfix/valiases
virtual_gid_maps = static:5000
virtual_mailbox_base = /var/vmail
virtual_mailbox_domains = /etc/postfix/vhosts
virtual_mailbox_maps = hash:/etc/postfix/vmaps
virtual_minimum_uid = 1000
virtual_transport = dovecot
virtual_uid_maps = static:5000



/etc/postfix/recipient_checks
-----------------------------

# Reject messages with these recipient addresses
user.bann...@example.com REJECT
user.ban...@example.com REJECT
user.bann...@example.com REJECT
user.bann...@example.com REJECT
person.ban...@example.com REJECT


Testing the map:
----------------

root@pserver:/etc/postfix# postmap -q user.va...@example.com 
hash:/etc/postfix/recipient_checks
root@pserver:/etc/postfix# postmap -q user.ban...@example.com 
hash:/etc/postfix/recipient_checks
REJECT

Reply via email to