Отправка почты через внешний SMTP сервер. Exim4
By admin ~ Декабрь 21st, 2008. Filed under: Сеть.
Если у вас домашний компьютер и выходите тестировать отсылку почты через php mail интерфейс - например mail().
Для этого вам нужно настройть exim4 и отправку на google smtp.
Exim - один из самых популярных (и мощных) MTA. Итак (всё делаем с правами root),
# apt-get install exim4
Отредактируем следующие параметры в файле /etc/exim4/update-exim4.conf.conf, чтобы отправлять почту через gmail
dc_eximconfig_configtype=’smarthost’
dc_smarthost=’smtp.gmail.com::587′
В файл авторизации /etc/exim4/passwd.client добавим следующие строки (подставляем свои логин и пароль вместо my.name и password соответственно)
gmail-smtp.l.google.com:my.name@gmail.com:password
*.google.com:my.name@gmail.com:password
smtp.gmail.com:my.name@gmail.com:password
Выполним следующую команду для применения новых настроек
# update-exim4.conf
На этом настройка завершена. Exim будет отправлять почту через gmail.
Popularity: 46%
Похожие статьи:
Июнь 3rd, 2009 at 00:42
Помогло, вот поподробнее:
1. Прописываем параметры аутентификации в /etc/exim4/passwd.client
smtp.gmail.com:myaccount@gmail.com:mypassword
gmail-smtp-msa.l.google.com:myaccount@gmail.com: mypassword
## Второй сервер нужен т.к. smtp.gmail.com ссылается на него
2. Запускаем в терминале
#dpkg-reconfigure exim4-config
И по шагам указываем следующую информацию
Общий тип почтовой конфигурации:
отправка почты через smarthost; приём по SMTP или через fetchmail
Почтовое имя системы:
Оставляем пустую строку
IP-адреса, с которых следует ожидать входящие соединения SMTP:
127.0.0.1
Другие места назначения, для которых должна приниматься почта:
Оставляем пустую строку
Машины, для которых доступна релейная передача почты:
Оставляем пустую строку
IP-адрес или имя хоста являющегося исходящим smarthost:
smtp.gmail.com::587
Скрывать локальное почтовое имя в исходящей почте?
Нет
Сокращать количество DNS-запросов до минимума (дозвон по требованию)?
Нет
Метод доставки локальной почты:
mbox формат в /var/mail/
Разделить конфигурацию на маленькие файлы?
Да
3. Пробуем отправить почту
Если возникнут проблемы, то хорошо помогут логи в файле /var/log/exim4/mainlog. Кстати, для его мониторинга хорошо поможет пакет eximon4, в Ubuntu его можно установить через Synaptic.
Для проверки отправки письма можно вызывать скрипт на php:
$res = mail(’toaddress@yandex.ru’, ‘Тема сообщения’, ‘Текст сообщения’);
print_r($res);
Июнь 30th, 2009 at 17:53
а у меня почта за пределы /var/mail/ не уходила пока не поставил отправка почты через smart-host без локальной почты
Июль 24th, 2009 at 13:43
Сделал все как написал mnv - не работает
А что должно быть написано в php.ini в sendmail_path = ?
Июль 25th, 2009 at 01:23
Ага, разобрался.
Нужно делать все точно как в первом посте (by admin), а в php.ini строку sendmail_path надо закоментировать - вроде работает…
Ноябрь 24th, 2009 at 16:56
А если письма должны идти от нескольких пользователей и у каждого свой логин и пароль?
Март 23rd, 2010 at 17:46
Настроил по статье, ошибка:
kert@hard.nov.ru R=smarthost T=remote_smtp_smarthost: SMTP error from remote mail server after RCPT TO:: host smtp.list.ru [94.100.177.4]: 550 not local sender over smtp
Июль 13th, 2010 at 21:04
Спасибо большое, максимально просто. Делал только как написано в посте, то что в первом камменте не стал делать, помогло.
Январь 8th, 2011 at 15:49
Спасибо, долго мучился с SendMail, потом плюнул и поставил Exim4. В php.ini строку sendmail_path не стал комментировать, создал симлинк на c *exim4 на @sendmail.
Февраль 2nd, 2011 at 10:46
Единственная проблема: Googl, с…обака, переписывает заголовки From, Return-Path и т.п. на оригинальный адрес отправителя.
Ни переписывание хеадеров при отправке письма, ни даже параметр “-f{$from}” не помогают.
При этом Exim обрабатывает правильно:
2011-02-02 09:21:30 1PkW5q-0001Am-EJ poluchatel@mail.ru R=smarthost T=remote_smtp_smarthos…
2011-02-02 09:21:33 1PkW5q-0001Am-EJ Completed
Но почта на ящик приходит не от tpravitel@mail.ru, а от того ящика gmail, на который настроен Exim (типа vasya.pupkin@gmail.com).
Даже не знаю, как с этим бороться. Кто что может посоветовать?
Сентябрь 24th, 2011 at 22:20
Спасибо за статью.
есть вопрос как отключить отправку сообщений на Аккаунт через который работает exim4
тоесть сюда
gmail-smtp.l.google.com:my.name@gmail.com:password
*.google.com:my.name@gmail.com:password
smtp.gmail.com:my.name@gmail.com:password
Август 16th, 2012 at 16:23
спасибо, хочу от себя ещё добавить, что если всё то же на яндексе - то ругаетсяна поле FROM. Прописываем его в файле /etc/exim4/conf.d/rewrite/00_exim4-config_header:http://www.zagirov.name/exim-pdd-yandex-ru
begin rewrite
*@* no-reply@zagirov.name Ffr
источник -
Август 18th, 2015 at 19:30
Отличная статья. Все заработало без проблем. Спасибо