Что такое Postfix?
Postfix – популярный агент пересылки почты (MTA) с открытым исходным кодом который можно использовать для маршрутизации и доставки электронной почты в системе Linux. Подсчитано, что около 25% общественных почтовых серверов в Интернете работают на Postfix.
Данное руководство расскажет, как быстро установить и запустить Postfix на сервере Ubuntu 14.04.
Требования
Чтобы следовать этому руководству, сервер Ubuntu 14.04 должен иметь полное доменное имя.
Установка Postfix
Процесс установки Postfix на Ubuntu 14.04 очень прост, поскольку данное программное обеспечение можно найти в репозиториях Ubuntu.
Так как в данной сессии команда apt еще не использовалась, сначала нужно обновить список пакетов, а затем установить пакет Postfix.
sudo apt-get update
sudo apt-get install postfix
Далее нужно выбрать тип конфигурации сервера. В данном случае больше всего подходит “Internet Site”.
Затем нужно указать полное доменное имя сервера (FQDN); в данном руководстве будет использоваться example.com. Технически FQDN нужно оканчивать точкой, но Postfix в этом не нуждается. Следовательно, его можно указать так:
example.com
Готово! Программа установлена и частично настроена. Но помимо настроек, внесенных во время установки, нужно еще задать более детальные настройки для других частей программы.
Настройка Postfix
Теперь нужно отредактировать некоторые базовые настройки в главном конфигурационном файле Postfix.
Откройте этот файл в текстовом редакторе с привилегиями root.
sudo nano /etc/postfix/main.cf
Итак, для начала найдите параметр myhostname. В ходе настройки выбранный FQDN был добавлен в параметр mydestination, но myhostname остался установлен на localhost. В данной сторке также введите доменное имя:
myhostname = example.com
Чтобы почта была переслана на другие домены или адреса, не связанные с системой напрямую, замените параметр alias_maps параметром virtual_alias_maps. Затем нужно изменить расположение хэша на /etc/postfix/virtual:
virtual_alias_maps = hash:/etc/postfix/virtual
Как уже говорилось, при установке значение параметра mydestination было заменено доменным именем. В целом, данный параметр содержит все домены, за которые отвечает Postfix. В данном случае это FQDN и localhost.
Одним из наиболее важных параметров является mynetworks. Он определяет, кто может использовать данный почтовый сервер. Здесь нужно задать локальный хост (например 127.0.0.0/8). Если сервер может использоваться также и другими хостами, это подвергает его риску и приводит к огромному количеству спама.
Строка mynetworks должна выглядеть так (как правило, данное значение задается автоматически, но лучше это проверить ):
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
Настройка дополнительных адресов электронной почты
Чтоб переадресовать электронную почту на другие адреса, нужно создать псевдонимы. Эти псевдонимы используются для доставки почты на другие учетные записи пользователей в системе.
Чтобы использовать данную функцию, убедитесь, что директива virtual_alias_maps сконфигурирована так, как было показано ранее. Создайте файл для настройки преобразований адреса:
sudo nano /etc/postfix/virtual
В данном файле нужно указать электронные адреса, которые нужно создать (слева), и имя пользователя, которому нужно доставлять почту (справа):
blahblah@example.com username1
Создайте несколько адресов электронной почты и передайте некоторым пользователям. Кроме того, разделяя имена пользователей запятыми, можно сделать так, чтобы определенные адреса передавали почту сразу нескольким учетным записям:
blahblah@example.com demouser
blahblah1@example.com demouser
blahblah2@example.com root
blahblah3@example.com demouser,root
Затем сохраните и закройте файл.
Вызовите следующую команду, чтобы выполнить преобразование:
sudo postmap /etc/postfix/virtual
Затем перезапустите сервис, чтобы активировать изменения.
sudo service postfix restart
Тестирование настроек
Чтобы убедиться, что сервер может получать и правильно направлять почту, отправьте письмо с обычного адреса электронной почты одному из созданных псевдонимов или одной из учетных записей на сервере.
Например, письмо было отправлено на:
demouser@домен_сервера.com
После этого должно прийти подтверждение доставки, которое можно найти в /var/mail, имя файла – это имя пользователя-получателя. В данном случае, сообщение можно прочесть в файле:
nano /var/mail/demouser
Этот файл будет содержать все сообщения электронной почты, включая заголовки. Чтобы получать электронную почту в более удобном виде, установите некоторые вспомогательные программы:
sudo apt-get install mailutils
Это откроет доступ к программе mail, которая позволит проверять ящик входящих сообщений:
mail
Данная программа имеет удобный интерфейс для работы с почтой.
Итоги
Теперь на сервере есть базовые функции электронной почты.
Важно защитить сервер и убедиться, что Postfix не настроен в качестве открытого ретранслятора. Почтовые серверы часто становятся мишенью хакеров, поскольку их можно использовать для отправки огромного количества спама; так что не забудьте настроить брандмауэр и принять другие меры безопасности для защиты сервера.