Как настроить почтовый сервер?

Попробуйте щелкнуть правой кнопкой мыши значок NetworkManager и включить сеть из этого меню.

59
задан 7 February 2012 в 23:50

4 ответа

Вот как я настраивал почту на наших производственных машинах. Это критерии, которые нам нужны:

Учетные записи электронной почты Email-псевдонимы (пересылки) IMAP, POP3 и SMTP

«Простой» (tl; dr)

Во-первых, я хочу решить, что будет самым простым решением.

sudo tasksel install mail-server

Несколько проблем с этим произошли, когда мы это пробовали: сначала он устанавливает Dovecot, что отлично подходит для большинства, но мы считается, что Курьер лучше всех из них для самых простых потребностей. Во-вторых, он использует Postfix, который замечательный, но нам также нужен Exim, поскольку он является более мощным сервером MTA / SMTP. В-третьих, он устанавливает MySQL - в конфигурации, которую я использую, мы предпочитаем плоские файлы для конфигурации, так как это одна точка разлома. Подумайте, что произойдет, если MySQL разбился по неизвестной причине. В противном случае остальные пакеты довольно просты и просты в обслуживании для небольшой почтовой службы (думаю, всего 1-2 домена электронной почты).

Наша конфигурация

Структура каталогов [!d11 ]

Мы немного отклонились от пути нормальных конфигураций, но это упрощает управление.

Вся наша почта хранится в /var/mail/virtual/<domain>/<user>/mail. Поэтому для будущих примеров я буду использовать email@example.com, fwd@example.com, foo@example.com, чтобы указать адрес электронной почты, переадресацию, чтобы перейти к example@gmail.com, и плохой адрес соответственно. В приведенном выше примере это будет /var/mail/virtual/example.com/email/mail.

Я также поддерживаю список всех доменов на сервере в /etc/valiases, но об этом позже.

Postfix

Это более или менее простая часть установки. Просто установите пакет postfix.

Exim

Установите Exim с apt-get install exim4 exim4-base exim4-config exim4-daemon-heavy. После установки вам необходимо отредактировать конфигурацию по умолчанию exim, чтобы заменить или добавить следующие значения: [ ! d18]

domainlist local_domains = @:localhost:dsearch;/etc/valiases:dsearch;/var/mail/virtual
daemon_smtp_ports = smtp : 587 : 465
MAIN_TLS_ENABLE = yes

(Эти строки появятся в разных частях файла, замените их соответственно)

После того, как это будет завершено, перестройте конфигурацию exim с помощью update-exim4.conf. На этом завершены изменения, необходимые для Exim

Courier

Установить Courier с courier-base, это должно установить courier-authdaemon, courier-authlib*, courier-imap*, courier-pop*, courieruserinfo, courier-ssl [!d22 ]

Там честно не так много конфигурации вне стандарта. Вам просто нужно создать пользовательскую базу данных.

Учетные записи

Exim и Courier проверяют несколько мест, чтобы узнать, действительны ли логин или входящий адрес электронной почты. Exim проверяет, указан ли домен как локальное имя хоста, или если домен находится в /var/mail/virtual или домен находится в /etc/valiases.

Создание учетных записей электронной почты

В конечном итоге я создал несколько инструментов для оптимизации этого процесса, но добавление нового пользователя идет по следу:

mkdir -p /var/mail/virtual/example.com/email
chown -R mail.mail /var/mail/virtual/example.com/
maildirmake /var/mail/virtual/example.com/email/mail
chown -R mail.mail /var/mail/virtual/example.com/

Затем добавьте адрес курьером userdb - чтобы они могли войти в систему

userdb email@example.com set uid=8 gid=8 home=/var/mail/virtual/example.com/email mail=/var/mail/virtual/example.com/email/mail

Обязательно замените значения, если это необходимо. Кроме того, uid и gid должны быть численными идентификаторами пользователя / группы для почтового пользователя.

userdbpw -md5 | userdb email@example.com set systempw

Это предложит вам ввести пароль, введите тот, который вы хотите использовать для account.

makeuserdb

Наконец, сгенерируйте файлы hash / shadow userdb. Перезагрузите курьер и проверьте, работают ли ваши изменения:

authtest email@example.com

Должно вызывать нечто похожее на

Authentication succeeded.

     Authenticated: email@example.com  (uid 8, gid 8)
    Home Directory: /var/mail/virtual/example.com/email
           Maildir: /var/mail/virtual/example.com/email/mail
             Quota: (none)
Encrypted Password: $1$LOLCATS$THISWILLBEAHASH.
Cleartext Password: (none)
           Options: (none)

Если вы видите «Authentication FAILED: Operation not allowed» вместо этого отредактируйте / etc / courier / authdaemonrc и добавьте authuserdb в строку authmodulelist.

