Возникла необходимость на клиентской версии MacOS (10.6.7, если кого-то заинтересует) подрубить sendmail для отправки писем с помощью PHP-скрипта. Дефолтненько sendmail отправляет письма только локальным пользователям (хз почему @_@, лень ковыряться было с тем, чито там джобсы наворотили), поэтому я решил настроить relay через гугло-smtp. Как? Так!
/etc/postfix/main.cf:
smtp_sasl_security_options = noanonymous
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl/passwd
/etc/postfix/sasl/passwd:
[smtp.gmail.com]:587 user@domain:password
Стоит заметить, что личные домены, прикрепленные к гуглопочте, тоже работают. Далее:
# postmap /etc/postfix/sasl/passwd
Создадим сертификат:
# openssl req -utf8 -newkey rsa:1024 -keyout cacert.pem -nodes -x509 -days 365 -out cacert.pem
И, наконец:
Все должно работать. Проверяем лог:
/etc/postfix/main.cf:
smtp_sasl_security_options = noanonymous
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl/passwd
/etc/postfix/sasl/passwd:
[smtp.gmail.com]:587 user@domain:password
Стоит заметить, что личные домены, прикрепленные к гуглопочте, тоже работают. Далее:
# postmap /etc/postfix/sasl/passwd
Создадим сертификат:
# openssl req -utf8 -newkey rsa:1024 -keyout cacert.pem -nodes -x509 -days 365 -out cacert.pem
# postfix reload
sh-3.2# cat /var/log/mail.log | grep OK
Apr 25 05:20:16 pztrn postfix/smtp[3282]: 00253E314E: to=<pztrn@pztrn.ru>, relay=smtp.gmail.com[209.85.227.109]:587, delay=3.2, delays=0.04/0.24/1.6/1.3, dsn=2.0.0, status=sent (250 2.0.0 OK 1303694416 o23sm3016277wbc.10)
Комментариев нет:
Отправить комментарий