Christopher Juckins

SysAdmin Tips, Tricks and other Software Tools

User Tools

Site Tools


gmail_as_a_relay_on_linux

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
gmail_as_a_relay_on_linux [2019/05/01 11:25] juckinsgmail_as_a_relay_on_linux [2026/09/11 08:02] (current) juckins
Line 1: Line 1:
-===== Using Gmail as a Relay on CentOS Linux =====+==== Using Gmail as a Relay on RedHat Linux with Gmail app password ====
  
-Required packages if CentOS6 6.7\\ +RockyLinux 9 Notes
-  * postfix (tested version 2:2.6.6-6.el6_5) +  * (Nothing special noted)
-  * ca-certificates.noarch (tested version 2015.2.4-65.0.1.el6_6) +
- +
-Required packages if CentOS7 7.2.1511: \\ +
-  * postfix (tested version 2.10.1-6.el7 ) +
-  * ca-certificates.noarch (tested version 2015.2.4-70.0.el7_1) +
-  * cyrus-sasl-plain (tested version 2015.2.6-70.1.el7_2) +
-    * Got hint that this is needed from [[http://www.postfix.org/SASL_README.html#client_sasl_policy|Postfix config]] +
-  * cyrus-sasl-lib (tested version 2.1.26-20.el7_2) +
- +
-Other CentOS 7 Notes: +
-  * Best to use this version of mutt: mutt-1.6.2-1.fc22.x86_64.rpm +
-    * Otherwise, you may get errors like: Bad IDN in "from": 'tidewater.�' +
-  * /etc/resolv.conf may need the 'search' pattern, ex: search attlocal.net +
-    * As root, run 'nmtui' to set network parameters +
-  * If trouble sending after install, may need to consult [[http://unix.stackexchange.com/questions/109473/after-updating-ssmtp-to-version-2-61-i-cannot-send-mail-via-gmail|this link]]+
  
 Directions [[http://mhawthorne.net/posts/postfix-configuring-gmail-as-relay.html|based on this page by Matthew Hawthorne]]: \\ Directions [[http://mhawthorne.net/posts/postfix-configuring-gmail-as-relay.html|based on this page by Matthew Hawthorne]]: \\
  
-1. If installed, make sure /etc/ssmtp/ssmtp.conf is the distro version (no changes, and it is not needed on CentOS 7)+1. If it exists, make sure /etc/ssmtp/ssmtp.conf is the distro version with no changes
  
 2. Make a backup copy of /etc/postfix/main.cf 2. Make a backup copy of /etc/postfix/main.cf
Line 28: Line 13:
  
 <code> <code>
-sets gmail as relay+Sets gmail as relay
 relayhost = [smtp.gmail.com]:587 relayhost = [smtp.gmail.com]:587
  
-use tls+Use tls
 smtp_use_tls=yes smtp_use_tls=yes
  
-use sasl when authenticating to foreign SMTP servers+Use sasl when authenticating to foreign SMTP servers
 smtp_sasl_auth_enable = yes  smtp_sasl_auth_enable = yes 
  
-path to password map file+Path to password map file
 smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
  
 +# NOTE: This section *should* be configured properly in CentOS8 and RockyLinux9 by default
 # list of CAs to trust when verifying server certificate # list of CAs to trust when verifying server certificate
 #smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt #smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
 # Below is provided by ca-certificates package (Mozilla CA root certificate bundle) # Below is provided by ca-certificates package (Mozilla CA root certificate bundle)
-smtp_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt+smtp_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt (note it may also be in /etc/ssl/certs/ca-bundle.crt especially Fedora 43+)
  
-eliminates default security options which are incompatible with Gmail+Eliminates default security options which are incompatible with Gmail
 smtp_sasl_security_options = smtp_sasl_security_options =
  
-add debugging+Modify debugging (make sure to comment pre-existing entries)
 debug_peer_list=smtp.gmail.com debug_peer_list=smtp.gmail.com
 debug_peer_level=3 debug_peer_level=3
 </code> </code>
  
-4. Add your own Gmail credentials to /etc/postfix/sasl_passwd \\+4. Add your own Gmail credentials to /etc/postfix/sasl_passwd (the password needs to be a Google App-Specific password to get around the 2FA requirement \\
 <code> <code>
-[smtp.gmail.com]:587  username:password+[smtp.gmail.com]:587  [email protected]:GMAIL_APP_PASSWORD
 </code> </code>
  
Line 86: Line 72:
 </code> </code>
  
-9. Edit ~/.muttrc for each user as appropriate: \\+9. Add these lines to the global /etc/Muttrc.local (easier than adding it to each user's $HOME/.muttrc): \\
  
 <code> <code>
-#set from = $USER@$HOSTNAME +set from = "`whoami`@`hostname`
-#set from = username@HOSTNAME_OR_ALIAS.domain +set realname = "`whoami`@`hostname`"
-#set realname="juckins@lightning+
-set realname="$USER@$HOSTNAME(works in CENTOS7, mutt-1.5.21-26.el7.x86_64 but *not* via cron sending) +
 </code> </code>
  
Line 100: Line 83:
 mutt -s "Test1" [email protected] </dev/null mutt -s "Test1" [email protected] </dev/null
 </code> </code>
-or to send a message without using a separate file:+or to send a message without using a separate file but note mailx is probably not looking at .muttrc:
 <code> <code>
 echo 'It works' | mailx -s 'Test message' [email protected] echo 'It works' | mailx -s 'Test message' [email protected]
 +</code>
 +or 
 +<code>
 +mailx -a test.txt -s "test subject" user@domain < /dev/null
 </code> </code>
  
Line 111: Line 98:
 [[https://www.digitalocean.com/community/tutorials/how-to-use-gmail-or-yahoo-with-php-mail-function|How To Use Gmail or Yahoo with PHP mail() Function]] \\ [[https://www.digitalocean.com/community/tutorials/how-to-use-gmail-or-yahoo-with-php-mail-function|How To Use Gmail or Yahoo with PHP mail() Function]] \\
 [[https://techjourney.net/update-add-ca-certificates-bundle-in-redhat-centos/|Updating certificates]] (not needed at this point) [[https://techjourney.net/update-add-ca-certificates-bundle-in-redhat-centos/|Updating certificates]] (not needed at this point)
 +
 +
 +----
 +
 +**Old notes**\\
 +
 +CentOS 8 Notes:
 +  * (Nothing special noted)
 +
 +CentOS7 7.2.1511 Notes and Required Packages: \\
 +  * postfix (tested version 2.10.1-6.el7 )
 +  * ca-certificates.noarch (tested version 2015.2.4-70.0.el7_1)
 +  * cyrus-sasl-plain (tested version 2015.2.6-70.1.el7_2)
 +    * Got hint that this is needed from [[http://www.postfix.org/SASL_README.html#client_sasl_policy|Postfix config]]
 +  * cyrus-sasl-lib (tested version 2.1.26-20.el7_2)
 +
 +Other CentOS 7 Notes:
 +  * Best to use this version of mutt: mutt-1.6.2-1.fc22.x86_64.rpm
 +    * Otherwise, you may get errors like: Bad IDN in "from": 'tidewater.�'
 +  * /etc/resolv.conf may need the 'search' pattern, ex: search attlocal.net
 +    * As root, run 'nmtui' to set network parameters
 +  * If trouble sending after install, may need to consult [[http://unix.stackexchange.com/questions/109473/after-updating-ssmtp-to-version-2-61-i-cannot-send-mail-via-gmail|this link]]
gmail_as_a_relay_on_linux.1556724346.txt.gz · Last modified: by juckins