There are a number of things I look for when I receive an email about one of our clients not being able to send email. After reading through the case, the first thing I do is look at the bounce back message. Usually the error code within the message will tell me whats wrong. There are times when you don'e get anything useful back. In that case, I do the following to try and get more information:
- After determining the client is in fact using our mail servers to send mail, I want to know what port are they connecting on? 25, or 587?
- Is the server on any black lists? Is the client on any black lists?
- I know we have a rDNS set up, but what about the client?
- Is DNS working properly for the domain I want to send mail to?
dig domain.ext mx
- Manually test sending mail:
telnet mailserver 25 HELO yourserver
If the server requires authentication, then the next three lines apply to you.
AUTH LOGIN
base64 encoded username:
dXNlcm5hbWU=
base64 encoded password:
cGFzc3dvcmQNCg==
MAIL FROM: your email RCPT TO: emailto DATA Subject: Subject Body text . QUIT
Full Example:
$ telnet mail.example.com 25 Trying 127.0.0.1... Connected to mail.example.com (127.0.0.1) Escape character is '^]'. 220-mail.example.com ESMTP Exim 4.66 #1 Wed, 09 May 2010 00:00:00 -0500 220-We do not authorize the use of this system to transport unsolicited, 220 and/or bulk e-mail. EHLO mail.example.com 250-mail.example.com Hello [127.0.0.1] 250-SIZE 52428800 250-PIPELINING 250-AUTH PLAIN LOGIN 250-STARTTLS 250 HELP AUTH LOGIN 334 VXNlcm5hbWU6 dXNlcm5hbWU= 334 UGFzc3dvcmQ6 cGFzc3dvcmQNCg== MAIL FROM: your email RCPT TO: emailto DATA Subject: Subject Body text . QUIT
Some times there are times where you need more information and it may resolve the issue quicker if you enlist the help of the admin of the other server.