Mac OS X 10.10 Yosemite Postfix SASL authenticatio

2019-01-21 05:53发布

问题:

I followed the step described in the link below to setup my mac to send out email. http://www.anujgakhar.com/2011/12/09/using-macosx-lion-command-line-mail-with-gmail-as-smtp/

It was working fine on my Mac OS X 10.9. But after I upgraded to OS X 10.10. The mail.log showed the following error. What is the problem?

Oct 19 00:28:22 paullam-macbook-pro.local postfix/smtp[30383]: 6B47B8AD4E8: SASL authentication failed; cannot authenticate to server smtp.gmail.com[74.125.68.109]: generic failure
Oct 19 00:28:24 paullam-macbook-pro.local postfix/smtp[30383]: 6B47B8AD4E8: to=<zzpaul@gmail.com>, relay=smtp.gmail.com[74.125.68.108]:587, delay=3.4, delays=0.01/0/3.4/0, dsn=4.7.0, status=deferred (SASL authentication failed; cannot authenticate to server smtp.gmail.com[74.125.68.108]: generic failure)

回答1:

I had the same problem. A Google search turned up this link: http://hkitago.com/2014/09/yosemiteのpostfix設定/

It turned out I was missing the following line in /etc/postfix/main.cf:

smtp_sasl_mechanism_filter = plain


回答2:

I added both snippets as suggested, but still no luck. Then I found this article:

http://www.developerfiles.com/how-to-send-smtp-mails-with-postfix-mac-os-x-10-8/

and ran the following steps from it:

Step 2. Create the sasl_passwd file We need to create the sasl_passwd file with the SMTP credentials

sudo vi /etc/postfix/sasl_passwd

Write the following content exactly (don't put in your user address and password) and save:

smtp.gmail.com:587 your_address@gmail.com:password

Create the Postfix lookup table from the sasl_passwd file.

sudo postmap /etc/postfix/sasl_passwd

This will create the file sasl_passwd.db

Step 3. Restart Postfix To apply all new changes we have to restart Postfix:

sudo postfix reload

And still no luck. But then I noticed that relayhost in /etc/postfix/main.cf

was commented out with brackets like so:

relayhost = [smtp.gmail.com]:587

I changed this line to:

relayhost = smtp.gmail.com:587

reloaded postfix with:

sudo postfix reload

and postfix started sending email. Hooray!



回答3:

It turned out I needed another piece to get this to work.

sudo vi /System/Library/LaunchDaemons/org.postfix.master.plist

and right after this:

<dict>

add this:

<key>RunAtLoad</key>
<true/>

I can now send emails with Postfix on Yosemite!



回答4:

Answer by @Josh is working just fine (can lot leave comments on the answer), but using login as a filter would also work just fine. Not sure what the difference is, though.

As stated by the documentation page