Not getting mail errors back when sending out emails to non-existent email accounts?

14 posts / 0 new
Last post
#1 Fri, 11/29/2013 - 08:43
netizen

Not getting mail errors back when sending out emails to non-existent email accounts?

Hello,

I am trying to solve this mystery and I am not sure which setting to look for. I don't have any issues sending or receving emails from my server (Centos 6.4 / Virtualmin all up to date). The problem is that I am not receiving an error back when for example an email gets rejected for whatever reason from the other end (ANY server). I have also enabled the "Request Delivery Receipt" in Outlook but I am not getting any errors (or any receipt anyway) when I deliberately send emails to unknown users of an existing domain. Sending the same emails from my Gmail works ok with the usual reports. Why I am not getting those when I am using my server?

Any ideas?

Note that I AM getting errors back if I send an email to an unknown host.

Fri, 11/29/2013 - 13:24
Locutus

First step here is, like always and with any Linux problem, to take a look at the logfiles in /var/log. The process of returning an undeliverable mail should be noted there, also any problems that occur during that.

Sat, 11/30/2013 - 08:18
netizen

I am sorry for omitting the obvious but I have done this already and I couldn't spot the error: Here is an extract of maillog during an attempt to send an email from mynormal user to a NOT-existing email account (of a real domain, hosted elsewhere).

I have made some substitutions of real data.

Nov 30 13:48:00 myserver-hostname postfix/smtpd[26992]: connect from []

Nov 30 13:48:00 myserver-hostname postfix/smtpd[26992]: setting up TLS connection from []

Nov 30 13:48:00 myserver-hostname postfix/smtpd[26992]: Anonymous TLS connection established from []: TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)

Nov 30 13:48:01 myserver-hostname postfix/smtpd[26992]: NOQUEUE: reject: RCPT from []: 550 5.1.1 NOT-existing-mailbox@an-existing-domain.net: Recipient address rejected: User unknown in virtual alias table; from=my-existing-user@mydomain.com to=NOT-existing-mailbox@an-existing-domain.net proto=ESMTP helo=

Nov 30 13:48:04 myserver-hostname postfix/smtpd[26992]: disconnect from []

That's all.

EDIT:

smtpd_sender_restrictions = warn_if_reject reject_unknown_sender_domain reject_non_fqdn_sender

smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination reject_rbl_client zen.spamhaus.org reject_rbl_client bl.spamcop.net check_policy_service unix:/var/spool/postfix/postgrey/socket

Are those correct?

Mon, 12/02/2013 - 07:58
netizen

Anyone's input please?

Mon, 12/02/2013 - 08:12
Locutus

I have no immediate idea what could be wrong for you, but here's the log transcript of a "correct" NDR:

Dec  2 14:55:09 australis postfix/smtps/smtpd[9534]: connect from xxx[1.1.1.1]
Dec  2 14:55:09 australis postfix/smtps/smtpd[9534]: 8E55C44A19: client=xxx[1.1.1.1], sasl_method=PLAIN, sasl_username=xxx@xxx.de
Dec  2 14:55:09 australis postfix/cleanup[9538]: 8E55C44A19: message-id=<921504329.20131202145510@xxx.de>
Dec  2 14:55:09 australis postfix/qmgr[2042]: 8E55C44A19: from=<user@domain.de>, size=691, nrcpt=1 (queue active)
Dec  2 14:55:09 australis postfix/smtp[9539]: 8E55C44A19: to=<gejiogjweiogjwreoigjergi@t-online.de>, relay=mx00.t-online.de[194.25.134.8]:25, delay=0.19, delays=0.09/0/
0.04/0.06, dsn=5.1.1, status=bounced (host mx00.t-online.de[194.25.134.8] said: 550-5.1.1 user unknown 550 5.1.1 Unknown recipient. (in reply to RCPT TO command))
Dec  2 14:55:09 australis postfix/cleanup[9538]: B8B4E46657: message-id=<20131202135509.B8B4E46657@myhost.mydomain.de>
Dec  2 14:55:09 australis postfix/qmgr[2042]: B8B4E46657: from=<>, size=2693, nrcpt=1 (queue active)
Dec  2 14:55:09 australis postfix/bounce[9540]: 8E55C44A19: sender non-delivery notification: B8B4E46657
Dec  2 14:55:09 australis postfix/qmgr[2042]: 8E55C44A19: removed
Dec  2 14:55:09 australis spamd[26143]: spamd: connection from localhost [127.0.0.1] at port 53891
Dec  2 14:55:09 australis spamd[26143]: spamd: setuid to user@domain.de succeeded
Dec  2 14:55:10 australis spamd[26143]: spamd: processing message <20131202135509.B8B4E46657@myhost.mydomain.de> for user@domain.de:1020
Dec  2 14:55:10 australis postfix/smtps/smtpd[9534]: disconnect from xxx[1.1.1.1]
Dec  2 14:55:10 australis spamd[26143]: spamd: clean message (-1.9/5.0) for user@domain.de:1020 in 0.3 seconds, 2751 bytes.
Dec  2 14:55:10 australis spamd[26143]: spamd: result: . -1 - BAYES_00,NO_RELAYS scantime=0.3,size=2751,user=user@domain.de,uid=1020,required_score=5.0,rhost=localhost,ra
ddr=127.0.0.1,rport=53891,mid=<20131202135509.B8B4E46657@myhost.mydomain.de>,bayes=0.000000,autolearn=ham
Dec  2 14:55:10 australis postfix/local[9541]: B8B4E46657: to=<user-domain.de@myhost.mydomain.de>, orig_to=<user@domain.de>, relay=local, delay=0.56, delays=0/0/0/0.56, ds
n=2.0.0, status=sent (delivered to command: /usr/bin/procmail-wrapper -o -a $DOMAIN -a "$EXTENSION" -d $LOGNAME)
Dec  2 14:55:10 australis postfix/qmgr[2042]: B8B4E46657: removed
Dec  2 14:55:10 australis spamd[26137]: prefork: child states: II
Mon, 12/02/2013 - 14:10
netizen

