SMTP (or Simple Mail Transfer Protocol) is a network protocol, designed for e-mail transmission in TCP/IP networks. The SMTP server is a mailman of the Internet. Basically, it helps emails get to the right destination. SMPT executes processes similar to the mechanism of delivering the actual mail. After you send an email, it gets to this server, which then delivers messages directly to their receivers.
By telneting into a given SMPT server, you can test a lot of things, for instance:
The operability of the server
Presence of a firewall that blocks communication
The list of SMTP commands that the mail server supports
Besides, you can also define the amount of time needed for a server to response, and check if the server responds with the right hostname.
Testing with a manual telnet session
Before starting testing smtp, a telnet client needs to be verified for the installation on the server. Then, begin searching a mail server to log in to. You are going to need the DNS MX record for your domain to proceed it. Use this command:
nslookup -type=mx mailtrap.io
nslookup -type=mx mailtrap.io Non-authoritative answer: Server: 192.168.0.1 Address: 192.168.0.1#53 Non-authoritative answer: mailtrap.io mail exchanger = 10 aspmx2.googlemail.com. mailtrap.io mail exchanger = 10 aspmx3.googlemail.com. mailtrap.io mail exchanger = 1 aspmx.l.google.com. mailtrap.io mail exchanger = 5 alt1.aspmx.l.google.com. mailtrap.io mail exchanger = 5 alt2.aspmx.l.google.com.
You need the DNS PTR for the IP you will be using. That’s why you should start with checking your current IP address. There are plenty of websites that can help you with this.
Then run the following command, replacing T.T.T.T with your IP address.
nslookup -type=ptr T.T.T.T
nslookup -type=ptr A.B.C.D Server: 192.168.0.1 Address: 192.168.0.1#53 Non-authoritative answer: 188.8.131.52.in-addr.arpa name = SOL-FTTB.184.108.40.206.sovam.net.ua.
At this point, you have two basic requirements – the PTR for the IP you are going to use and the MX record for railsware.com. Now you can log in to the SMTP server by using this command:
telnet mail.railsware.com 25
You will see something like this code:
Trying 220.127.116.11... Connected to mail.railsware.com (18.104.22.168). Escape character is '^]'. 220 mail.railsware.com (PowerMTA(TM) v4.0) ESMTP service ready The first command to issue to the mail server is going to be EHLO or HELO, which EHLO server.example.com
Something like this should be returned:
250-mail.railsware.com says hello 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN
The MAIL FROM command will be the next to issue. It shows the address where bounces are delivered.
MAIL FROM: <firstname.lastname@example.org> 250 2.1.0 MAIL ok
The MAIL FROM command was sent, now you can send the RCPT TO command. It determines the user to send the message.
RCPT TO: <email@example.com> 250 2.1.5 <firstname.lastname@example.org> ok Before starting the body of the message, you should run the DATA command. 354 send message
There are mail servers, including mail.rsilsware.com, that support PIPELINING. This means that before responding to other commands after the EHLO command, the SMTP mail server will wait until the issuing of the DATA command. In this case, you should enter the MAIL FROM, RCPT TO, and DATA commands before waiting for a response.
The list of online services for testing SMTP servers
Before starting, you have to define the SMTP server’s address. To do it, use ns lookup command or some of the online services.
The SMTP check service will include the following stages: checking your server DNS Black List status, relaying configurations, verifying MX records, verifying the email address, PTR Record.
These online services will help you examine the SMTP server:
Wormly has a free trial to check SMTP servers, but it will not allow you define the password or port, and there’s no secure connection.
It’s a free service that will test SMTP Reverse DNS Mismatch, SMTP Transaction Time, SMTP Banner Check, SMTP TLS, SMTP Valid Hostname, SMTP Connection Time, and SMTP Open Relay. But you also will not be able to define the port or enter a password.
Test SMTP sends requests to SMTP servers for performing Relaying tests. It does not provide you a sufficient toolkit to examine SMTP properly.
Check SMTP works for some parts of a process but a proper examination is not possible. Besides, this service doesn’t provide a secure connection.
Check SMTP can verify MX records, check your server DNS Black List status, verify email address, and run some other tests.
SMTPer is the best solution that gives you a secure connection and authorization and allows defining the port. You also can fill out recipient and sender forms.