В интернете довольно много записей на эту тему, но почти все они описывают настройку используя самоподписанный сертификат, что не правильно. Это побудило меня написать еще один пост на тему релеея через gmail.
Почтовой системой по умолчанию в Debian является exim, поэтому сначала требуется установить postfix, а заодно сертификаты корневых центров сертификации:
root@localhost:~$ apt-get install postfix ca-certificates
После этого в конфигурационный файл /etc/postfix/main.cf нужно добавит следующие строки:
relayhost= [smtp.gmail.com]:587
smtp_destination_rate_delay = 60
relay_destination_rate_delay = 60
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
smtp_sasl_security_options = noanonymous
transport_maps = hash:/etc/postfix/transport
smtp_generic_maps = hash:/etc/postfix/generic
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes
Создаем файл /etc/postfix/transport:
* smtp:[smtp.gmail.com]:587
И /etc/postfix/sasl_password:
[smtp.gmail.com]:587 [email protected]:password
Файл /etc/postfix/generic служит для настройки преобразования локальных адресов электронной почты в интернет адреса, например:
root@hostname [email protected]
root@localhost [email protected]
[email protected] [email protected]
Выставляем права доступа и создаем хеш-файлы:
root@localhost:~$ chmod 400 /etc/postfix/sasl_password
root@localhost:~$ postmap /etc/postfix/sasl_password
root@localhost:~$ postmap /etc/postfix/transport
root@localhost:~$ postmap /etc/postfix/generic
Делаем символическую ссылку на корневой сертификат Gmail:
root@localhost:~$ ln -s /etc/ssl/certs/Equifax_Secure_CA.pem /etc/postfix/cacert.pem
Перезапускаем postfix:
root@localhost:~$ invoke-rc.d postfix restart
Настройка закончена, теперь можно отправить тестовое сообщение:
root@localhost:~$ sendmail -bv [email protected]
Проверяем лог:
root@localhost:~$ tail /var/log/mail.log
Oct 20 21:15:07 localhost postfix/pickup[22317]: 41C5F1FFC1D: uid=0 from=
Oct 20 21:15:07 localhost postfix/cleanup[22339]: 41C5F1FFC1D:
message-id=<20101020171507.41C5F1FFC1D@dfs>
Oct 20 21:15:07 localhost postfix/qmgr[22318]: 41C5F1FFC1D: from=, size=250,
nrcpt=1 (queue active)
Oct 20 21:15:09 localhost postfix/smtp[22342]: 41C5F1FFC1D: to=,
relay=smtp.gmail.com[74.125.79.109]:587, delay=2.1, delays=0.11/0.13/1.6/0
.26, dsn=2.1.5, status=deliverable (250 2.1.5 OK q51sm496806eeh.22)
Если нет ошибок, можно проверять почту, скорее всего вы найдете там письмо.
5 комментариев “Настройка postfix с релеем через Gmail в Debian Linux”
Сертификаты корневых центров сертификации содержатся в пакете ca-certificates
Добрый день! а как Вы получили корневой сертификат?
для преобразования адресов, как было замечено, используется /etc/postfix/generic
Работать-то работает, но независимо какой почтовый адрес подставляю в файле
/etc/postfix/sasl_password
[smtp.gmail.com]:587 [email protected]:password
адрес отправителя в письмах остается неизменным. Хотя я так понимаю он долже меняться на [email protected]
Даже если строку закоментирвать письма приходят, но с одного и тогоже отправителя.
Подскажите что делать…
Спасибо, работает.