EasySMTP

Troubleshooting Guide for Sending SMTP Email

Contents

  1. Connection settings
  2. Connection refused errors
  3. Authentication errors
  4. SSL errors
  5. SMTP responses and errors
  6. Scrambled HTML messages

Connection settings

SMTP host: ssrs.reachmail.net
SMTP port: 25, 587, or 465 (SMTPS)
Supported SSL versions: SSLv3 or TLSv1
Username format: AccountKey\Username
Supported authentication mechanisms: PLAIN or LOGIN

Connection refused errors

Errors such as connection refused or cannot connect to remote host are usually related to an ISP blocking traffic on port 25. Port 25 blocking is often the default for many ISPs.

Port 25 networking can be tested using telnet. Telnet is readily available on Linux, Mac, and Windows.

To test your connection, begin by opening a command line terminal. At the command prompt type telent ssrs.reachmail.net 25. If you see a message like 220 ssrs.reachmail.net easysmtp 2.1.2 b35eab8573 you’ve successfully connected. Type ‘quit’ and telnet will terminated the connection.

netbsd13$ telnet ssrs.reachmail.net 25
Trying 66.102.109.166...
Connected to ssrs.reachmail.net.
Escape character is '^]'.
220 ssrs.reachmail.net easysmtp 2.1.2 b35eab8573
quit
221 bye
Connection closed by foreign host.

If the connection did not complete or a connection refused error was received, it’s likely that your ISP is blocking traffic on port 25. You may use the alternative SMTP service on port 587 or the SMTPS service on port 465 or contact your ISP for information on activating port 25 networking.

Authentication errors

Failed authentication will return error code 535 along with a brief explanation of the problem. Further details on the explanations are found below.

TrialExpired – Trial account has expired, please contact support@reachmail.com for assistance.

TooManyFailedLoginAttempts – 3 consecutive login attempts have failed, try again in 20 minutes.

AccountDisabled – Account has been deactivated, contact support@reachmail.com for more information.

InvalidUsernameOrPassword – Invalid user or password was submitted.

BadAUTHEncoding – The base64 encoding of the authorization parameters could not be decoded. Check to make sure your account key, username and password are correct. Note that the username submitted to Easy-SMTP is your account key and username joined with a backslash, e.g. ACME\admin

UnspecifiedError – Please contact support@reachmail.com for assistance

AccountBlocked – Account has been blocked, contact support@reachmail.com

OverSendingLimit – Account has exceeded the monthly sending limit. Contact support@reachmail.com to upgrade or defer all mails until midnight on the first of the next month.

NoValidPayment – A credit card must be entered to secure the account. Login to the account dashboard at https://go.reachmail.net to submit a credit card.

NoComplianceData – All accounts must have CAN-SPAM compliance address data. Login to the account dashboard at https://go.reachmail.net and go to Account > Addresses.

UserBlocked – The authenticated use is blocked from sending.

Bad authorization encoding

The BadAUTHEncoding error is often the result of an incorreclty formed username. Your Easy-SMTP username is is your account key and user name joined with a backslash, e.g. ACME\admin. Note that depending on how your programming language or MTA deals with special charachters in authorization strings, you may need to add a second backslash, e.g. ACME\\admin. Additionally, depending on your environment you may also need to escape special characters in your password with a backslash, though this is less likely.

Invalid authentication method

Using an unsppported authentication method will result in a 535 error, e.g. using CRAM-MD5 will return 535 error: invalid auth method CRAM-MD5. The supported authentication methods are PLAIN and LOGIN. Most programming languages will use PLAIN while MTAs may attempt a preferred method and fallback to others.

Make sure that your connecting client supports PLAIN or LOGIN methods, you may need to change the preferred method in your MTA config or enable the PLAIN or LOGIN methods if they’re not supported by default.

501 syntax errors

If a 501 sytax error is received Easy-SMTP can’t understand the command as received, please contact support@reachmail.com for further assistance.

Using IP authentication

If your client doesn’t support SMTP authentication, you may choose to setup IP based authentication. Doing so will treat all connections coming from your IP as authenticating to your account. Keep in mind that you will be responsible for all messages sent through your account so this is not the best option for shared resources.

To setup IP authentication, login to your account dashboard at https://go.reachmail.net and click the ‘Edit’ button in the Account Settings section. In the pop-up, enter your public IP address in the IP address field and click Save. Allow 5 minutes for the access control lists to update and attempt to connect again.

SSL errors

With the exception of connections authenticated by IP which do not transmit a password all connections are required to use SSL. Connections on port 25 will need to issue the STARTTLS command before sending the AUTH command, connections to port 465 should be prepared to secure the connection immediately. SSL version 3 and TLS version 1 are supported, SSLv2 is not supported.

If your system or connection client does not support SSL the only connection option is to use IP authentication over port 25. See the Using IP Authentication section in this document.

SSL is best tested using the openssl client. Openssl is readily available for Mac and Linux.

To test Easy-SMTP SMTPS

openssl s_client -connect ssrs.reachmail.net:465 -crlf -no_ssl2

To test Easy-SMTP STARTTLS

openssl s_client -connect ssrs.reachmail.net:25 -crlf -no_ssl2 -starttls smtp

If successful, those commands should yield an open connection under a banner like 220 ssrs.reachmail.net easysmtp 2.1.2 b35eab8573

If openssl connects without issue but your connection client is still failing with a trust error, e.g. cannot verify issuing authority, try one of the following:

Adjust the verification depth
Update the CA packs used by your client
Turn off verification

If openssl cannot connect, try adding the -debug option to get more information and contact support@reachmail.com for additional assistance.

SMTP responses and errors

Easy-SMTP will respond to commands using standard SMTP response ranges including:

2xx – Command accepted
4xx – Temporary error
5xx – Permanent error
55x – Permanent error, terminates connection

Special Easy-SMTP errors

In addition to the standard SMTP errors, Easy-SMTP may respond to a command with one of the following.

421 error: too many errors
Too many invalid commands were received, to free up resources, the current connection has been terminated.

451 error: Message rate limit exceeded
Messages are limited to 25 per-connection, exceeding this rate will result in this error. Note that if you’re using a MTA this is will likely be interpreted as a temporary deferral and the message will be tried again at a later time.

451 error: Monthly message limit reached
If you are using the Easy-SMTP free account plan, a limit of 10,000 messages per month is imposed on your account. This counter is reset at midnight on the first of the month. Note that if you are using a MTA this error will be interpreted as a temporary deferral and depending on the MTA’s message timeout value these messages may be sent after the volume counter resets. This error will not occur for paid accounts.

451 error: RCPT limit reached
Each message is limited to 100 recipients, i.e. 100 RCPT commands. Using the RSET command will clear the counter.

554 <ip address> please wait for acl update
Only for accounts using IP authentication. This error indicates a connection made before the IP access control lists have been updated. Please try again in 5 minutes

554 <authorization error>
Only for accounts using IP authentication. This error indicates that some authorization condition is preventing your account from authenticating. The authorization error string will match one of the authentication errors defined elsewhere in this document, e.g. 554 OverSendingLimit.

554 transaction failed
This is an exceptional error, please contact support@reachmail.com for assistance.

Scrambled HTML messages

Are your HTML messages coming out jumbled? You may be missing the Content-Type header.

By default, Easy-SMTP will treat all incoming messages a plain text unless HTML is specified in the Content-Type header. If you are sending HTML messages but are seeing the HTML code in the message body when viewing the message in a mail user agent, your sending mechanism is likely omitting the Content-Type header.

To correct the problem, insert Content-Type: text/html in the message headers.

Subject: New forum posting
Content-Type: text/html