2

I have a client website which is spitting out this error message after you complete any of the forms:

Mistake in recipient address! 554 5.7.1 : Relay access denied Mistake in sending data! 221 2.7.0 Error: I can break rules, too. Goodbye.

They are then not getting any messages from the website/forms at the recipient address (info@...)

I am not the host of this website, but have got them looking into it. Also, the mail and all MX records are all remote from the web host too, some other company handles their @ emails.

So, considering there are two companies at hand here, would like to know which is likely to be the one at fault here (if possible to determine with this info so far)? They both of-course say "Nothing wrong here". Oh, take note that the website was recently transferred web host, so personally think its the host.

Anything you recommend to pass onto the host to check into to resolve?

dawud
  • 15,096
  • 3
  • 42
  • 61
wharfdale
  • 151
  • 8

1 Answers1

3

Your understanding of how SMTP works will help you understand what's going on here.

The website is submitting the forms to an SMTP server. That SMTP server is returning the error messages you're seeing. Don't think about MX records and DNS-- you're concerned with the SMTP server that the form processing script is using. MX records and DNS are irrelevant at this point.

"Relaying" is the term used for handing-off a message to any SMTP server other than the SMTP server ultimately responsible for delivering the message to a user's mailbox. When you specify your ISP's "smtp.example.com" email server in an email client program you are using that SMTP server as a "relay". You're asking that server to accept messages on your behalf and deliver them to their ultimate destination. (This is when MX records and DNS come into play.)

No one leaves a an SMTP relay "open" to allow anyone on the Internet to send messages through it. Spammers find open SMTP relays very quickly and start using them to send spam. Because of this nearly every publicly-accessible SMTP server on the Internet will very strictly limit relaying messages (by source IP address of the client, via authentication, etc).

Here's my suspicion as to what's going on: The form processing script has an SMTP server at the web hosting company specified as its relay. The "info@..." address isn't ultimately handled by this SMTP server. The SMTP server doesn't recognize the web server as being allowed to relay and is rejecting the message.

Get the form processing script configured to send the mail to an SMTP server that is either responsible for delivery to the "info@..." address, or one that will allow the web server to relay, and it will work as-expected.

(A secondary hypothesis is that the form processing script is configured to use an SMTP server that used to be able to handle reception of the "info@..." address.)

Evan Anderson
  • 141,881
  • 20
  • 196
  • 331