После того, как все тесты подтверждены, перезапустите различные задействованные службы (courier-authdaemon, exim4), откройте порты 143, 25, 586, 495 , 110 и настроить учетные записи в вашем любимом почтовом клиенте.

Создание псевдонимов электронной почты

Для каждого домена вы должны создать файл в /etc/valiases (создать, если он не существует) по крайней мере, следующей строкой:

*: :fail: No user at this address.

Что это говорит: Если входящая почта не соответствует какой-либо учетной записи электронной почты, которую я имею в файле, тогда почта должна быть сбойной и отскакивать с сообщением: Нет пользователя по этому адресу ". Таким образом, вся почта, посланная, чтобы сказать: foo@example.com, будет отклонена как сбой.

Однако у нас есть несколько адресов электронной почты, которые мы хотим поддерживать в другом месте - например, example@gmail.com - для этого нам нужно создать /etc/valiases/example.com, а содержимое файла должно быть следующим:

fwd: example@gmail.com
*: :fail: No user at this address.

Таким образом, хотя fwd@example.com не соответствует учетным записям электронной почты на сервере, это совпадений в файле /etc/valiases, и почта будет перенаправлена ​​на example@gmail.com. Однако foo@example.com по-прежнему будет работать с сообщением «Нет пользователя по этому адресу».

48
ответ дан 25 May 2018 в 19:36
  • 1
    Это связано с номером ISBN? – Wesley 4 August 2011 в 08:36
  • 2
    @WesleyDavid Я не думаю, что моя история bash появится как ISBN :) – Marco Ceppi♦ 4 August 2011 в 08:57
  • 3
    Просто после этого - высоко ценится - я отредактировал выше, чтобы покрыть ошибку, которую я получил с линией authtest. – Darren Greaves 24 March 2012 в 23:30
  • 4
    @DarrenGreaves Спасибо! Я рад, что это помогло и спасибо за обновление! – Marco Ceppi♦ 25 March 2012 в 01:54
  • 5
    Я изо всех сил стараюсь получить всю эту работу - я получил только валиасы, которые работают, когда я добавил файл маршрутизации (отредактировал для путей) 350 из debian-administration.org/articles/140 - виртуальные домены материал вообще не работает - вам вообще нужно добавлять файлы маршрутизации? Ta. – Darren Greaves 25 March 2012 в 15:05

Самый простой способ - запустить sudo tasksel install mail-server. Это даст вам почтовый сервер с нормальными значениями по умолчанию. Все, что вам нужно сделать, - ответить на несколько вопросов. Очевидно, что вы по-прежнему можете выполнять ручную конфигурацию, если это необходимо, но в большинстве случаев этого не будет. Просто следуйте инструкциям на экране, и все будет хорошо.

Чтение сообщений в службах электронной почты абсолютно рекомендуется.

Официальные ссылки:

https://help.ubuntu.com/10.04/serverguide/C /email-services.html
14
ответ дан 25 May 2018 в 19:36
  • 1
    Есть ли ленивый способ увидеть, что это будет делать (пакеты, которые он будет устанавливать, настройки по умолчанию) ?. Леной я имею в виду, не устанавливая его сам. – Javier Rivera 29 July 2011 в 23:04
  • 2
    @Javier вы можете просмотреть, какое содержимое установлено, запустив sudo tasksel --task-packages mail-server – Marco Ceppi♦ 30 July 2011 в 19:27
  • 3
    Конфигурация, хранящаяся в MySQL, без антиспама, без антивируса ... для нас это не очень полезно :(. – Javier Rivera 31 July 2011 в 23:28

У меня нет «отличного ответа», но вы можете найти эти ссылки полезными https://help.ubuntu.com/community/PostfixBasicSetupHowto#Receiving Mail и https://help.ubuntu.com/community/Postfix

5
ответ дан 25 May 2018 в 19:36

Просто делал это сам, вам действительно нужен постфикс, и в моем случае мне нужен имап-сервер, чтобы я мог использовать приятный клиент gui (не говоря уже о каких-либо именах) на другой машине. Я использовал эти документы:

Postfix

Postfix (imap и pop3)

Его на самом деле довольно просто, он запускается и работает через несколько минут, и я получаю электронные письма. Это также полезно, чтобы проверить, что все настроено нормально pingability.

О, и вам, конечно, нужно будет правильно настроить свои записи DNS, как показано ниже (на основе настроек, которые работали для меня): [ ! d7]

name   type   content
  @      A     ???.???.??.??    
mail     A     ???.???.??.??

и

         MX Records
Name                 Priority
mail.mydomain.com.      1
mail2.mydomain.com.     2

Обратите внимание на полную остановку на концах почтовых серверов и, в случае необходимости, вставьте свой IP-адрес и доменное имя.

4
ответ дан 25 May 2018 в 19:36

Другие вопросы по тегам:

Похожие вопросы: