Server issue User - Emails that were deleted still cause errors in ACP

Affected version
2.2.4

Kirby

Well-known member
If the domain exists. @gmail.com @yahoo.com @xenforo.com
I get a soft bounce or hard bounce. Example if no user exists thdekddhe@gmail.com hard bounce.

If domain doesn’t exist I get the error. That is not a server issue or configuration issue.
You can either accept it or not, but it is a configuration issue ;)

not-existing-domain.png

Later on this email bounced, just like it should be.
 
Last edited:

Mike

XenForo developer
Staff member
There is nothing that prevents a local MTA from delivering bounces as per the standard method. Certainly Postfix has no issues and I'd have to assume that Exim is the same. (This is essentially always done through a sendmail wrapper.) This will generally be more efficient on the whole than connecting to a local SMTP server as well, as you're avoiding the TCP connection and overhead (replacing it with calling a local process).

As mentioned, the SMTP server rejecting the message for a domain that doesn't exist certainly isn't a standard or common behavior. The most common approach would be for the SMTP server to accept it (like an invalid user at a valid domain) and attempt delivery until it believes the error won't be resolved and then return a bounce message. This is what's happening in the above screenshot.
 

spirogg

Active member
There is nothing that prevents a local MTA from delivering bounces as per the standard method. Certainly Postfix has no issues and I'd have to assume that Exim is the same. (This is essentially always done through a sendmail wrapper.) This will generally be more efficient on the whole than connecting to a local SMTP server as well, as you're avoiding the TCP connection and overhead (replacing it with calling a local process).

As mentioned, the SMTP server rejecting the message for a domain that doesn't exist certainly isn't a standard or common behavior. The most common approach would be for the SMTP server to accept it (like an invalid user at a valid domain) and attempt delivery until it believes the error won't be resolved and then return a bounce message. This is what's happening in the above screenshot.
hello and thanks for your guys replies..

PS: If I switch to php mailer I get no errors and it gets bounced to the log.

but also here isa test from the test Mail in ACP

Code:
++ Starting Swift_SmtpTransport
<< 220-server1.mydomain.com ESMTP Exim 4.94 #2 Fri, 12 Mar 2021 11:45:08 -0600
220-We do not authorize the use of this system to transport unsolicited,
220 and/or bulk e-mail.

>> EHLO www.mydomain.com

<< 250-server1.mydomain.com Hello www.mydomain.com [nn.nn.nn.nn]
250-SIZE 52428800
250-8BITMIME
250-PIPELINING
250-X_PIPE_CONNECT
250-AUTH PLAIN LOGIN
250-STARTTLS
250 HELP

>> STARTTLS

<< 220 TLS go ahead

>> EHLO www.mydomain.com

<< 250-server1.mydomain.com Hello www.mydomain.com [nn.nn.nn.nn]
250-SIZE 52428800
250-8BITMIME
250-PIPELINING
250-X_PIPE_CONNECT
250-AUTH PLAIN LOGIN
250 HELP

>> AUTH LOGIN

<< 334 VXNlcm5hbWU6

>> bm9yZXBseUB0YWxrd2FnLmNvbQ==

<< 334 UGFzc3dvcmQ6

>> U2NhdGFNYWxha2FAMTJAMTI=

<< 235 Authentication succeeded

++ Swift_SmtpTransport started
>> MAIL FROM:<bounced2+425c55d6+aksdjhakdjhaskdjakdsjh=aksjdhaksjdhkajsdh.com@mydomain.com>

>> RCPT TO:<aksdjhakdjhaskdjakdsjh@aksjdhaksjdhkajsdh.com>

>> DATA

<< 250 OK

<< 550-The mail server could not deliver mail to
550-aksdjhakdjhaskdjakdsjh@aksjdhaksjdhkajsdh.com.  The account or domain may
550 not exist, they may be blacklisted, or missing the proper dns entries.

