32

I've been trying to configure email to forward to Gmail, using Postfix to relay email to smtp.gmail.com. However, I'm failing to get it to authenticate with smtp.gmail.com, which is a rather vital prerequisite to getting anything working…

The mail logs show only:

Oct 29 15:50:14 gsnedders-1 postfix/master[6596]: daemon started -- version 2.7.1, configuration /etc/postfix
Oct 29 15:50:19 gsnedders-1 postfix/pickup[6598]: EBA1F78750: uid=1000 from=<gsnedders>
Oct 29 15:50:19 gsnedders-1 postfix/cleanup[6603]: EBA1F78750: message-id=<20111029145019.EBA1F78750@mail.gsnedders.com>
Oct 29 15:50:19 gsnedders-1 postfix/qmgr[6599]: EBA1F78750: from=<gsnedders@gsnedders.com>, size=324, nrcpt=1 (queue active)
Oct 29 15:50:19 gsnedders-1 postfix/cleanup[6603]: F2D557874F: message-id=<20111029145019.EBA1F78750@mail.gsnedders.com>
Oct 29 15:50:19 gsnedders-1 postfix/local[6605]: EBA1F78750: to=<me@gsnedders.com>, orig_to=<me>, relay=local, delay=0.04, delays=0.03/0.02/0/0, dsn=2.0.0, status=sent (forwarded as F2D557874F)
Oct 29 15:50:19 gsnedders-1 postfix/qmgr[6599]: F2D557874F: from=<gsnedders@gsnedders.com>, size=454, nrcpt=1 (queue active)
Oct 29 15:50:19 gsnedders-1 postfix/qmgr[6599]: EBA1F78750: removed
Oct 29 15:50:20 gsnedders-1 postfix/smtp[6606]: warning: SASL authentication failure: No worthy mechs found
Oct 29 15:50:20 gsnedders-1 postfix/smtp[6606]: F2D557874F: SASL authentication failed; cannot authenticate to server smtp.gmail.com[74.125.157.108]: no mechanism available

And the postfix config is:

relayhost = [smtp.gmail.com]:587

smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl/passwd
smtp_sasl_security_options = noanonymous

smtp_tls_eccert_file =
smtp_tls_eckey_file =
smtp_tls_security_level = may
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtpd_tls_received_header = yes
tls_random_source = dev:/dev/urandom
smtpd_tls_security_level = may
| improve this question | | | | |
  • First modify the following line in /etc/postfix/master.cf: smtp unix - - y - - smtp -v, so you can get more details in the log. – Jaime Hablutzel Aug 8 '18 at 4:50
45

Ah-ha! Installing the libsasl2-modules package solved the problem.

| improve this answer | | | | |
  • And that's a lowercase L and not a 1 in the above package. – leeand00 Jul 11 '17 at 7:23
  • 5
    Most satisfying fix to a problem ever.. – Ricky Boyce May 25 '18 at 9:34
26

Running

sudo yum install cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain

helped me on Amazon AWS server.

| improve this answer | | | | |
  • Also helps with Postfix on Fedora 27 (there you have to replace yum with dnf, of course) - also with other SMTP relays that do plain authentication over TLS. Just installing postfix doesn't pull in the cyrus-sasl-plain package ... (this changed from Fedora 26). – maxschlepzig Apr 3 '18 at 8:51
  • Thank you! This fixed my issue. – Jayman8543 Sep 19 '19 at 3:12
2

sudo yum install cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain

worked for me with Gmail relay setup (CentOS 7)

| improve this answer | | | | |
1

I was getting this issue(tail -f /var/log/mailog):

to=<usmanali@example.com>, relay=smtp.sendgrid.net[169.45.113.201]:587, delay=0.3, delays=0.05/0.07/0.16/0.02, dsn=5.0.0, status=bounced (host smtp.sendgrid.net[169.45.113.201] said: 550 Unauthenticated senders not allowed (in reply to MAIL FROM command))

Then i changed file /etc/postfix/main.cf in this way that added following lines into end of file

mtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
mailbox_size_limit = 256000000

# Sendgrid Settings
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = static:apikey:SG.YOUR_SENDGRID_KEY
smtp_sasl_security_options = noanonymous
smtp_tls_security_level = may
header_size_limit = 4096000
relayhost = [smtp.sendgrid.net]:587

Then Installing postfix missing module dependency using:

sudo yum install cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain

Then restarting postfix

sudo systemctl restart  postfix.service

Finally it works on centos 7

| improve this answer | | | | |
0

Setting up following environment variable worked for me:

SASL_PATH=/usr/lib/x86_64-linux-gnu/sasl2

(this is for Ubuntu).

| improve this answer | | | | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.