Пересылать входящую почту на сервер Linux?

19

Я пытаюсь настроить пересылку почты на моем новом сервере. Например, я хочу, чтобы emailaddress@mydomain.com пересылал всю электронную почту, отправленную ему, например, на otheremail@gmail.com. Мне не нужно / хочу иметь возможность отправлять почту с моего домена.

Я использую Ubuntu 10.04, и это мой сервер, поэтому у меня есть root-доступ и я могу установить / изменить все, что нужно. У меня есть несколько лет опыта работы с Linux, но я никогда не играл с почтовыми серверами, поэтому я буквально ничего о них не знаю. Следовательно, я не могу понять все вопросы, которые ранее задавались по этой теме. Похоже, что дано много разных ответов, и нужно было бы прочитать о каждом предложенном решении навсегда. При этом, может ли кто-нибудь указать мне правильное направление, как это сделать? Спасибо!

shanet
источник

Ответы:

19

Я предпочитаю postfix, его проще настраивать и по умолчанию большинство вещей отключено:

  1. Установите постфикс.
  2. В /etc/postfix/main.cf установите эти два параметра

    mydomain = example.com
    mydestination = example.com
    

    Замените «example.com» вашим фактическим доменом. Это очень важно

  3. Необязательно в main.cf, установите myhostnameчто-то подходящее (также может быть «example.com»)
  4. Добавьте эту строку где-нибудь в main.cf:

    local_transport = error:local delivery is disabled
    

    это отключает локальный транспорт, поэтому доставка электронной почты локальным пользователям отключена (вы можете пропустить это, если хотите, чтобы местные пользователи получали электронную почту).

  5. В main.cf убедитесь, что у вас есть эта строка (должно быть много вариантов, которые были закомментированы):

    alias_maps = hash:/etc/aliases # (or `hash:/etc/mail/aliases`, etc.)
    
  6. Теперь отредактируйте /etc/aliases(или /etc/mail/aliasesто, что было в main.cf) и создайте псевдоним:, emailaddress: otheremail@gmail.comэто сделает так, чтобы входящее электронное письмо для "emailaddress@example.com" было перенаправлено на "otheremail@gmail.com"

  7. Сохраните main.cf и выполните эту команду: postalias /etc/aliases( /etc/mail/aliasesили что-то еще в main.cf).
  8. Начать постфикс: sudo /etc/init.d/postfix start

Вот еще немного информации для postfix на Ubuntu: https://help.ubuntu.com/community/Postfix

Джон Лин
источник
Звучит довольно просто. Я обновлю, как только мой администратор DNS получит необходимую запись MX.
Шанет
2
Да, я забыл упомянуть, что вам нужно указать запись MX вашего домена на этот сервер.
Джон Лин
После неудачной попытки настроить sendmail, я попытался использовать Postfix с вашими указаниями. Сейчас работает прекрасно. Спасибо!
Шанет
1
Я получаюRecipient address rejected: local delivery is disabled
Оливер Диксон
@ ОливерДикс и мне.
Laizer
4

У вас уже есть работающий сервер входящей почты? Вы уже настроили записи MX для своего домена?

  • Настройте mx записи в DNS
  • Установить sendmail

Настройте /etc/mail/virtusertableсо следующей линией пересылки:

emailaddress@mydomain.com   otheremail@gmail.com
Эндрю Кейс
источник
Это так просто? Я связался с администратором DNS по поводу добавления записи MX и уже установил sendmail. Надеюсь, что запись MX будет добавлена ​​завтра, и я обновлю ее.
Шанет
Я решил попробовать этот метод. Это было не так просто. Но это довольно просто - всего несколько шагов. Я разместил шаги в качестве ответа на мой собственный вопрос - который, кажется, такой же, как этот.
osullic
0

Я последовал совету @ jon-lin и застрял с отскоком почты с отклоненным адресом получателя: локальная доставка отключена. Я обнаружил, что настройка виртуальных карт псевдонимов работает.

  1. Установите постфикс.

  2. Добавьте эти строки в main.cf:

    virtual_alias_domains = mydomain.com myanotherdomain.com

    virtual_alias_maps = hash:/etc/postfix/virtual

  3. Настройте /etc/postfix/virtualследующим образом:

    contact@mydomain.com myself@gmail.com

    sales@mydomain.com myself@gmail.com

    Первое электронное письмо - это адрес, по которому postfix будет получать электронные письма, а второе - это адрес, по которому postfix будет пересылать электронные письма. Обратите внимание, что формат здесь отличается от псевдонима файла - он разделен пробелом.

  4. Бегать postmap /etc/postfix/virtual

  5. Перезагрузите конфиг postfix с помощью sudo /etc/init.d/postfix reload

См. Это руководство для справки: http://www.binarytides.com/postfix-mail-forwarding-debian/

Laizer
источник