Как установить и настроить Postfix как SMTP-сервер только для отправки в Ubuntu 14.04

Вступление

Postfix - это MTA (Mail Transfer Agent), приложение, используемое для отправки и получения электронной почты. В этом руководстве мы установим и настроим Postfix, чтобы он мог использоваться для отправки электронных писем только локальными приложениями, то есть теми, которые установлены на том же сервере, на котором установлен Postfix.

Почему вы хотите это сделать?

Если вы уже используете стороннего поставщика электронной почты для отправки и получения электронной почты, вам, конечно, не нужно запускать собственный почтовый сервер. Однако если вы управляете облачным сервером, на котором установлены приложения, которым необходимо отправлять уведомления по электронной почте, использование локального SMTP-сервера, предназначенного только для отправки, является хорошей альтернативой использованию стороннего поставщика услуг электронной почты или запуска полноценного SMTP-сервера. ,

Примером приложения, которое отправляет уведомления по электронной почте, является OSSEC, которое будет отправлять уведомления по электронной почте на любой настроенный адрес электронной почты (см.How To Install and Configure OSSEC Security Notifications on Ubuntu 14.04). Хотя OSSEC или любое другое приложение такого рода может использовать SMTP-сервер стороннего поставщика электронной почты для отправки уведомлений по электронной почте, он также может использовать локальный (только для отправки) SMTP-сервер.

Вот что вы узнаете, как это сделать в этом руководстве: как установить и настроить Postfix как SMTP-сервер только для отправки.

Note: Если ваш вариант использования заключается в получении уведомлений с вашего сервера на один адрес, сообщения электронной почты, помеченные как спам, не являются серьезной проблемой, поскольку вы можете занести их в белый список.

Если ваш вариант использования заключается в отправке электронных писем потенциальным пользователям сайта, например, электронных писем с подтверждением регистрации на досках объявлений, вам обязательно следует выполнитьStep 5, чтобы электронные письма вашего сервера с большей вероятностью рассматривались как законные. Если у вас по-прежнему возникают проблемы с пометкой электронных писем на вашем сервере как спам, вам придется самостоятельно устранить неполадки.

Предпосылки

Пожалуйста, заполните следующие условия.

  • Ubuntu 14.04 Droplet

  • Пройдитеinitial setup. Это означает, что у вас должна быть стандартная учетная запись пользователя с привилегиямиsudo.

  • Иметь действительное доменное имя, напримерexample.com, указывающее на вашу каплю.

  • Имя хоста вашего сервера должно соответствовать этому домену или поддомену. Вы можете проверить имя хоста сервера, набравhostname в командной строке. Вывод должен соответствовать имени, которое вы дали капле при ее создании, напримерexample.com.

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

[[step-1 -—- install-postfix]] == Шаг 1. Установите Postfix

На этом этапе вы узнаете, как установить Postfix. Самый эффективный способ установить Postfix и другие программы, необходимые для тестирования электронной почты, - это установить пакетmailutils, набрав:

sudo apt-get install mailutils

Установка mailtuils также приведет к установке Postfix, а также к некоторым другим программам, необходимым для работы Postfix. После ввода этой команды вам будет представлен вывод, который выглядит примерно так:

The following NEW packages will be installed:
guile-2.0-libs libgsasl7 libkyotocabinet16 libltdl7 liblzo2-2 libmailutils4 libmysqlclient18 libntlm0 libunistring0 mailutils mailutils-common mysql-common postfix ssl-cert

0 upgraded, 14 newly installed, 0 to remove and 3 not upgraded.
Need to get 5,481 kB of archives.
After this operation, 26.9 MB of additional disk space will be used.
Do you want to continue? [Y/n]

Нажмите ENTER, чтобы установить их. В конце процесса установки вы увидите окно, которое выглядит точно так же, как на изображении ниже. Параметр по умолчанию -Internet Site. Это рекомендуемая опция для этого урока, поэтому нажмите TAB, затем ENTER.

Select Internet Site from the menu

После этого вы получите еще одно окно, похожее на то, что на следующем изображении. System mail name должно совпадать с именем, которое вы присвоили капле при ее создании. Если он показывает субдомен, напримерmars.example.com, измените его наexample.com. Когда вы закончите, нажмите TAB, затем ENTER.

Enter your domain name

После успешного завершения установки перейдите к шагу 2.

[[step-2 -—- configure-postfix]] == Шаг 2 - Настройте Postfix

На этом шаге вы прочтете, как настроить Postfix для обработки запросов на отправку писем только с того сервера, на котором он запущен, то есть сlocalhost. Чтобы это произошло, Postfix должен быть настроен на прослушивание толькоloopback interface, виртуального сетевого интерфейса, который сервер использует для внутренней связи. Чтобы внести изменения, откройте основной файл конфигурации Postfix с помощью редактора nano.

sudo nano /etc/postfix/main.cf

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

mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all

Измените строку сinet_interfaces = all наinet_interfaces = loopback-only. Когда вы закончите, тот же самый раздел файла должен теперь прочитать:

mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = loopback-only

Вместоloopback-only вы также можете использоватьlocalhost, чтобы измененный раздел также мог читать:

mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = localhost

Когда вы закончите редактирование файла, сохраните и закройте его (нажмите CTRL + X, затем нажмите Y, затем ENTER). После этого перезапустите Postfix, набрав:

sudo service postfix restart

[[step-3 -—- test-that-the-smtp-server-can-send-emails]] == Шаг 3. Проверьте, может ли SMTP-сервер отправлять электронные письма

На этом шаге вы узнаете, как проверить, может ли Postfix отправлять электронные письма на любую внешнюю учетную запись электронной почты. Вы будете использовать командуmail, которая является частью пакетаmailutils, который был установлен на шаге 1.

Чтобы отправить тестовое электронное письмо, введите:

echo "This is the body of the email" | mail -s "This is the subject line" [email protected]

Выполняя свои собственные тесты, вы можете использовать текст тела и темы как есть, или изменить их по своему вкусу. Однако вместо[email protected] используйте действующий адрес электронной почты, где часть домена может бытьgmail.com,fastmail.com,yahoo.com или любой другой поставщик услуг электронной почты, который вы используете. .

Теперь проверьте адрес электронной почты, на который вы отправили тестовое сообщение.

Вы должны увидеть сообщение в вашем почтовом ящике. Если нет, проверьте папку со спамом.

Note: В этой конфигурации адрес в полеFrom для отправляемых вами тестовых писем будет[email protected], гдеsammy - ваше имя пользователя Linux, а часть домена - это имя сервера. имя хоста. Если вы измените свое имя пользователя, адресFrom также изменится.

[[step-4 -—- forward-system-mail]] == Шаг 4. Пересылка системной почты

Последнее, что мы хотим настроить, - это пересылка, чтобы вы получали электронные письма, отправленные вroot в системе на ваш личный внешний адрес электронной почты.

Чтобы настроить Postfix таким образом, чтобы электронные письма, созданные системой, отправлялись на ваш адрес электронной почты, вам необходимо отредактировать файл/etc/aliases.

sudo nano /etc/aliases

Полное содержимое файла при установке Ubuntu 14.04 по умолчанию показано в этом блоке кода:

# See man 5 aliases for format
postmaster:    root

С этим параметром сгенерированные системой электронные письма отправляются пользователю root. Что вы хотите сделать, это отредактировать его так, чтобы эти электронные письма были перенаправлены на ваш адрес электронной почты. Для этого отредактируйте файл так, чтобы он гласил:

# See man 5 aliases for format
postmaster:    root
root:          [email protected]

Замените[email protected] своим личным адресом электронной почты. Когда закончите, сохраните и закройте файл. Чтобы изменения вступили в силу, выполните следующую команду:

sudo newaliases

Теперь вы можете проверить его работоспособность, отправив электронное письмо в корневой аккаунт, используя:

echo "This is the body of the email" | mail -s "This is the subject line" root

Вы должны получить письмо на свой адрес электронной почты. Если нет, проверьте папку со спамом.

[[optional-step-5 -—- protect-your-domain-from-spammers]] === (Необязательно) Шаг 5. Защитите свой домен от спамеров

На этом этапе вам будут предоставлены ссылки на статьи, которые помогут защитить ваш домен от использования для рассылки спама. Это необязательный, но настоятельно рекомендуемый шаг, поскольку при правильной настройке это затрудняет отправку спама с адресом, который, по-видимому, исходит из вашего домена.

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

Хотя вторая статья была написана для Debian Wheezy, те же шаги применимы к Ubuntu 14.04.

Related