We enforce sender verification on our relay server. In short it means the sender should be an existing e-mailaddress. The long version is that under some circumstances even an existing e-mail address could fail the verification.
Let's say in our example mail is sent from firstname.lastname@example.org and we want to check the existence of the address email@example.com.
How is sender verification done
Step 1) Lookup MX records of ws1.snel.com, if found, use that server to verify, else use the IP address of the server sending the e-mail to verify
Step 2) Verify with the following sequence:
$ telnet ws1.snel.com 25 Trying 2a00:7b80:3043:1000::34... Connected to ws1.snel.com. Escape character is '^]'. 220 ws1.snel.com ESMTP Exim 4.84_2 Fri, 12 Jan 2018 12:54:33 +0100 HELO ns3.snel.com 250 ws1.snel.com Hello aaa [bbb] MAIL From: firstname.lastname@example.org 250 OK RCPT To: email@example.com 250 Accepted
Replace ws1.snel.com with the hostname of the MX record from the sender domain and replace firstname.lastname@example.org with the sender address you want to verify. Don't replace ns3.snel.com or email@example.com.
Step 3) If mail to the sender address is accepted we know that the e-mail address exist.
- Sender verification on Office 365 platform is not allowed. Please use O365 SMTP server when sending mail with O365 addresses.
- When an external forward is setup on some control-panels sender verification could fail. Check with above steps. Use another e-mailaddress as sender.
- If the IP address you are connecting from is listed on a blacklist the mail could be rejected and the verification could fail. Make sure that you test from a location which is not listed on a blacklist. Use an online tool to verify that your IP address is not listed on a blacklist.