HowTo: Send Email from an SMTP Server using the Command Line

The SMTP (Simple Mail Transfer Protocol) is an Internet standard for electronic mail (Email) transmission across Internet Protocol (IP) networks.

This tutorial shows how to connect to SMTP mail server and send an Email using the ‘telnet’ command.

Step 1: Open a connection from your computer to an SMTP mail server

$ telnet smtp.domain.ext 25
220 smtp.domain.ext ESMTP Sendmail ?version-number?; ?date+time+gmtoffset?
  • smtp.domain.ext – Your mail server;
  • 25 – Default port for SMTP.

Step 2: Declare your domain name or IP-address

You can set local.domain.name or anything you want in ‘HELO’, because the server doesn’t check its authenticity, that is one of the drawbacks of this protocol.

> HELO local.domain.name
250 smtp.domain.ext Hello local.domain.name [xxx.xxx.xxx.xxx], pleased to meet you

Step 3: Set sender’s email

> MAIL FROM: sender@adress.ext
250 2.1.0 sender@adress.ext... Sender ok

Step 4: Set recipient’s email

> RCPT TO: recipient@adress.ext
250 2.1.5 recipient@adress.ext... Recipient ok

Step 5: To write the message, type DATA and press ‘Enter’

> DATA
354 Enter mail, end with "." on a line by itself

Step 6: On the first line type ‘SUBJECT: Your Subject’ and press ‘Enter’ twice

> SUBJECT: Test message

Step 7: Continue typing your message

Hello,
this is a TEST message, 
please don't reply.
Thank you.

Step 8: Put a single period (.) on a line by itself and press ‘Enter’ to send your message.

> .
250 2.0.0 ???????? Message accepted for delivery

Step 9: Close the connection

> QUIT
221 2.0.0 server.com closing connection
0 (0)
Article Rating (No Votes)
Rate this article
Attachments
There are no attachments for this article.
Comments
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
Open SSL HowTo: Decode SSL Certificate
Viewed 6935 times since Mon, Feb 18, 2019
RHEL7: How to get started with Firewalld.
Viewed 13532 times since Wed, May 22, 2019
RHEL: Enabling standard ftp/telnet
Viewed 4578 times since Sun, May 27, 2018
stunnel Howto A Guide to create SSL access to a HTTP-only webserver with stunnel
Viewed 3681 times since Fri, Sep 28, 2018
How To Create a Linux Swap File
Viewed 3519 times since Fri, Jun 8, 2018
linux ssh How to Hide the OpenSSH Version Details when Telnet to Port 22
Viewed 7514 times since Wed, Apr 22, 2020
debian How to Upgrade Debian 8 Jessie to Debian 9 Stretch
Viewed 3514 times since Sun, Sep 23, 2018
ZPOOL: Grow a zpool by adding new device(s)
Viewed 7261 times since Sun, Jun 3, 2018
“Too many authentication failures” with SSH
Viewed 7307 times since Mon, May 21, 2018
Fałszujemy rozpoznania skanerów #2
Viewed 3743 times since Mon, May 21, 2018