Настраиваем postfix в mac os x
Хочу поделиться азами настройки почтового сервера postfix, идущего в комплекте с MAC OS X для целей локальной разработки интернет-магазинов на Drupal и Ubercart.
Дано:
1. Ноутбук с mac os x
2. Стек Acquia Drupal (просто удобный, мне нравится)
3. Интернет-магазин с Ubercart
Нужно:
Научить интернет-магазин слать заказы через встроенный в Mac OS X почтовик Postfix с использованием внешнего SMTP-сервера.
Допустим у нас есть доступ к внешнему SMTP, требующему авторизацию и корректного адреса в поле FROM для отправляемых писем.
Допустим адрес нашего почтовика smtp.vneshnij.ru, логин и пароль для которого testlogin и testpasswd, а адрес address@test.ru.
Начнем настраивать postfix.
Для начала научим его отправлять почту по требованию программ
% sudo launchctl unload /System/Library/LaunchDaemons/org.postfix.master.plist
выгрузили почтового демона
% sudo defaults write /System/Library/LaunchDaemons/org.postfix.master OnDemand -bool true
записали в системные настройки запуск постфикса по требованию
% sudo launchctl load /System/Library/LaunchDaemons/org.postfix.master.plist
загрузили демона
Шаги не обязательные в общем-то, ну а чего почтовик будет постоянно в памяти болтаться.
Дальше настраиваем отправку писем через внешний smtp
% sudo postconf -e relayhost=smtp.vneshnij.ru
Учим постфикса подключаться с использованием авторизации
% sudo touch /etc/postfix/sasl_passwd
создаем файл для хранения логинов-паролей
% sudo echo smtp.vneshnij.ru testlogin:testpasswd >> /etc/postfix/sasl_passwd
записываем туда нужные
% sudo postconf -e smtp_sasl_auth_enable=yes
включаем в конфиге постфикса авторизацию при отправке сообщений
% sudo postconf -e smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd
указываем откуда брать логины-пароли
%sudo postmap /etc/postfix/sasl_passwd
обрабатываем наш файлик командой postmap, дабы postfix его правильно подцепил
Перегружаем постфикс.
Кажется все, но давайте попробуем сделать заказ в нашем магазине на Ubercart.
И посмотреть что будет в логах почтовика.
Заказываем товар, а сами смотрим, что происходит в логах
%tail -f /var/log/mail.log
Видим, что постфикс подключается к нашему smtp-шнику, но получает отлуп, т.к. письма имеют в поле FROM странную конструкцию вида ad_apache@compvasi.pupkin
Друпал криво вызывает почтовую функцию php, поэтому поле from идет не заполненным, даже когда вы указали адрес магазина в настройках Ubercart.
Но это не беда, на помощь придет все тот же постфикс.
По методе, указанной выше пишем в конфиг /etc/postfix/main.cf:
строку smtp_generic_maps=hash:/etc/postfix/generic
В файлике /etc/postfix/generic пишем алиас для ad_apache@compvasi.pupkin
Примерно так:
ad_apache@compvasi.pupkin address@test.ru
Говорим
%sudo postmap /etc/postfix/generic
Затем перегружаем почтовик и видим чудную картину – все письма, отправленные через тестовый друпал, который крутится на нашем ноутбуке, отправляются через внешний smtp-сервер на любые внешние адреса.
Можно продолжать разработку! :)
За помощь в забарывании постфикса огромное спасибо камраду Boatsman-у :)
Еще на эту тему:ideneb 1.5.1 на dell 1525 Вчера переустановил макось на своем ноуте (напоминаю, у меня dell 1525).Ставил ideneb 1.5, который правда пришлось сразу же патчить до...
Сколько стоит mac os x Мне тут стало интересно, а сколько стоит mac os x (leopard и новенький snow leopard).Провел небольшое исследование, результатами делюсь с...
Книга Mac OS X Leopard, основное руководство Давеча мне в руки попала неплохая книга по mac os x. Называется «Mac OS x Leopard, основное руководство«, за авторством...
Снимаем скриншоты в Mac OS X За что я полюбил мак, за те небольшие удобняшки, которые предоставляет система пользователю. Например, если нужно сделать снимок экрана, то...
Оставить комментарий