Thank you for the reply. Although I tried I cant figure out which configuration setting is the one to be blamed.

Could you please share at least your 2 postix config files? That I think will spread some light to the problem.

Much appreciated if you can do that. N

Tue, 12/03/2013 - 06:26
Locutus

Sure, here you are. main.cf:

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
delay_warning_time = 4h
readme_directory = no
 
# TLS parameters
smtpd_tls_cert_file = /etc/postfix/sslmail_tianet_de.crt
smtpd_tls_key_file = /etc/postfix/sslmail_tianet_de.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
 
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
 
myhostname = hostname.domain.de
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = hostname.domain.de, localhost.domain.de, , localhost
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = /usr/bin/procmail-wrapper -o -a $DOMAIN -a "$EXTENSION" -d $LOGNAME
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
virtual_alias_maps = hash:/etc/postfix/virtual
sender_bcc_maps = hash:/etc/postfix/bcc
home_mailbox = Maildir/
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination permit_dnswl_client list.dnswl.org check_policy_service inet:127.0.0.1:10023
allow_percent_hack = no
smtpd_client_restrictions = permit_sasl_authenticated permit_dnswl_client list.dnswl.org reject_rbl_client zen.spamhaus.org check_client_access hash:/etc/postfix/client-reject
message_size_limit = 50000000
smtpd_tls_CAfile = /etc/postfix/startcom.pem
smtpd_sasl_authenticated_header = yes
maximal_queue_lifetime = 3d
bounce_queue_lifetime = 3d
smtpd_client_connection_rate_limit = 15
smtpd_client_message_rate_limit = 25
smtpd_client_recipient_rate_limit = 50

master.cf:

#
# Postfix master process configuration file.  For details on the format
# of the file, see the master(5) manual page (command: "man 5 master").
#
# Do not forget to execute "postfix reload" after editing this file.
#
# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp    inet    n       -       -       -       -       smtpd -o smtpd_sasl_auth_enable=yes
#smtp      inet  n       -       -       -       1       postscreen
#smtpd     pass  -       -       -       -       -       smtpd
#dnsblog   unix  -       -       -       -       0       dnsblog
#tlsproxy  unix  -       -       -       -       0       tlsproxy
#submission inet n       -       -       -       -       smtpd
#  -o syslog_name=postfix/submission
#  -o smtpd_tls_security_level=encrypt
#  -o smtpd_sasl_auth_enable=yes
#  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#  -o milter_macro_daemon_name=ORIGINATING
smtps     inet  n       -       -       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING
#628       inet  n       -       -       -       -       qmqpd
pickup    fifo  n       -       -       60      1       pickup
cleanup   unix  n       -       -       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
#qmgr     fifo  n       -       n       300     1       oqmgr
tlsmgr    unix  -       -       -       1000?   1       tlsmgr
rewrite   unix  -       -       -       -       -       trivial-rewrite
bounce    unix  -       -       -       -       0       bounce
defer     unix  -       -       -       -       0       bounce
trace     unix  -       -       -       -       0       bounce
verify    unix  -       -       -       -       1       verify
flush     unix  n       -       -       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
proxywrite unix -       -       n       -       1       proxymap
smtp      unix  -       -       -       -       -       smtp
relay     unix  -       -       -       -       -       smtp
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       -       -       -       showq
error     unix  -       -       -       -       -       error
retry     unix  -       -       -       -       -       error
discard   unix  -       -       -       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       -       -       -       lmtp
anvil     unix  -       -       -       -       1       anvil
scache    unix  -       -       -       -       1       scache
#
# ====================================================================
# 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=DRhu 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
#  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=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
  ${nexthop} ${user}
 
submission      inet    n       -       -       -       -       smtpd -o smtpd_sasl_auth_enable=yes
Tue, 12/03/2013 - 09:24
andreychek

Hmm, I've never heard of what you're describing before... in theory, an email response is just being sent to the sender, if the address doesn't exist.

And in your email logs that you shared above, I don't see any problems, though I do see an email being delivered to an account on your server.

Is it possible that the messages are ending up in a spam folder?

Also, could you post the output of "postconf -n"?

That will show just the non-default Postfix options, which hopefully will make it simpler to see if there are any problems.

-Eric

Thu, 12/05/2013 - 04:18 (Reply to #8)
netizen

Thank you for the reply.

I am attaching the postconf result on a txt file because copy pasting it in here does not recognize break-lines and all the text shows as one line.

Thu, 12/12/2013 - 03:12 (Reply to #9)
netizen

andreychek, do you see any problems with the posted config?

N

Thu, 12/05/2013 - 06:12
Locutus

To paste shell listings directly in a post here, you can enclose it in [code][/code] tags, that will preserve linebreaks and monospace font.

Mon, 12/09/2013 - 19:23
netizen

What about now?

--------
[root@my-hostname ~]# postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
allow_percent_hack = no
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
home_mailbox = Maildir/
html_directory = no
inet_protocols = ipv4
mail_name = HERMES-N
mailbox_command = /usr/bin/procmail-wrapper -o -a $DOMAIN -d $LOGNAME
mailbox_size_limit = 0
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
milter_default_action = accept
milter_protocol = 2
mydestination = $myhostname, localhost.$mydomain, localhost, my-hostname.my-FQDN-domain.com
mynetworks = 127.0.0.0/8, <here I have several other public IPs plus a public subnet which includes the IP of this server> 
newaliases_path = /usr/bin/newaliases.postfix
non_smtpd_milters = inet:localhost:8891
readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES
sample_directory = /usr/share/doc/postfix-2.6.6/samples
sender_bcc_maps = hash:/etc/postfix/bcc
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
smtpd_milters = inet:localhost:8891
smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination reject_rbl_client zen.spamhaus.org reject_rbl_client bl.spamcop.net check_policy_service unix:/var/spool/postfix/postgrey/socket
smtpd_sasl_auth_enable = yes
smtpd_sender_restrictions = warn_if_reject reject_unknown_sender_domain reject_non_fqdn_sender
smtpd_tls_CAfile = /etc/ssl/startssl/ca-bundle.crt
smtpd_tls_cert_file = /etc/ssl/startssl/mail.my-FQDN-domain.com.crt
smtpd_tls_key_file = /etc/ssl/startssl/mail.my-FQDN-domain.com.key
smtpd_tls_loglevel = 1
smtpd_tls_mandatory_ciphers = high
smtpd_tls_mandatory_protocols = SSLv3, TLSv1
smtpd_tls_security_level = may
unknown_local_recipient_reject_code = 550
virtual_alias_maps = hash:/etc/postfix/virtual
[root@my-hostname ~]#
 
--------
Thu, 12/12/2013 - 07:28
andreychek

Well, I don't see anything that jumps out at me which would explain the behavior you're seeing.

I didn't see any issues in the blurb from your logs though, is it possible that the missing emails are in an alternate folder, such as a spam folder?

-Eric

Thu, 12/12/2013 - 07:50 (Reply to #13)
netizen

Well that was my No1 troubleshooting method. To look there. But no. Nothing. :(

Topic locked