Настройка отправки почты с помощью Exim4 / Ubuntu
Размещено: 2-12-2014, 14:42 | Просмотров: 7744 | Комментариев: 0
Часто для сайтов требуется отправка писем (уведомления о комментариях, информация о регистрации о прочая нужная и не очень информация) для этого я предлагаю воспользоваться, пожалуй, самым простым способом. Для того, чтобы заставить php отправлять письма с сайта, установим почтовый сервер exim.

Установка
Для Debian:
$ aptitude install exim4 exim4-config

Для Ubuntu:
sudo apt-get install exim4 exim4-config

Настройка
В файле конфигурации php поправим sendmail_path.
В Debian:
/etc/php5/apache2/php.ini или /etc/php4/apache2/php.ini


sendmail_path = /usr/sbin/exim4 -t

Теперь необходимо настроить exim:
$ dpkg-reconfigure exim4-config

В появившемся диалоговом окне вам будут задавать вопросы. На первый (Общий тип почтовой конфигурации) отвечаем:
интернет-сайт; прием и отправка почты напрямую, используя SMTP.
А далее просто жмем Enter до конца настройки. Теперь все должно работать.
Проверка
Для проверки создайте простой php скриптик:
$ cat testmail.php

и запустите его на выполнение:
$ php testmail.php

Если письмо пришло, значит у вас все работает.

Настройка exim на почту для доменов от Яндекса (pdd.yandex.ru)
Настраиваем отправку почты с нашего сервера через почту для доменов от Яндекса.
Для примера, используем домен pipel.org.
Запускаем конфигурирование exim'а:
dpkg-reconfigure exim4-config

Отвечаем на вопросы:
mail sent by SMARTHOST; received via SMTP or fetchmail
Type System Mail Name: пусто
Type IP Adresses to listen on for incoming SMTP connections: 127.0.0.1 ; ::1
Other destinations for which mail: пусто
Machines to relay mail for: пусто
Type Machine handling outgoing mail for this host (smarthost): smtp.yandex.ru:587
Hide local mail name in outgoing mail: Нет
Keep number of DNS-queries minimal (Dial-on-Demand): Нет
Delivery method for local mail: mbox format in /var/mail/ /exim4/conf.d/rewrite/00_exim4-config_header
split configuration into small files: Да

Теперь прописываем пароль для ящика в файле /etc/exim4/passwd.client:
smtp.yandex.ru:noreply@pipel.org:СВОЙ_ПАРОЛЬ

Почтовый сервер яндекс ругается, что нужно заполненное поле FROM. Прописываем его в файле /etc/exim4/conf.d/rewrite/00_exim4-config_header:
begin rewrite
*@* noreply@pipel.org Ffr