How to Send Email via SMTP Server from Linux Command Line (with SSMTP)
Abstract: Amazon SES etc. This article will help you setup SSMTP server and send email through Gmail servers. Step 1 – Install SSMTP Server SSMTP service packag
In the Global word, we always want to keep connected to everyone. To accomplish this email is also a very popular method to send and receive information. Linux systems also provide tools to send emails from the command line which is used to get system details, to send emails from shell scripts etc.
When we simply send email from Linux terminal, email sends as system [email protected] Some of the SMTP servers can block these emails or mark them as spam. So we need a process which maximizes the email delivery to the inbox. Using this article we are configuring our server to send email from SMTP servers like Gmail, Amazon SES etc. This article will help you setup SSMTP server and send email through Gmail servers.
Step 1 – Install SSMTP ServerSSMTP service packages are available under EPEL repository, So make you have EPEL yum repository configured in your system.
yum install ssmtpStep 2 – Configure SSMTP
Now edit SSMTP configuration file and add the following values. For this tutorial, I am using the Gmail SMTP server. If you also want to set up with Gmail, make sure you have an email account with Gmail.
vim /etc/ssmtp/ssmtp.conf
Change the following values in the configuration file
mailhub=smtp.gmail.com:587 UseSTARTTLS=YES [email protected] AuthPass=XXXXXXXXXXXXXXX TLS_CA_File=/etc/pki/tls/certs/ca-bundle.crt
The above details are as followings,
- mailhub: your smtp server host/ip with port.
- UseSTARTTLS: Set it Yes if SMTP server uses TLS else No.
- AuthUser: Use Gmail ID here
- AuthPass: Use Gmail ID’s password
- TLS_CA_File: This may required some time, If you face issue like 「send-mail: Cannot open smtp.gmail.com:587」
Now test the setup by sending a test email to an email address. First compose the mail in text file like:
vim msg.txt
Add email content, for example:
msg.txtSubject: This is Subject Line Email content line 1 Email content line 2
Then send email to 「[email protected]」 using the ssmtp command:
ssmtp [email protected] < msg.txt
Let's check your mailbox for the new email.
Step 4 - Setup SSMTP as DefaultNow set SSMTP as your default mail server, So that you can simply use mail command to send emails through SSMTP.
alternatives --config mta There are 2 programs which provide 'mta'. Selection Command ----------------------------------------------- 1 /usr/sbin/sendmail.ssmtp *+ 2 /usr/sbin/sendmail.sendmail Enter to keep the current selection[+], or type selection number: 1
Verify the changes by
sendmail -V sSMTP 2.61 (Not sendmail at all)
- Read - 5 Ways to Send Email From Linux Command Line