Mailx: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
No edit summary
 
(15 intermediate revisions by the same user not shown)
Line 11: Line 11:
=Configuration=
=Configuration=


==Configuring mailx to Use a Google SMTP Server==
==Verbose and Debug Output==


First, you will need to make sure <tt>mailx</tt> has access to a valid Google certificate in an NSS certificate database. Firefox usually has it in its profile directory, but it is a good idea to initialize a private certificate database for <tt>mailx</tt>. This page explains how to do that [[NSS#Create_a_New_Certificate_Database_and_Import_Google.27s_Certificate|Create a New NSS Certificate Database and Import Google's Certificate]]:
In order to get verbose output, use the <tt>-v</tt> on mailx command line. This will send verbose output to stdout as the e-mail is being sent.


Assuming you provision <tt>root</tt> GMail SMTP access, move the <tt>certs</tt> directory created at the previous step under <tt>~root</tt> as follows:
The <tt>debug</tt> option dumps the protocol headers, but it configures mailx to '''not''' send anything externally - no connection is attempted:


<pre>
<pre>
mv .../certs ~root/.certs
...
set debug
...
</pre>
</pre>


Configure <tt>/etc/mail.rc</tt> as follows:
==Configuring mailx to Relay via a Google SMTP Server==
 
<pre>
 
...
 
account gmail {
set smtp-use-starttls
set smtp-auth=login
set smtp=smtps://smtp.gmail.com:587
set from="root@now510"
set smtp-auth-user=your.smtp.user@gmail.com
set smtp-auth-password=your.pass
set ssl-verify=ignore
set nss-config-dir=/root/.certs
}
</pre>


<font color=red>TODO: try a per-user mail.rc that is read restricted because it contains sensitive credentials.</font>
<blockquote style="background-color: #f9f9f9; border: solid thin lightgrey;">
:[[Configure mailx to Relay via a Google SMTP Server]]
</blockquote>


Test:
=Using from Command Line=


<pre>
<pre>
echo "mailx e-mail" | mailx -v -A gmail -s "test" somebody@example.com
echo "test" | mailx -A gmail -s "test" test@example.com
</pre>
</pre>
Deplete:
* http://www.systutorials.com/1411/sending-email-from-mailx-command-in-linux-using-gmails-smtp/
* http://stackoverflow.com/questions/16799407/mailx-and-gmail-nss-config-dir
* http://serverfault.com/questions/498588/smtp-gmail-com-from-bash-gives-error-in-certificate-peers-certificate-issuer
* http://www.systutorials.com/1411/sending-email-from-mailx-command-in-linux-using-gmails-smtp/
Last:
SSL/TLS handshake failed: Unknown error -5938.
http://stackoverflow.com/questions/16799407/mailx-and-gmail-nss-config-dir
continue to https://kb.novaordis.com/index.php/mail#Configuration
Clarify mail on now510: be able to send mail and test how does cron reacts to it (success or failure). Document -> [http://www.systutorials.com/1411/sending-email-from-mailx-command-in-linux-using-gmails-smtp/], understand the nss business.
Document NSS
• http://serverfault.com/questions/498588/smtp-gmail-com-from-bash-gives-error-in-certificate-peers-certificate-issuer
Try to use the /etc/pki/nssdb
IMPORTANT! My google password is in /etc/mail.rc
Tried:
echo "test" | mailx -v -A gmail -s "command line e-mail" ovidiu@feodorov.com

Latest revision as of 07:41, 17 March 2016

Internal

Installation

yum install mailx

Configuration

Verbose and Debug Output

In order to get verbose output, use the -v on mailx command line. This will send verbose output to stdout as the e-mail is being sent.

The debug option dumps the protocol headers, but it configures mailx to not send anything externally - no connection is attempted:

...
set debug
...

Configuring mailx to Relay via a Google SMTP Server

Configure mailx to Relay via a Google SMTP Server

Using from Command Line

echo "test" | mailx -A gmail -s "test" test@example.com