Як налаштувати поштовий сервер Ubuntu за допомогою Google Apps?


17

У мене є домен, назвемо його foobar.com. Усі записи MX для foobar.com вказують на поштові сервери Google, оскільки я використовую Google Apps для вашого домену для управління ним. Це чудово, тому що всі отримують усі переваги GMail, але наші електронні адреси - це не @ gmail.com.

У мене також є сервер. В першу чергу, це веб-сервер, але він також обслуговує інші речі. Однією з речей, яку він обслуговує, є веб-сайт foobar.com, а також сайти для різних віртуальних хостів, таких як shop.foobar.com та forum.foobar.com. На сервері працює Ubuntu 8.04, тому що мені подобається використовувати випуски LTS у виробництві.

Вся справа в тому, що на сервері працюють різні програми, яким потрібна можливість надсилання електронних листів. Різні додатки, як-от завдання cron, надсилають мені електронні листи у випадку помилок. Деякі з веб-додатків повинні надсилати електронну пошту користувачам, коли вони забувають свої паролі, підтверджувати нових зареєстрованих користувачів тощо. Нарешті, приємно мати можливість надсилати електронну пошту з командного рядка за допомогою команди mail або mutt .

Як я можу налаштувати пошту на веб-сервері для проходження через поштові сервери додатків Google? Мені не потрібен веб-сервер для отримання пошти, хоча це було б круто. Мені це потрібно, щоб можна було надсилати пошту як будь-яку законну адресу @ foobar.com. Таким чином програма на форумі може надсилати електронні листи з полем forum@foobar.com з поля, а додаток для електронної комерції матиме поле shop@foobar.com з поля. Також, надсилаючи пошту через сервери Google, ми можемо уникнути безлічі проблем із тим, що електронні листи блокуються різними фільтрами спаму в Інтернеті. SMTP-серверам Google довіряють набагато більше, ніж моєму.

Я досить добре керую системою Linux, але я абсолютно мертвий, коли справа доходить до електронної пошти. Мені потрібні покрокові вказівки від початку до кінця про те, як це налаштувати. Мені потрібно знати кожну річ, яку потрібно встановити, і кожну зміну файлів конфігурації, які необхідні. У минулому я намагався дотримуватися різних практичних посібників та посібників, але жоден із них не був цілком правильним. Або вони взагалі не працювали, або запропонували конфігурацію, яку я не хотів.

Будь ласка, допоможіть. Спасибі.

Відповіді:


19

Найпростіший спосіб зробити це - уникати використання 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 обробляти все за вас.


Солодке! Це повністю спрацювало. Ти мій герой.
Апрех

Я отримав це повідомлення; Пакет mailx - це віртуальний пакет, що надається: mailutils 1: 2.2 + dfsg1-3 heirloom-mailx 12.5-1build1 bsd-mailx 8.1.2-0.20100314cvs-1 Ви повинні чітко вибрати один для встановлення. E: У пакеті "mailx" немає кандидата на встановлення
Ясін Окумуш,

Дякую за це Я знайшов одне, що мені довелося ввімкнути "Менш безпечні програми" в обліковому записі Google для цього користувача
mikestreety

3

В основному, це дуже просто.

$ sudo dpkg-reconfigure exim4-config

Вибирайте всі речі, які мають для вас сенс - до тих пір, поки ви виберете щось із розумним господарем. Коли з’явиться запитання, яке задає вам, яким смартхостом користуватися, дайте відповідь: smtp.gmail.com:what87

Потім відредагуйте файл /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 також працює чудово, але видається досить повільним для доставки пошти. Крім того, я вважаю за краще мати Deamon для підключення.


2

Майте на увазі, що безкоштовна версія GMail має вихідний ліміт ~ 500 повідомлень на день. Якщо ви не будете перевищувати цю межу, рішення кексів підійде для вас чудово.


Якщо я перевищив стільки електронних листів, я отримав би спеціалізовану службу відправлення пошти.
Апрех

1

Ви повинні мати можливість використовувати поштові сервери Google як шлюз SMTP та пройти автентифікацію з користувачем.

http://www.google.com/support/a/bin/answer.py?hl=uk&answer=60730

Ось декілька основних psudocode, щоб дати вам уявлення:

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/Communication/Email/Email-2-6805.shtml


Іншим варіантом може бути налаштування Postfix для використання Google Apps для всієї доставки вашої пошти. Якщо ви шукаєте в Google за "налаштуваннями додатків google для постфіксу", ви знайдете купу посилань, включаючи це:

http://blog.twinklesprings.com/2008/03/27/remote-mail-delivery-for-google-apps-and-postfix-mail-server/


Чи використовує Ubuntu postfix або exim? Якщо його exim на зразок Debian, то dpkg-recfigure exim4-config повинен дати вам можливість надсилати пошту через smarthost, і ви зможете вгорі налаштувати її на gmail.
дероберт

Postfix - агент поштового переказу за замовчуванням в Ubuntu. Принаймні за 8,04 я вірю.
KPWINC

Я не можу робити варіанти шлюзу, тому що у мене є безкоштовна програма Google Apps, а не версія оплати. Крім того, шлюз не здається, що він робить саме те, що я хочу. Я не хочу маршрутизувати будь-яку пошту через мій сервер. Я просто хочу, щоб сервер міг надсилати повідомлення з будь-якою адресою @mydomain. Також я спробував smarthost в минулому. Це працює, але всі електронні листи, які виходять, позначаються як користувач, якого я використовую для автентифікації smarthost.
Апрех,

1

Якщо вам не потрібно отримувати пошту, вам не потрібно надсилати її через Google. Якщо ви правильно налаштували записи DNS, вам слід мати можливість надсилати пошту з MTA на веб-сервері.

Якщо ви використовуєте SPF, вам потрібно обов’язково оновити його, щоб включити ваш сервер додатків.


1

У Postfix це досить просто:

nano /etc/postfix/main.cnf

змінити наступне

mydestination = mydomain.com, localhost.mydomain.com, localhost

до

mydestination = localhost.mydomain.com, localhost

перезавантажте сервер, і ви закінчили!


Це вирішило мою проблему.
dguaraglia
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.