!! Expected response code 250/251/252 but got code "550", with message "550-The mail server could not deliver mail to
550-aksdjhakdjhaskdjakdsjh@aksjdhaksjdhkajsdh.com.  The account or domain may
550 not exist, they may be blacklisted, or missing the proper dns entries.
" (code: 550)
<< 503-All RCPT commands were rejected with this error:
503-The mail server could not deliver mail to
503-aksdjhakdjhaskdjakdsjh@aksjdhaksjdhkajsdh.com.  The account or domain may
503-not exist, they may be blacklisted, or missing the proper dns entries.
503 Valid RCPT command must precede DATA

!! Expected response code 354 but got code "503", with message "503-All RCPT commands were rejected with this error:
503-The mail server could not deliver mail to
503-aksdjhakdjhaskdjakdsjh@aksjdhaksjdhkajsdh.com.  The account or domain may
503-not exist, they may be blacklisted, or missing the proper dns entries.
503 Valid RCPT command must precede DATA
" (code: 503)
!! Expected response code 354 but got code "503", with message "503-All RCPT commands were rejected with this error:
503-The mail server could not deliver mail to
503-aksdjhakdjhaskdjakdsjh@aksjdhaksjdhkajsdh.com.  The account or domain may
503-not exist, they may be blacklisted, or missing the proper dns entries.
503 Valid RCPT command must precede DATA
"

using CentOS 7 94.02 cPanel

if you look at the lines just before the <<550 like below

seems it did get sent correctly 250 OK ( is this correct?)


- But then either cPanel - Exim software adds the 550 and 503 as part of cPanel exim mail backend logs. ?
I've got a ticket with them to see why the 550 503 error since I have not touched anything in exam settings. ?

Code:
<< 235 Authentication succeeded

++ Swift_SmtpTransport started
> MAIL FROM:<bounced2+425c55d6+aksdjhakdjhaskdjakdsjh=aksjdhaksjdhkajsdh.com@mydomain.com>

> RCPT TO:<aksdjhakdjhaskdjakdsjh@aksjdhaksjdhkajsdh.com>

> DATA

<< 250 OK

thank you.
I could just try and get setup for SES or another email service.
 
Last edited:

spirogg

Active member
ok here is what cPanel said in my ticket..

Thank you for your patience while I reviewed your support request. Upon review of your reported issue, this problem does not appear to be related to or caused by cPanel or by the basic configuration of the cPanel-bundled software.

The default behavior of Exim is to perform a DNS lookup on the domain that you are attempting to send as defined in the Exim transport for remote domains:

Code:
lookuphost:
    driver = dnslookup
    domains = ! +local_domains
    #ignore verisign to prevent waste of bandwidth
    ignore_target_hosts = +loopback : 64.94.110.0/24
    headers_add = "${perl{mailtrapheaders}}"
    transport = remote_smtp
The line driver = dnslookup performs this action when attempting to send to a remote destination. When this fails, the following Exim block is then run:

Code:
#
# Trap Failures to Remote Domain
#
fail_remote_domains:
  driver = redirect
  domains = ! +local_domains : ! localhost : ! localhost.localdomain
  allow_fail
  data = ${if eq {$verify_mode}{S} \
        {:fail: The mail server does not recognize $local_part@$domain as a valid sender.} \
        {:fail: The mail server could not deliver mail to $local_part@$domain.  The account or domai
n may not exist, they may be blacklisted, or missing the proper dns entries.} \
As you can see, the default configuration of Exim is to:
1. Determine if the domain has a valid MX or A record that email can be delivered to, if so, send the email. Else:
2. Report failure of domain DNS entries and stop processing.

With that being said, I took some time to compile some information and resources for you regarding this and found the following documentation that may help you configure this desired behavior:
https://www.exim.org/exim-html-current/doc/html/spec_html/ch-the_dnslookup_router.html
https://www.exim.org/exim-html-curr...-customizing_bounce_and_warning_messages.html


@Mike So this will be an issue for all standard cPanel installs exim standard configurations
  • so everyone that buys Xenforo - and has cPanel will have these issues since, cPanel support said cPanel and Exim default configuration will not send the email like postfix.
  • does this not warrant some sort of guide from Xenforo for cPanel account users. to either avoid using their email or how to correct this?
it would be nice to have some sort of guidance. I'm sure 80% if not more whom purchase Xenforo use cPanel . :)

also thanks again @Kirby for your screenshot and help as well..

Kind Regards,
Spiro
 
Last edited:

bzcomputers

Well-known member
Running into this error now also. CENTOS 7 / cPanel 94 / exim...

Code:
[LIST]
[*]Swift_TransportException: Email to ***invalid email*** failed: Expected response code 354 but got code "503", with message "503-All RCPT commands were rejected with this error: 503-The mail server could not deliver mail to brunson82@yahoo.comr. The 503-account or domain may not exist, they may be blacklisted, or missing the 503-proper dns entries. 503 Valid RCPT command must precede DATA "
[*]src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php:457
[*]Generated by: Unknown account
[*]Mar 19, 2021 at 3:03 PM
[/LIST]
#0 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(341): Swift_Transport_AbstractSmtpTransport->assertResponseCode('503-All RCPT co...', Array)
#1 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php(305): Swift_Transport_AbstractSmtpTransport->executeCommand('DATA
', Array, Array, false, NULL)
#2 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(390): Swift_Transport_EsmtpTransport->executeCommand('DATA
', Array, Array)
#3 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(497): Swift_Transport_AbstractSmtpTransport->doDataCommand(Array)
#4 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(516): Swift_Transport_AbstractSmtpTransport->doMailTransaction(Object(Swift_Message), 'bounced+3df458a...', Array, Array)
#5 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(206): Swift_Transport_AbstractSmtpTransport->sendTo(Object(Swift_Message), 'bounced+3df458a...', Array, Array)
#6 src/XF/Mail/Mailer.php(304): Swift_Transport_AbstractSmtpTransport->send(Object(Swift_Message), Array)
#7 src/XF/Mail/Queue.php(138): XF\Mail\Mailer->send(Object(Swift_Message), Object(Swift_SmtpTransport), Array)
#8 src/XF/Job/MailQueue.php(12): XF\Mail\Queue->run(8)
#9 src/XF/Job/Manager.php(258): XF\Job\MailQueue->run(8)
#10 src/XF/Job/Manager.php(200): XF\Job\Manager->runJobInternal(Array, 8)
#11 src/XF/Job/Manager.php(84): XF\Job\Manager->runJobEntry(Array, 8)
#12 job.php(43): XF\Job\Manager->runQueue(false, 8)
#13 {main}
 

spirogg

Active member
Running into this error now also. CENTOS 7 / cPanel 94 / exim...

Code:
[LIST]
[*]Swift_TransportException: Email to ***invalid email*** failed: Expected response code 354 but got code "503", with message "503-All RCPT commands were rejected with this error: 503-The mail server could not deliver mail to brunson82@yahoo.comr. The 503-account or domain may not exist, they may be blacklisted, or missing the 503-proper dns entries. 503 Valid RCPT command must precede DATA "
[*]src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php:457
[*]Generated by: Unknown account
[*]Mar 19, 2021 at 3:03 PM
[/LIST]
#0 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(341): Swift_Transport_AbstractSmtpTransport->assertResponseCode('503-All RCPT co...', Array)
#1 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php(305): Swift_Transport_AbstractSmtpTransport->executeCommand('DATA
', Array, Array, false, NULL)
#2 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(390): Swift_Transport_EsmtpTransport->executeCommand('DATA
', Array, Array)
#3 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(497): Swift_Transport_AbstractSmtpTransport->doDataCommand(Array)
#4 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(516): Swift_Transport_AbstractSmtpTransport->doMailTransaction(Object(Swift_Message), 'bounced+3df458a...', Array, Array)
#5 src/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(206): Swift_Transport_AbstractSmtpTransport->sendTo(Object(Swift_Message), 'bounced+3df458a...', Array, Array)
#6 src/XF/Mail/Mailer.php(304): Swift_Transport_AbstractSmtpTransport->send(Object(Swift_Message), Array)
#7 src/XF/Mail/Queue.php(138): XF\Mail\Mailer->send(Object(Swift_Message), Object(Swift_SmtpTransport), Array)
#8 src/XF/Job/MailQueue.php(12): XF\Mail\Queue->run(8)
#9 src/XF/Job/Manager.php(258): XF\Job\MailQueue->run(8)
#10 src/XF/Job/Manager.php(200): XF\Job\Manager->runJobInternal(Array, 8)
#11 src/XF/Job/Manager.php(84): XF\Job\Manager->runJobEntry(Array, 8)
#12 job.php(43): XF\Job\Manager->runQueue(false, 8)
#13 {main}
I think more and more people whom upgrade to cPanel 94 are going to get this issue. Because it’s going to check dns then a records before it sends the email. So we won’t get a bounce. Just get this error.

- the default configuration of Exim is to:
1. Determine if the domain has a valid MX or A record that email can be delivered to, if so, send the email. Else:
2. Report failure of domain DNS entries and stop processing.

I’m hoping Xenforo or someone comes up with a exim configuration for us so we don’t get this issue. But we will see
 

spirogg

Active member
Obviously seems as this email was suppose to be .com not .comr unless you did this as a test. And that is why you will get this error each and every time.
cPanel uses exim. But if we used postfix I believe like on plesk we would not get the error. Because postfix just sends the email and does no checks before hand to check for dns. So that will get a bounce and not this error. I think cPanel / exim made some changes and that why we are going to get errors if anyone makes a mistake on their email as yours did above. So we going to have to manually look and try to fix each users email.
 

bzcomputers

Well-known member
I think more and more people whom upgrade to cPanel 94 are going to get this issue. Because it’s going to check dns then a records before it sends the email. So we won’t get a bounce. Just get this error.

- the default configuration of Exim is to:
1. Determine if the domain has a valid MX or A record that email can be delivered to, if so, send the email. Else:
2. Report failure of domain DNS entries and stop processing.

I’m hoping Xenforo or someone comes up with a exim configuration for us so we don’t get this issue. But we will see

I believe you are correct. This will be an issue brought up more and more if there is not some XenForo workaround for it.

I don't believe this is server config issue. Just a new server operation that hasn't been seen before. Likely this require XenForo to suppress these errors or find another way to deal with them quietly. I know there are quite a few XenForo instances on cPanel.
 

spirogg

Active member
I believe you are correct. This will be an issue brought up more and more if there is not some XenForo workaround for it.

I don't believe this is server config issue. Just a new server operation that hasn't been seen before. Likely this require XenForo to suppress these errors or find another way to deal with them quietly. I know there are quite a few XenForo instances on cPanel.
Well
Hope they listen - now that it not just me.
thanks for finding this and hope more will find this thread and complain as well.
 

spirogg

Active member
There is nothing that prevents a local MTA from delivering bounces as per the standard method. Certainly Postfix has no issues and I'd have to assume that Exim is the same. (This is essentially always done through a sendmail wrapper.) This will generally be more efficient on the whole than connecting to a local SMTP server as well, as you're avoiding the TCP connection and overhead (replacing it with calling a local process).

As mentioned, the SMTP server rejecting the message for a domain that doesn't exist certainly isn't a standard or common behavior. The most common approach would be for the SMTP server to accept it (like an invalid user at a valid domain) and attempt delivery until it believes the error won't be resolved and then return a bounce message. This is what's happening in the above screenshot.
Well
I guess im
Not the only one getting this error and it’s pertaining to cPanel and Exim
That does not function like
Post fix.
 
Top