Difference between revisions of "Outgoing mail via gmail"
From Amahi Wiki
Moncapitaine (talk | contribs) (first version) |
|||
(49 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | === | + | {{MessageBox| |
− | + | backgroundcolor = #faa| | |
− | + | image =Warning.png| | |
+ | heading =WARNING| | ||
+ | message = This is recommended only for advanced users, proceed with caution.}} | ||
+ | This tutorial is now available as the Amahi [https://www.amahi.org/apps/postfix-mail-relay Post Mail Relay] application. | ||
− | + | This can be used to send mails from your Amahi 7 or greater (Fedora 19 or greater) HDA and to receive system emails. To receive emails meant for the root user, you have to [[Forward_System_Emails|Forward System Emails]] after finishing this tutorial. You also might want to take a look at [[Masquerade_email_address|Masquerade email address]] as well.<br> | |
− | + | REF: [http://opentodo.net/2013/03/postfix-smtp-relay-to-smtp-gmail-com Postfix SMTP relay to SMTP gmail.com] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | * First of all, install postfix and remove sendmail: <br> | |
− | + | <pre>yum -y install postfix mailx | |
+ | yum -y remove sendmail</pre> | ||
− | * | + | * Add the following to the bottom of the file /etc/postfix/main.cf. You do not need to change anything else in it, as the last setting for any option is the one that is saved. |
− | + | <pre>####Gmail SMTP Relay | |
− | + | #TLS parameters | |
− | + | smtpd_use_tls=yes | |
− | + | smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache | |
− | + | smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache | |
+ | smtp_tls_note_starttls_offer = yes | ||
+ | smtp_tls_policy_maps = hash:/etc/postfix/tls_policy | ||
+ | |||
+ | #Relay host configuration | ||
+ | relayhost = [smtp.gmail.com]:587 | ||
+ | |||
+ | #SASL Configuration | ||
+ | smtp_sasl_auth_enable = yes | ||
+ | smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd | ||
+ | smtp_sasl_security_options = noanonymous | ||
+ | smtp_sasl_mechanism_filter = plain | ||
+ | smtp_sasl_tls_security_options = noanonymous</pre><br /> | ||
− | + | * Create /etc/postfix/sasl_passwd file with your Gmail login credentials that looks like below: | |
− | + | <pre>[smtp.gmail.com]:587 user@gmail.com:Password</pre> | |
− | + | <br /> | |
− | + | <b>NOTE:</b> Change ''user'' to your username and ''password'' to your gmail crredentials. <br /> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | * Build the password database: <br> | |
− | + | <pre>postmap hash:/etc/postfix/sasl_passwd</pre> | |
− | + | * Create /etc/postfix/tls_policy file that looks like below: | |
− | + | <pre>[smtp.gmail.com]:587 encrypt</pre> | |
+ | <br /> | ||
+ | * Build the policy database: <br> | ||
+ | <pre>postmap /etc/postfix/tls_policy</pre> | ||
− | + | * Protect the files with your Gmail login data: | |
− | + | <pre>chmod 600 /etc/postfix/sasl_passwd | |
− | + | chmod 600 /etc/postfix/sasl_passwd.db | |
+ | chmod 600 /etc/postfix/tls_policy | ||
+ | chmod 600 /etc/postfix/tls_policy.db</pre><!-- | ||
+ | chown postfix /etc/postfix/sasl_passwd | ||
+ | chown postfix /etc/postfix/sasl_passwd.db | ||
+ | chown postfix /etc/postfix/tls_policy | ||
+ | chown postfix /etc/postfix/tls_policy.db--> | ||
− | + | * Restart Postfix: | |
− | + | <pre>systemctl restart postfix.service</pre> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | * Set Postifx to start on boot: | |
− | + | <pre>systemctl enable postfix.service</pre> | |
− | + | * Now try sending a mail, it should reach your Gmail account: | |
+ | <pre>echo test 1 2 | mail -s "Test mail" user@gmail.com</pre> | ||
− | |||
− | + | <b>NOTE:</b> Some ISPs will block emails sent using this method. Looking for a work around. | |
+ | == Troubleshooting == | ||
+ | * If you get the message " warning: SASL authentication failure: No worthy mechs found", install this package. | ||
+ | yum install cyrus-sasl{,-plain} | ||
− | + | :Restart Postfix | |
+ | systemctl restart postfix | ||
− | + | * Receive the following message: | |
− | + | connect to smtp.gmail.com[2607:f8b0:400e:c05::6d]:587: Network is unreachable | |
− | + | :To correct this problem, change /etc/postfix/main.cf as follows: | |
− | + | inet_protocol = ipv4 | |
− | + | :Restart postfix | |
+ | systemctl reload postfix | ||
− | + | See also:<br> | |
+ | [[Forward_System_Emails|Forward System Emails]]<br> | ||
+ | [[Monitor_System_Logs_via_E-mail|Monitor System Logs via E-mail]]<br> |
Latest revision as of 15:36, 17 June 2020
WARNING | |
---|---|
This is recommended only for advanced users, proceed with caution. |
This tutorial is now available as the Amahi Post Mail Relay application.
This can be used to send mails from your Amahi 7 or greater (Fedora 19 or greater) HDA and to receive system emails. To receive emails meant for the root user, you have to Forward System Emails after finishing this tutorial. You also might want to take a look at Masquerade email address as well.
REF: Postfix SMTP relay to SMTP gmail.com
- First of all, install postfix and remove sendmail:
yum -y install postfix mailx yum -y remove sendmail
- Add the following to the bottom of the file /etc/postfix/main.cf. You do not need to change anything else in it, as the last setting for any option is the one that is saved.
####Gmail SMTP Relay #TLS parameters smtpd_use_tls=yes smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache smtp_tls_note_starttls_offer = yes smtp_tls_policy_maps = hash:/etc/postfix/tls_policy #Relay host configuration relayhost = [smtp.gmail.com]:587 #SASL Configuration smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonymous smtp_sasl_mechanism_filter = plain smtp_sasl_tls_security_options = noanonymous
- Create /etc/postfix/sasl_passwd file with your Gmail login credentials that looks like below:
[smtp.gmail.com]:587 user@gmail.com:Password
NOTE: Change user to your username and password to your gmail crredentials.
- Build the password database:
postmap hash:/etc/postfix/sasl_passwd
- Create /etc/postfix/tls_policy file that looks like below:
[smtp.gmail.com]:587 encrypt
- Build the policy database:
postmap /etc/postfix/tls_policy
- Protect the files with your Gmail login data:
chmod 600 /etc/postfix/sasl_passwd chmod 600 /etc/postfix/sasl_passwd.db chmod 600 /etc/postfix/tls_policy chmod 600 /etc/postfix/tls_policy.db
- Restart Postfix:
systemctl restart postfix.service
- Set Postifx to start on boot:
systemctl enable postfix.service
- Now try sending a mail, it should reach your Gmail account:
echo test 1 2 | mail -s "Test mail" user@gmail.com
NOTE: Some ISPs will block emails sent using this method. Looking for a work around.
Troubleshooting
- If you get the message " warning: SASL authentication failure: No worthy mechs found", install this package.
yum install cyrus-sasl{,-plain}
- Restart Postfix
systemctl restart postfix
- Receive the following message:
connect to smtp.gmail.com[2607:f8b0:400e:c05::6d]:587: Network is unreachable
- To correct this problem, change /etc/postfix/main.cf as follows:
inet_protocol = ipv4
- Restart postfix
systemctl reload postfix
See also:
Forward System Emails
Monitor System Logs via E-mail