У меня есть домен, назовем его foobar.com. Все записи MX для foobar.com указывают на почтовые серверы Google, потому что я использую Google Apps для вашего домена управлять этим. Это здорово, потому что каждый получает все преимущества GMail, но наши адреса электронной почты не являются @ gmail.com.
У меня тоже есть сервер. В первую очередь, это веб-сервер, но он также выполняет другие функции. Одна из вещей, которые он обслуживает, - это веб-сайт foobar.com, а также сайты для различных виртуальных хостов, таких как shop.foobar.com и forum.foobar.com. На сервере работает Ubuntu 8.04, потому что мне нравится использовать выпуски LTS в производстве.
Дело в том, что на сервере работают различные приложения, которым нужна возможность отправлять электронные письма. Различные приложения, такие как cron jobs, присылают мне электронные письма в случае ошибок. Некоторым веб-приложениям необходимо отправлять сообщения электронной почты пользователям, когда они забывают свои пароли, для подтверждения новых зарегистрированных пользователей и т. Д. Наконец, приятно иметь возможность отправлять электронную почту из командной строки с помощью команды mail или mutt .
Как я могу настроить почту на веб-сервере для прохождения через почтовые серверы приложений Google? Мне не нужен веб-сервер для получения почты, хотя это было бы здорово. Мне он нужен для отправки почты с любого законного адреса @ foobar.com. Таким образом, приложение форума сможет отправлять письма с адресом forum@foobar.com в поле от, а приложение электронной коммерции будет иметь адрес shop@foobar.com в поле от. Кроме того, отправляя почту через серверы Google, мы можем избежать многих проблем, связанных с блокировкой электронной почты различными фильтрами спама в Интернете. SMTP-серверам Google доверяют намного больше, чем моим.
Я неплохо администрирую системы Linux, но когда дело доходит до электронной почты, у меня просто мертвый мозг. Мне нужны пошаговые инструкции от начала до конца о том, как это настроить. Мне нужно знать все, что нужно установить, и все необходимые изменения в файлах конфигурации. В прошлом я пробовал следовать различным практическим рекомендациям и руководствам, но ни одно из них не было совершенно правильным. Либо они вообще не работали, либо предложили не ту конфигурацию, которую я хотел.
Пожалуйста помоги. Спасибо.
Самый простой способ сделать это - избегать использования exim и использовать sSMTP, который является облегченным MTA.
Все, что вам нужно сделать, это установить его:
sudo apt-get install ssmtp mailutils
и настройте его (отредактируйте /etc/ssmtp/ssmtp.conf) для использования ваших почтовых серверов Google, см.:
root=noreply@yourdomain.com
mailhub=smtp.gmail.com:587
UseSTARTTLS=yes
UseTLS=yes
AuthUser=youremail@yourdomain.com
AuthPass=password
FromLineOverride=YES
Я использую эту настройку уже некоторое время, и она просто работает - также хорошо, что не нужно запускать exim, когда в этом нет необходимости, и позволить почтовым серверам Google все делать за вас.
В принципе, это очень просто.
$ sudo dpkg-reconfigure exim4-config
Выбирайте все, что для вас имеет смысл - если вы выбираете что-то с умным хостом. Когда вас спросят, какой смарт-хост использовать, ответьте: smtp.gmail.com::587.
Затем отредактируйте файл /etc/exim4/passwd.client, чтобы он соответствовал
gmail-smtp.l.google.com:login@yourappdomain.com:p@sSw0rd
*.google.com:login@yourappdomain.com:p@sSw0rd
smtp.gmail.com:login@yourappdomain.com:p@sSw0rd
И это делает свою работу.
ssmtp также работает нормально, но для доставки почты он оказался довольно медленным. Кроме того, я предпочитаю иметь демона для подключения.
Имейте в виду, что бесплатная версия GMail имеет ограничение на исходящие сообщения ~ 500 сообщений в день. Если вы не превысите этот предел, раствор для маффина отлично подойдет вам.
Если вам не нужно получать почту, вам действительно не нужно отправлять ее через Google. Если вы правильно настроили записи DNS, вы сможете отправлять почту с MTA на веб-сервер.
Если вы используете SPF, убедитесь, что вы обновили его, включив в него сервер приложений.
Вы должны иметь возможность использовать почтовые серверы Google в качестве шлюза SMTP и аутентифицироваться с пользователем.
http://www.google.com/support/a/bin/answer.py?hl=en&answer=60730.
Вот базовый псудокод, чтобы дать вам представление:
smtpHost = smtp.gmail.com
smtpUsername = name@domain.com
smtpPassword = your_password
smtpType = tls
smtpPort = 465
ОБНОВИТЬ:
Вот ссылка, которая может немного помочь. Это не ТОЧНО то, что я искал, но достаточно разумный (я надеюсь), чтобы дать вам представление о том, что задания cron могут отправлять электронную почту через приложения Google.
http://bakingnoodles.com/tag/linux/
Это маленькое приложение тоже может оказаться полезным (предупреждение: сам не пробовал)
http://linux.softpedia.com/get/Communications/Email/Email-2-6805.shtml
Другой вариант - настроить Postfix на использование Google Apps для доставки всей вашей почты. Если вы выполните поиск в Google по запросу «настроить постфиксные приложения google», вы найдете множество ссылок, в том числе эту:
В постфиксе это довольно просто:
nano /etc/postfix/main.cnf
изменить следующее
mydestination = mydomain.com, localhost.mydomain.com, localhost
к
mydestination = localhost.mydomain.com, localhost
перезагрузите сервер, и все готово!