Локальный почтовый сервер для windows server

Вы можете установить SMTP сервер с помощью встроенных средств во всех версиях Windows Server. Такой SMTP сервер внутри организации может работать в качестве

Вы можете установить SMTP сервер с помощью встроенных средств во всех версиях Windows Server. Такой SMTP сервер внутри организации может работать в качестве почтового релея, который должен принимать и пересылать через себя SMTP сообщения от различных устройств (к примеру, сендеров, сканеров, устройств СКД и пр.) и приложений (веб приложения, SQL Reporting Services, SharePoint), которым необходимо иметь возможность отправлять почту через SMTP сервер. Такой релей может пересылать сообщения на полноценные Exchange сервер или на публичные почтовые сервисы в Интернет типа Gmail, Mail.ru, Office 365 и т.д (ведь не всегда целесообразно разворачивать полноценную внутреннюю почтовую инфраструктуру на базе Microsoft Exchange Server или других почтовых служб).

В этой статье мы покажем, как установить, настроить и протестировать работу SMTP сервера на Windows Server 2012 R2, 2016 и 2019, который будет функционировать в качестве mail релея. Такой SMTP сервер не хранит почтовые сообщения и на нем отсутствуют почтовые ящики, он сможет только отправлять или пересылать почту.

Содержание:

  • Установка службы SMTP на Windows Server 2016/2012 R2
  • Настройка SMTP сервера на Windows Server
  • Автозапуск службы SMTPSVC
  • Проверка работы SMTP сервера на Windows Server

Установка службы SMTP на Windows Server 2016/2012 R2

SMTP сервер – это один из компонентов Windows Server, который можно установить через Server Manager. Для этого откройте консоль Server Manager Dashboard (servermanager.exe), перейдите в режим Add roles and features и на этапе выбора функций отметьте чекбокс у пункта SMTP Server. Для управления службой SMTP нужно установить консоли управления, которые входят в комплект роли Web Server IIS (вам будет предложено установить IIS Management Tools).

smtp сервер на windows server 2012 r2

Оставьте все предлагаемые опции роли Web Server (IIS) и запустите установку.

Компоненты веб сервера IIS

Также вы можете установить компонент SMTP сервера с помощью одной команды PowerShell:

Install-WindowsFeature smtp-server

После окончания установки компонентов может потребоваться перезагрузка системы.

Настройка SMTP сервера на Windows Server

Управляется SMTP сервер консоль управления Internet Information Services (IIS) Manager 6. Открыть эту консоль можно через Server Manager: Tools-> Internet Information Services (IIS) 6.0 Manager или командой inetmgr6.exe.

Консоль Internet Information Services (IIS) Manager 6В консоли IIS 6 Manager разверните ветку с именем сервера, щёлкните ПКМ по SMTP Virtual Server и откройте его свойства.

Свойства SMTP сервераНа вкладке General, если необходимо, выберите IP адрес, на котором должен отвечать SMTP сервер (если у сервера несколько IP адресов), и включите ведение логов Enable logging (чтобы сохранялась информация обо всех полученных письмах).

Адрес SMTP сервераЗатем перейдите на вкладку Access.

Настройки SMTP доступаЗдесь нажмите на кнопку Authentication и убедитесь, что разрешен анонимный доступ (Anonymous access).

SMTP аутентфикация - анонимный доступ

Вернитесь на вкладку Access и нажмите кнопку Connection. Здесь вы можете указать IP адреса устройств, которым разрешено отправлять почту через наш SMTP релей. Нужно выбрать опцию Only the list below и указать список IP адресов, не забыв самого себя (127.0.0.1).

Аналогичным образом настройте список разрешенных IP в настройках Relay (нажмите соответствующую кнопку). В этой секции указано каким IP адресам (или подсетям) можно пересылать почту через ваш SMTP сервер.

Ограничения на отправку через SMTP сервер по IP адресу

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

Перейдите на вкладку Messages. Здесь указывается email, на который будут отправляться копии всех NDR отчетов (Send copy of Non-Delivery Report to:). Также здесь можно указать ограничения на максимальный размер писем (Limit message size KB) и количество получателей (Limit number of recepients per message).

Лимиты SMTP сообщенийПерейдите на вкладку Delivery:

Настройки параметров доставки

Затем нажмите на кнопку Outbound Security. Здесь указывается, как нужно авторизоваться на почтовом сервере, на который ваш SMTP-сервере будет пересылать (relay) всю почту. К примеру, если вся почта будет отправляться на почтовый сервер Gmail и уже с него пересылаться адресатам, вам нужно выбрать тип аутентификации Basic authentication, указав в качестве пользователя и пароля данные для доступа к почтовому ящику на сервисе Gmail (в настройках аккаунта Google нужно разрешить отправку через smtp сервера gmail).

Параметры аутентифкации на внешних системах

Затем нажмите на кнопку Advanced.

Advanced DeliveryЗдесь указывается FQDN имя вашего SMTP сервера. Нажмите кнопку Check DNS, чтобы проверить корректность записи в DNS.

The domain name is valid

Если сервер должен пересылать почту внешнему smtp серверу, нужно указать его имя в поле Smart host (к примеру smtp.gmail.com или smtp.office365.com).

Некоторые внешние почтовые сервера принимает почту только при использовании защищенного SMTP соединения с помощью TLS Encryption (используется порт TCP 587). Это настраивается в разделе Delivery-> Outbound Security и Outbound Connections. Ознакомитесь с документацией вашего почтового провайдера.

Сохраните настройки SMTP сервера и перезапустите ваш виртуальный SMTP сервер для применения изменений.

Примечание.

  1. Настройки DNS критичны с точки зрения работоспособности почтовой системы. Если ваш SMTP сервер не может корректно разрешить DNS имена доменов, на которые он пытается отправить письма, доставка не удастся.
  2. Если ваш сервер сам будет отправлять почту в другие домены, важно, чтобы для вашего адреса была сформирована правильная PTR запись для разрешения обратных DNS запросов. PTR запись для белого IP адреса должна указывать на FQDN имя. В противном случае большинство внешних smtp серверов не будут принимать от вас почту, считая ваш сервер спамерским.

Автозапуск службы SMTPSVC

Осталось настроить автозапуск службы SMTP сервера. Быстрее всего это сделать из командной строки PowerShell:

set-service smtpsvc -StartupType Automatic

Запустим службу:

start-service smtpsvc

Проверим, что запущена служба SMTPSVC :

get-service smtpsvc

Status Name DisplayName
—— —- ————
Running smtpsvc Simple Mail Transfer Protocol (SMTP)

set-service smtpsvc - управление службой SMTP

Проверка работы SMTP сервера на Windows Server

Ну и последнее, что осталось сделать, проверить работу созданного SMTP сервера. Проще всего это сделать, создав на рабочем столе текстовый файл smtp-test-email.txt и скопировав в него следующий текст, заменив имя отправителя и получателя на ваши.

From: [email protected]
To: [email protected]
Subject: Email test

This is the test email

Тестирование отправки smtp сообщений

Скопируйте файл smtp-test-email.txt в каталог C:inetpubmailrootPickup. SMTP сервер следит за появлением файлов в этой каталоге и при обнаружении файла прочтет его содержимое и попытается отправить письмо с данной темой и текстом адресату, указанному в разделе To:.

Проверьте ящик получателя, в него должно прийти такое письмо.

Тестовое письмо

Совет. Протестировать работу SMTP сервера можно и из командой строки telnet, скрипта vbs или PowerShell:

Send-MailMessage -SMTPServer localhost -To [email protected] -From [email protected] -Subject "Email test" -Body "This is the test email sent via PowerShell"

Если вы хотите, чтобы вы включили Basic Authentication (Обычная проверка подлинности) для авторизации всех ваших SMTP клиентов (вместо анонимной аутентификации), вы можете отправить письмо с smtp-аутентификацией через telnet следующим образом.

Также убедитесь, что на вашем SMTP сервере не блокируется порт TCP 25 при удаленном подключении (локальным файерволом, антивирусом или межсетевым экраном). Проще всего это сделать с компьютера Windows, IP адрес которого добавлен в разрешенные. Проверку доступности порта можно выполнить с помощью командлета Test-NetConnection:

Test-NetConnection smtpsrv1.name.local –port 25

Если 25 порт блокируется, проверьте настройки Windows Firewall, антивируса и аппаратных межсетевых экранов.

Итак, вы настроили собственный почтовый SMTP релей на Windows Server 2016/2012 R2 и протестировали отправку писем через него.

Настраиваем домашний почтовый сервер и уходим с «бесплатной» почты

Время прочтения
15 мин

Просмотры 226K

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

Мы уже привыкли, что наша активность в интернете анализируется для подсовывания релевантной рекламы. Но там нет персональных данных в чистом виде: есть пользователь-1 с такими-то привычками, есть пользователь-2 с другими привычками, пользователь-3, 4, 5 и т.д.

Совсем другое дело почта. Обработка почты ‒ это зачастую обработка персональных данных. Все что вы покупаете ‒ квитанции приходят к вам на почту, какими сервисами вы пользуетесь ‒ регистрационные данные и отчеты приходят к вам на почту, купили билеты в отпуск ‒ все данные о вашей поездке у вас в почте. А почта у вас где?

Проблема в том, что вся почта обрабатывается, плюс нет гарантий, что не будет случаев злоупотребления. А реклама в почте ‒ это просто вишенка на торте. Так что если вы неугомонный параноик, то вам давно пора отказаться от «бесплатной» почты.

Но отказаться не так то просто:

  • Можно завести ящик на другом почтовом сервисе, но там тоже не будет никаких гарантий отсутствия обработки писем.

  • Можно арендовать виртуальный сервер в интернете и настроить его как почтовый сервер, но без физического доступа ваши письма никогда не станут только вашими.

  • Можно сделать почту на каком-нибудь зашифрованном protonmail’e, но по этой же причине он стал так популярен у мошенников, что был заблокирован в этой стране.

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

Домашний сервер

Очевидно, что для почтового сервера нам нужен комп или его аналог, который будет доступен извне 24/7. Можно было бы посмотреть в сторону чего-нибудь компактного и маломощного типа Raspberry Pi, но т.к. мне нужен задел на будущее для других домашних систем, то я отдал предпочтение полноценному компу. На комп устанавливается гипервизор VMWare ESXi, а на нем уже живут виртуальные машины с необходимыми функциями и в том числе почтовый сервер. Такой подход дает дополнительную гибкость при проведении экспериментов и распределении ресурсов, а в случае чего виртуальные машины можно легко перенести на другое железо. Если нет особых требований к скорости работы, то для компа можно взять обычный HDD, т.к. от разделов подкачки виртуальных машин б/ушный SSD может быстро деградировать. Либо делать виртуальные машины без swap. Либо ставить два диска: основной диск виртуальной машины живет на SSD, а раздел подкачки на HDD. Компьютер я выбрал HP ProDesk 600 G2 SFF с процессором i5-6500: компактный корпус, достаточно низкое энергопотребление и ESXi на него устанавливается как родной. Все это хозяйство в режиме простоя потребляет 25 Вт, под нагрузкой 40-45 Вт. В частных объявлениях такой комп вполне реально найти за вменяемые деньги.

ESXi устанавливается со всеми настройками по умолчанию, затем сетевому интерфейсу присваивается статический IP. Более подробно и с картинками см. здесь.

Связь, электричество, бэкапы

Дома, в отличие от датацентра возможны перебои электричества, поэтому нужен ИБП с батареей на несколько часов работы сервера и роутера. От этого же электричества зависит работа оборудования внутридомового провайдера, поэтому ИБП для домашнего сервера не решает проблему отключения провайдерского оборудования и интернета вместе с электричеством. Получается, что на домашний роутер должно быть заведено два провайдера: основной (например, по витой паре или оптике) и резервный (через LTE модем). В разных роутерах процесс настройки выглядит по разному, но суть не меняется. Для резервного интернет-канала я взял LTE модем Huawei E3372-320. Свисток хорош тем, что есть в свободной продаже в разлоченном виде и он оснащен разъемами для внешних антенн, что в некоторых ситуациях может сильно улучшить качество связи.

Однако, с двумя провайдерами у вас будет два разных серых IP адреса, а почтовому серверу нужно нормальное доменное имя и по хорошему белый IP. Выход из ситуации у меня такой: арендуется виртуальный сервер (VPS) за границей, на нем настраивается VPN-сервер, а на почтовом сервере настраивается туннель до VPS. Кроме того, туннель можно поднять прямо с домашнего роутера (если он умеет) и таким образом ликвидируется сразу два зайца: мы получаем статический белый IP не зависящий от локальных провайдеров, а после тюнинга маршрутизации на роутере ‒ централизованный обход блокировок Роскомпозора для всех устройств домашней сети. Схема получается примерно такая:

Будет не очень весело, если жесткий диск домашнего сервера неожиданно накроется вместе со всей почтой. Поэтому необходимость бэкапов сервера даже не обсуждается. О настройке бэкапов поговорим в конце статьи.

Условные обозначения

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

  • Hostname (имя компьютера) почтового сервера ‒ mail

  • Домен ‒ example.com

  • IP адрес VPS сервера ‒ 1.2.3.4

  • Локальная домашняя сеть 192.168.1.0 с маской /24 (255.255.255.0) и шлюзом 192.168.1.1

  • IP адрес почтового сервера в локальной сети ‒ 192.168.1.3

  • Внутри VPN тунеля IP адрес VPN сервера 192.168.77.1, IP адрес VPN клиента 192.168.77.3

Арендуем VPS, настраиваем VPN сервер

Есть куча разных VPS провайдеров, я выбрал vps2day.com, потому что они не просят персональные данные при регистрации, платить можно криптой, можно выбрать страну, где разместить сервер. Для целей VPN будет достаточно VPS в базовой конфигурации, который обойдется в 5 €/месяц. Сперва я зарегистрировал почтовый ящик на protonmail’e, а затем на него оформил аккаунт в vps2day, закинул крипту и арендовал VPS. В качестве ОС я выбрал Debian 10, через несколько минут после оформления аренды на почту приходит отбойник с IP адресом сервера и учетными данными для SSH подключения.

Логинимся, обновляемся:

apt update && apt upgrade

В качестве решения для VPN я выбрал Wireguard, но для установки на Debian 10 надо добавить его репозиторий в apt:

echo 'deb http://deb.debian.org/debian buster-backports main contrib non-free' > /etc/apt/sources.list.d/buster-backports.list
apt update
apt install wireguard

Создаем каталог для файлов конфигурации (если его вдруг нет), назначаем права доступа туда, переходим в него и генерируем закрытый и открытый ключи:

mkdir /etc/wireguard
chmod 700 /etc/wireguard
cd /etc/wireguard
wg genkey | tee privatekey | wg pubkey > publickey

На выходе получим два файла: privatekey с закрытым ключом и publickey с открытым ключом. Создаем файл конфигурации /etc/wireguard/wg0.conf вида:

[Interface]
PrivateKey = сюда вставляем значение ключа из файла privatekey
Address = 192.168.77.1/24
ListenPort = 51820
MTU = 1380

Чуть позже мы дополним этот файл, а пока едем дальше.

Регистрация домена, настройка DNS

При регистрации домена в зоне .RU нужно предоставлять паспортные данные, а делать этого не очень хочется… В международной зоне список необходимых для регистрации данных скромнее. Для регистрации можно указать все тот же ящик с protonmail’a. В качестве примера представим, что мы зарегистрировали домен example.com.

В редакторе DNS зоны нужно добавить «А» запись с именем mail и с указанием на внешний IP нашего почтового сервера, коим будет являться арендованный VPS:

Запись «MX» с приоритетом 10 и указанием на mail.example.com:

Запись «TXT» с SPF v=spf1 ip4:1.2.3.4 mx ~all :

Запись «TXT» DMARC v=DMARC1; p=reject; adkim=s; aspf=s; pct=100; :

Создание виртуальной машины

На ESXi создаем виртуальную машину (ВМ). Диск почтового сервера будем шифровать, поэтому нужно учесть один нюанс. По умолчанию гипервизор создает swap файл, равный размеру оперативной памяти виртуальной машины в каталоге ВМ. Таким образом есть вероятность, что ключ шифрования диска, хранимый в памяти ВМ во время работы окажется в swap файле на гипервизоре, что совсем не здорово. Чтобы этого не случилось, в настройках виртуальной машины нужно зарезервировать всю отведенную под ВМ оперативную память, тогда swap файл будет нулевой длины.

Установка системы и начальная конфигурация

В гостевой ОС вполне можно отказаться от раздела подкачки, особенно если назначить ВМ достаточное количество оперативки, а datastore гипервизора находится на SSD. Я взял Debian 10, процесс установки полностью стандартный за исключением разметки диска. Имя сервера задаем mail, домен example.com. Система ставится в минимальной конфигурации. В разметке дисков я сделал первый раздел под /boot и второй раздел с шифрованием:

После установки системы я делаю несколько базовых вещей. Удаляю созданного при установке пользователя командой deluser <username> --remove-home.

Задаю статический адрес, если это не было сделано во время установки. Для этого правим файл /etc/network/interfaces. Обратите внимание, что сетевой адаптер вашего сервера может называться по другому, в моем примере ens192. Секция файла с настройкой сетевого адаптера должна получиться такой:

allow-hotplug ens192
iface ens192 inet static
    address 192.168.1.3/24
    gateway 192.168.1.1

Для применения изменений выполняем команду (не забываем здесь заменить название сетевого интерфейса на свое):

ifdown ens192 && ifup ens192

Чтобы не углубляться в настройку домашних роутеров, VPN туннель мы будем делать сразу с почтового сервера до VPS и завернем туда весь трафик. Поэтому имеет смысл поменять DNS сервера на публичные. Для этого правим файл /etc/resolv.conf, конечный вид которого примет вид:

nameserver 1.1.1.1
nameserver 1.0.0.1

IPv6 я тоже отключаю, для этого в конец файла /etc/sysctl.conf добавляю строку:

net.ipv6.conf.all.disable_ipv6 = 1

Чтобы параметр применился выполняем команду:

sysctl -p

Проверить, отключился ли IPv6 довольно легко. Для этого нужно просмотреть вывод нижеследующей команды на наличие ipv6 адресов:

ip a

Устанавливаем ssh и wget:

apt install ssh wget

Включаю логин по паролю для root по SSH, для этого в файле /etc/ssh/sshd_config добавляем строку PermitRootLogin yes. Применяем изменения:

service ssh restart

Коннектимся к серверу по ssh и едем дальше.

Настройка VPN подключения

Устанавливаем wireguard на почтовом сервере так же как это делали на VPS несколькими шагами выше:

echo 'deb http://deb.debian.org/debian buster-backports main contrib non-free' > /etc/apt/sources.list.d/buster-backports.list
apt update
apt install wireguard
mkdir /etc/wireguard
chmod 700 /etc/wireguard
cd /etc/wireguard
wg genkey | tee privatekey | wg pubkey > publickey

Создаем файл конфигурации /etc/wireguard/wg0.conf следующего содержания:

[Interface]
PrivateKey = значение ключа из файла privatekey
Address = 192.168.77.3/32
MTU = 1380

[Peer]
PublicKey = значение ключа из файла publickey с VPS сервера
AllowedIPs = 0.0.0.0/0
Endpoint = 1.2.3.4:51820
PersistentKeepalive = 20

Теперь идем по SSH на VPS сервер и в файл конфигурации /etc/wireguard/wg0.conf добавляем:

# mail server
[Peer]
PublicKey = значение ключа из файла publickey с почтового сервера
AllowedIPs = 192.168.77.3/32

На VPS сервере в файл /etc/sysctl.conf добавляем строку net.ipv4.ip_forward = 1, чтобы разрешить форвардинг трафика, а чтобы применить эту настройку без перезагрузки, даем команду sysctl -w net.ipv4.ip_forward = 1.

На VPS создаем небольшой скрипт фаерволла, который будет срабатывать при каждом включении сетевого адаптера. Создаем файл /etc/network/if-up.d/firewall, содержимое файла спрятал под спойлер.

/etc/network/if-up.d/firewall

#! /bin/sh

EXT_IP="1.2.3.4"

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

iptables -A INPUT -i lo -j ACCEPT

# Разрешаем пинги в разумных пределах
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT --match limit --limit 5/second
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT --match limit --limit 5/second

# Разрешаем SSH
iptables -A INPUT -d $EXT_IP -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -d 192.168.77.1 -p tcp --dport 22 -j ACCEPT

# Established connections
iptables -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

# DNS
iptables -A INPUT -i eth0 -p udp -d $EXT_IP --sport 53 -j ACCEPT

# Wireguard
iptables -A INPUT -i eth0 -d $EXT_IP -p udp --dport 51820 -j ACCEPT
iptables -A FORWARD -i wg0 -j ACCEPT
iptables -A FORWARD -o wg0 -j ACCEPT
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

# Выход в интернет для почтового сервера через VPS
iptables -t nat -A POSTROUTING -s 192.168.77.3 -j SNAT --to-source $EXT_IP

# Проброс портов к почтовому серверу через туннель
iptables -t nat -A PREROUTING -d $EXT_IP -p tcp --dport 80 -j DNAT --to-destination 192.168.77.3
iptables -t nat -A PREROUTING -d $EXT_IP -p tcp --dport 443 -j DNAT --to-destination 192.168.77.3
iptables -t nat -A PREROUTING -d $EXT_IP -p tcp --dport 25 -j DNAT --to-destination 192.168.77.3
iptables -t nat -A PREROUTING -d $EXT_IP -p tcp --dport 587 -j DNAT --to-destination 192.168.77.3
iptables -t nat -A PREROUTING -d $EXT_IP -p tcp --dport 143 -j DNAT --to-destination 192.168.77.3
iptables -t nat -A PREROUTING -d $EXT_IP -p tcp --dport 993 -j DNAT --to-destination 192.168.77.3

Не забываем сделать файл исполняемым командой chmod +x /etc/network/if-up.d/firewall

На VPS сервере запускаем wireguard:

systemctl enable wg-quick@wg0
systemctl start wg-quick@wg0

Возвращаемся на почтовый сервер и запускаем wireguard там:

systemctl enable wg-quick@wg0
systemctl start wg-quick@wg0

Состояние подключения можно посмотреть командой wg show. Если хоть какие-то данные в обоих направления пошли, значит все ОК и можно двигаться дальше:

Настройка почтового сервера

В интернете есть пара отличных гайдов по развертыванию почтового сервера на Debian: e-mail caramel и ispmail. Основная сложность настройки заключается в том, что нужно правильным образом сконфигурировать довольно много файлов и нигде не накосячить. Нужно настроить Apache, PostgreSQL, Postfix, Dovecot, rspamd, sieve, сгенерировать SSL сертификаты и DKIM, выставить права. Со знанием дела весь процесс занимает несколько часов, а у новичков может легко занять пару дней и не факт что все получится с первого раза.

По гайду «e-mail caramel» на выходе получается почтовый сервер с IMAP протоколом для клиентов с обязательным шифрованием STARTTLS и Nextcloud’ом в качестве webmail. Сервер убирает из писем мета-теги User-Agent и Received. Учет почтовых пользователей ведется в БД.

Чтобы не заниматься курением конфигов, а результат был предсказуем ‒ я сделал скрипт, который автоматизирует 90% всего процесса из вышеупомянутого гайда с некоторыми отличиями:

  • Я не хочу ставить на почтовый сервер ресурсоемкий Nextcloud, вместо него я буду использовать Rainloop

  • Подрежем еще несколько мета-тегов: X-Mailer, X-Originating-IP, X-PHP-Originating-Script, Mime-Version. При этом в оригинальном гайде фильтрация конфигурируется в master.cf, а у меня в main.cf

Скрипт устанавливает необходимые пакеты, конфигурирует apache, БД, конфигурирует почтовые службы и на выходе получается практически готовый к употреблению почтовый сервер. При этом я пока не стал включать в скрипт генерирование SSL и DKIM, сделаем это руками чуть ниже.

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

Скачиваем и распаковываем скрипт:

wget https://github.com/alexmdv/mailserver-autosetup/archive/main.zip
unzip main.zip
chmod +x -R ./mailserver-autosetup-main
cd ./mailserver-autosetup-main

Всего в каталоге 3 файла:

  • mailserver-setup.sh — основной скрипт конфигурирования сервера

  • mailuser-addnew.sh — скрипт создания почтового юзера

  • mailuser-setpass.sh — скрипт смены пароля для существующего почтового юзера

Запускаем mailserver-setup.sh. Скрипт попросит ввести следующие данные: имя хоста почтового сервера (в этом гайде это просто mail), имя домена, который был ранее зарегистрирован (например, example.com), IP адрес почтового сервера в локальной сети. Имя хоста + домен как раз образуют полное имя mail.example.com. По завершению работы скрипта почтовые сервисы остаются в выключенном состоянии, т.к. перед запуском надо сгенерировать SSL сертификаты и DKIM. Так же по завершению будет отображен админский пароль от БД. Этот пароль нужно вставить в скрипты mailuser-addnew.sh и mailuser-setpass.sh вместо слова PASSWORD, см в файлах вторую строку:

#!/bin/bash
pgadmpass="PASSWORD"

Генерирование сертификатов, завершение настройки

Генерируем SSL сертификат командой. Не забываем заменить example.com на свой домен:

certbot certonly --apache --agree-tos --email admin@example.com --no-eff-email --domain mail.example.com

Генерируем DKIM. В команде ниже вместе example.com ‒ ваш домен, а вместо 20210121 можно взять текущую дату (ггггммдд):

rspamadm dkim_keygen -b 2048 -d example.com -s 20210121 -k /var/lib/rspamd/dkim/example.com.20210121.key

Результатом выполнения команды будет такой текст:

20210121._domainkey IN TXT ( "v=DKIM1; k=rsa; "
	"p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAumOhUcY3anZV4tGF1+VsYDD9bTZ0rqiFCm8FPdDHVB0U+ZPfZ2Cxf+x+jIFYXfO/jWEoAw2uYFz3Mt1ImvRQzU9oMx0t/0HtMKS4m3AhOBM5SkkhvoAaJkoIt3gTQ4KQyiBsZemihAw6V/gsex8K6M76m4WkbT92+tg192EGXBUDo0k7kk1rDOld0G9X2P0IxkVfqKqfwg+fI+0Im"
	"AOFC1gBCIm18XPEGZA2oOoNbkWO95bD8Rj20yv8639bMA27+B08v4/aPXQb9HZLEwpsz8Qa/WgEZFGJzd6kUaYWHTfMmbgBXnET5N+tjXGvkjtnLbx25ru/PZTeckGjE/komQIDAQAB"
) ;

В файл /etc/rspamd/dkim_selectors.map нужно добавить дату, чтобы получилось примерно так:

example.com 20210121

Идем в редактор DNS зоны у регистратора, добавляем запись «TXT» с именем 20210121._domainkey и значением v=DKIM1; k=rsa; p=... Дата в имени у вас будет своя, параметры перечисляются без двойных кавычек. Примерно так:

Тут есть нюанс. По умолчанию длина ТХТ записи может быть до 255 символов, а т.к. мы сгенерировали 2048 битный DKIM ключ, то его длина выходит за это ограничение и если вы внимательно посмотрите на результат генерации ключа, параметр p разбит на два, каждый из которых в своих двойных кавычках. Если регистратор поддерживает ТХТ записи большей длины, то две части можно просто схлопнуть, убрав кавычки. У GoDaddy, например, максимальная длина TXT записи 1024 символа. А если регистратор не поддерживает больше 255 символов, то ключ записывается в две ТХТ записи. Или можно сгенерировать более короткий ключ на 1024 бита.

Последнее что нужно сделать ‒ поправить файл /etc/postfix/master.cf. Необходимо раскомментировать строку:

#submission inet n       -       -       -       -       smtpd

И 4 вложенных параметра, начинающихся на «-o». Двойной пробел перед ними нужно сохранить. Последний параметр, возможно нужно будет просто дописать. На всякий случай в архиве со скриптом приложен готовый к употреблению файл master.cf. Должно получиться так:

submission inet n       -       -       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o cleanup_service_name=header_cleanup

Перезагружаем сервер.

Теперь заведем первый почтовый ящик. Для этого нужно воспользоваться скриптом mailuser-addnew.sh. Нужно будет ввести короткое имя (слово до @example.com), доменное имя (сам example.com) и пароль два раза. После этого можно попробовать настроить любой почтовый клиент используя созданную учетную запись.

В качестве примера пусть будет oleg@example.com. Для настройки почтового клиента набор параметров будет таким: почтовый адрес oleg@example.com, имя пользователя для IMAP и для SMTP так же oleg@example.com, сервер входящей почты IMAP mail.example.com, исходящей почты тоже mail.example.com, способ подключения везде STARTTLS.

Для проверки корректности настройки DKIM и SPF, можно воспользоваться ресурсом https://dkimvalidator.com, отправив туда тестовое письмо и посмотрев отчет. Все проверки должны быть в статусе pass (пройдено).

Устанавливаем Rainloop webmail

Все необходимые php модули для Rainloop уже были установлены скриптом. Скачиваем актуальную версию проекта, распаковываем, задаем права, включаем vhost на веб-сервере:

wget http://www.rainloop.net/repository/webmail/rainloop-community-latest.zip
unzip rainloop-community-latest.zip -d /var/www/webmail
cd /var/www/webmail
chmod 644 .
find . -type d -exec chmod 755 {} ;
find . -type f -exec chmod 644 {} ;
chown -R www-data:www-data .
a2ensite webmail
service apache2 reload

Логинимся в админку rainloop по адресу https://mail.example.com/?admin с логином admin и паролем 12345. Пароль естественно надо будет сменить, это делается в разделе Security.

Далее добавляем наш почтовый сервер. Идем в раздел Domains, отключаем все прочие почтовые сервера и жмем по кнопке Add Domain:

Вводим параметры нашего домена и жмем Add:

Дополнительно в закладке Login можно так же указать домен:

Теперь можно пробовать заходить в webmail https://mail.example.com используя короткое имя пользователя (без @example.com):

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

В качестве небольшого тюнинга безопасности Apache добавим пару строк в файл /etc/apache2/apache2.conf. Это скроет данные о версии веб-сервера:

ServerSignature Off
ServerTokens Prod

Для применения изменений перезагрузим Apache командой service apache2 reload.

phpPgAdmin

В БД mail_server есть три основные таблицы: alias, sharedmail_boxes, users. Все пользователи с хешами паролей хранятся в users. С помощью таблицы alias можно сделать псевдонимы к уже существующим почтовым ящикам, а с помощью таблицы shared_mailboxes можно сделать доступ к определенным ящикам для нескольких людей. Вход в phpPgAdmin по адресу http://локальный-ip-адрес-сервера/phppgadmin с логином postgres и паролем, который был сгенерирован скриптом.

Если нет нужды ковырять таблицы, то можно отключить сайт с phpPgAdmin вообще:

a2dissite lanhost
service apache2 reload

Бэкапы

Так как почтовый сервер я делал для себя и очень ограниченного круга людей, то много пространства серверу не нужно, емкость всего диска 20 Гб. Схема резервного копирования такая: один раз бэкапится виртуальная машина почтового сервера целиком, чтобы случае чего не настраивать сервер заново. А во вне делается бэкап почтового каталога. Естественно все бэкапы шифруем. Для копий каталога отлично подойдет VPS, у которого целых 25 Гб пространства, бэкапить буду с помощью restic. Но прежде надо настроить ssh подключение до VPS по сертификату.

На почтовом сервере генерируем RSA ключ, на все вопросы мастера просто жмем Enter:

ssh-keygen -t rsa -b 4096

Копируем открытый ключ на VPS:

cat ~/.ssh/id_rsa.pub | ssh root@192.168.77.1 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Устанавливаем Restic

apt install restic

Создаем репозиторий (копии будут храниться на VPS в каталоге /mnt/mserv-bkp):

restic -r sftp:192.168.77.1:/mnt/mserv-bkp init

Выполнение команды может занять несколько минут, в конце попросят придумать пароль для шифрования репозитория. Чтобы автоматизировать процесс создания резервных копий, создадим файл с переменными /root/.restic следующего содержания:

export RESTIC_REPOSITORY="sftp:192.168.77.1:/mnt/mserv-bkp"
export RESTIC_PASSWORD="Пароль придуманный на прошлом шаге"

Подхватываем файлик:

source /root/.restic

Попробуем выполнить резервное копирование почтового каталога:

restic backup /var/vmail

Проверяем, что в репозитории что-то появилось:

restic snapshots

Если есть наш только что созданный снапшот, то двигаемся дальше. Создаем файл /etc/root/restic с содержимым:

#!/bin/bash

source /root/.restic
restic backup /var/vmail

Делаем его исполняемым:

chmod +x /root/restic

И добавляем в /etc/crontab на запуск раз в сутки:

0 1 * * * root /root/restic

Заключение

Теперь настройку почтового сервера можно считать полностью завершенной.

Как видно, владение своим почтовым сервером стоит некоторых денег. Цена складывается из оплаты регистрации домена, аренды VPS, оплаты второго провайдера дома и в конце концов электричества. В моем случае получается в районе 950 ₽ в месяц за всё. С другой стороны резервный интернет канал и VPN будут полезны для всей домашней сети, но об этом мы поговорим в следующий раз.

Спасибо, что дочитали. Комментарии, вопросы, замечания и пожелания приветствуются!

Оригинал статьи в моем блоге.

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

Электронная почта — самый популярный способ общения в профессиональном мире. Хотя существуют различные поставщики услуг хостинга электронной почты, многие компании ищут альтернативу, например, собственные серверы для электронной почты.

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

Что такое самостоятельный хостинг?

Самостоятельно размещенные электронные письма — это серверы, которые могут быть размещены в вашей локальной сети или на вашем сервере. При желании вы всегда можете использовать его, интегрировав со сторонними учетными записями электронной почты. Однако его основная функция — позволить вам создать свой собственный почтовый сервер.

Преимущества использования самостоятельных почтовых серверов

Когда у вас есть собственный почтовый сервер, вся переписка по электронной почте будет полностью конфиденциальной. Больше не нужно быть жертвой стороннего слежки и обмена вашей личной информацией с рекламодателями.

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

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

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

Использование локального почтового сервера: рекомендации

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

Прежде чем переходить на него с традиционного почтового клиента, следует проверить:

  • Если на сервере есть агент передачи почты (MTA) для отправки писем от разных пользователей.
  • Поддерживает ли он IMAP и POP3, два самых популярных протокола электронной почты.
  • Чтобы блокировать входящий спам по электронной почте, должен быть эффективный спам-фильтр.
  • Если он содержит антивирус для защиты ваших почтовых ящиков от вирусов и вредоносных программ.
  • Агент доставки почты также должен быть там, чтобы отправлять электронные письма в папку «Входящие».

Давайте теперь посмотрим на лучшие самостоятельные почтовые серверы.

Модобоа

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

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

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

Самым большим преимуществом использования Modoboa является безопасность данных и конфиденциальность. Поставщик услуг электронной почты использует протокол TLS для шифрования всех передач данных между сервером электронной почты и внешним миром. Протоколы SPF, DKIM и DMARC — это некоторые другие подходы, которые он использует для защиты вашей онлайн-репутации.

Майлу

Если вы ищете многофункциональный, но простой в использовании собственный почтовый сервер, выберите Майлу. Это бесплатное программное обеспечение предназначено для предоставления пользователям сервера, который можно легко настроить и обслуживать. Он не содержит ненужных функций, которые есть во многих групповых программах.

Платформа позволяет использовать стандартные почтовые серверы и протоколы, такие как IMAP, IMAP+, SMTP и Submission. Помимо веб-доступа, он поставляется с такими функциями, как несколько веб-почт, псевдонимы доменов, настраиваемая маршрутизация и административные интерфейсы.

Пользователи могут легко использовать псевдонимы, автоматическую переадресацию, автоответ и извлеченные учетные записи, чтобы сэкономить время и усилия. Глобальные администраторы, делегирование для каждого домена, объявления и квоты — вот некоторые из его административных атрибутов, которые позволят вам беспрепятственно управлять этим почтовым сервером.

Более того, платформа использует TLS, Letsencrypt! сертификат, исходящий DKIM, серый список, антивирусный сканер, защита от спама, автоматическое обучение, DMARC и SPF для обеспечения максимальной безопасности.

Докер Почтовый Сервер

Докер Почтовый Сервер — это полнофункциональный почтовый сервер с открытым исходным кодом, который поддерживает службу электронной почты через SMTP, LDAP и IMAP. Это готовое к производству решение поставляется только с файлами конфигурации, что делает его простым и версионным. Сервер не имеет базы данных SQL и может быть легко развернут и обновлен.

Он также поддерживает создание пользовательских правил для SpamAssassin и ClamAV, включая автоматические обновления. Сервер использует LetsEncrypt и самозаверяющие сертификаты для обеспечения безопасности данных. Пользователи также получают такие функции, как сценарий установки для настройки и обслуживания сервера, базовую поддержку Sieve через Dovecot, постоянные данные и состояние, а также разделители расширений.

Ваше устройство должно иметь 1 виртуальное ядро ​​и 512 МБ ОЗУ для запуска этого сервера. Однако вам следует деактивировать такие службы, как ClamAV, для запуска на хосте с 512 МБ ОЗУ. Для оптимальной производительности рекомендуемая конфигурация включает 1 процессор Core, 2 ГБ ОЗУ и возможность подкачки для контейнера.

Poste.io

С использованием Poste.io, вы можете получить веб-почту и такие функции, как защита от спама, антивирус и веб-администрирование на своем сервере менее чем за 5 минут. Этот полнофункциональный почтовый сервер хранит пользовательские данные и конфигурацию отдельно от двоичных файлов. Поскольку он хранит пользовательские данные в файлах базы данных SQLite, вы можете использовать эту платформу с внешним хранилищем.

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

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

Другими его примечательными функциями являются перенаправление электронной почты, автоответчик, фильтрация электронной почты и шифрование данных. Кроме того, он поставляется со встроенным автообнаружением, совместимым с Microsoft365 и Thunderbird.

iRedMail

Те, кто заинтересован в создании почтового сервера с решениями с открытым исходным кодом, должны выбрать iRedMail. Это почтовый сервер с открытым исходным кодом, который вы можете использовать с Red Hat, Ubuntu, CentOS, Debian, OpenBSD и FreeBSD.

Все элементы iRedMail имеют открытый исходный код, и пользователи будут получать обновления и исправления ошибок от надежных поставщиков Linux/BSD. Вы можете фильтровать электронные письма и упорядочивать их по папкам в интуитивно понятном веб-интерфейсе на основе веб-почты Roundcube.

iRedMail гарантирует, что электронные письма передаются с использованием безопасных соединений (POP3, IMAP и SMTP) и шифруются при передаче, чтобы третьи лица не могли получить доступ к содержимому вашей электронной почты.

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

Почта в ящике

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

Тем не менее, вам не нужно быть технически подкованным человеком, чтобы настроить это. Эта платформа предлагает веб-почту и сервер IMAP / SMTP, к которым пользователи могут получить доступ с помощью настольного инструмента и мобильных устройств.

Здесь вы получаете все стандартные функции электронной почты, включая правила почтового фильтра, фильтрацию спама, серый список, автоматическую настройку и автоматическое резервное копирование. Помимо этого, вы также можете синхронизировать с ним контакты и календари.

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

hMailServer

Пользователи Microsoft Windows должны выбрать hMailServer для бесплатного собственного почтового сервера. Вы можете использовать его в большинстве коммерческих сценариев, поскольку его расширяемый исходный код доступен на GitHub. Любая система веб-почты с поддержкой IMAP и SMTP может использоваться с hMailServer.

Установка и настройка hMailServer выполняются легко и быстро. Его простой в использовании инструмент администрирования позволяет пользователям добавлять учетные записи и домены, настраивать параметры и включать сканирование на вирусы.

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

Апач Джеймс

Апач Джеймс это агент передачи почты с открытым исходным кодом с поддержкой SMTP и POP3. Джеймс — это аббревиатура от Java Apache Mail Enterprise Server. Он состоит из модульной архитектуры, полной надежных и современных компонентов.

Сервер совместим с протоколами электронной почты, такими как SMTP, LMTP, POP3, IMAP, ManageSieve и IMAP. Он использует MySQL, HSQLDB, Cassandra и PostgreSQL для реализации хранилища. Некоторые из его других функций — это Mailbox API, расширяемые агенты обработки электронной почты, администрирование из командной строки и т. д.

Голубятня

Голубятня — это защищенный сервер IMAP, который можно использовать для небольших и крупных установок. Он считается одним из самых эффективных серверов IMAP, поддерживающих стандартные форматы файлов MBOX и Maildir.

Сервер индексирует почтовые ящики с полной прозрачностью и предлагает совместимость с существующими инструментами управления почтовыми ящиками. Самооптимизирующиеся индексы содержат именно то, что нужно клиентам.

Dovecot поставляется с гибкими режимами аутентификации пользователей, которые принимают различные базы данных и механизмы аутентификации. Кроме того, он позволяет переносить данные электронной почты с разных серверов IMAP и POP3. Дизайн и реализация этой платформы, ориентированные на безопасность, означают, что вам не нужно беспокоиться о конфиденциальности ваших данных.

Будучи удобным для администратора сервером, он генерирует понятные сообщения об ошибках. Его текущие функции могут быть расширены с помощью плагинов. Например, вы можете выделить квоту, включая поддержку ACL, добавить другие новые команды и отредактировать существующие с помощью плагинов.

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

Почтовый сервер WildDuck

Когда дело доходит до выбора программного обеспечения современного почтового сервера для POP3 и IMAP, люди часто зависят от Почтовый сервер WildDuck. Этот сервер полностью масштабируемый, отдает предпочтение Unicode и управляется через API. Объединив его с Haraka и ZoneMTA, пользователи могут создать полноценный почтовый сервер.

Он предлагает первоклассную поддержку IMAP, поэтому у вас не должно возникнуть проблем с его использованием с любым почтовым клиентом. Кластер MongoDB используется вместо файловой системы для хранения любых данных электронной почты. Более того, вы можете создать кластер любого размера.

Для написания этого почтового сервера используется безопасный для памяти язык. Кроме того, вам не нужно предоставлять какие-либо привилегии root или доступ к файловой системе.

MailSlurper

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

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

Более того, он способен обрабатывать тысячи одновременных подключений и работать с базами данных, включая SQLite, MySQL и MSSQL. Настроить этот почтовый сервер легко, и он имеет отзывчивый веб-интерфейс.

Вы можете запустить MailSlurper в Windows, OSX и Linux. Помимо возможности поиска электронных писем по теме, отправителю, получателю и содержимому электронной почты, он сохраняет часто используемые термины.

Демон сервера Magma

Демон сервера Magma — это система электронной почты с открытым исходным кодом, которая использует шифрование для обеспечения безопасности ваших данных. Сервер поддерживает протоколы POP, HTTP, SMTP, IMAP и MOLTEN. Кроме того, вскоре будет расширена поддержка DMTP и DMAP.

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

Подведение итогов 📧

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

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

Рубрика:

Администрирование / 
Продукты и решения

Facebook

Twitter

Мой мир

Вконтакте

Одноклассники

Google+

Алексей Бережной АЛЕКСЕЙ БЕРЕЖНОЙ

Обзор бесплатных почтовых серверов
для операционных систем семейства Windows

Трудно представить современную компанию, не использующую систему электронной почты (e-mail). Для решения этой задачи существует множество различных способов. В данной статье мы рассмотрим несколько бесплатных программных продуктов, позволяющих создать собственный почтовый сервер на базе операционной системы семейства MS Windows.

Но прежде чем приступить к описанию, необходимо ответить на несколько вопросов.

Для чего используется корпоративная почтовая система?

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

Корпоративная почтовая система расширяет возможности использования офисных многофункциональных устройств (МФУ). Многие современные сетевые МФУ способны отправлять по почте отсканированные документы.

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

А почему бы просто не завести ящики на бесплатном почтовом сервисе?

Можно, конечно воспользоваться услугами бесплатной электронной почты, например, Gmail.com или Mail.ru.

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

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

Еще одним отрицательным фактором является необходимость оплачивать трафик, потребляемый при пересылке любых сообщений. Так, рассылка нового прайс-листа весом в 8 Мб пятнадцати адресатам внутри одной компании в конечном итоге превращается в 120 Мб входящего трафика.

Отсылать на бесплатные почтовые ящики отсканированные документы прямо из МФУ также представляется нетривиальной задачей.

Использовать бесплатную электронную почту для организации доставки уведомлений о состоянии системы крайне неудобно. Представьте себе ситуацию, когда системный администратор не получил уведомление о завершении процесса резервного копирования.

В чем может быть проблема: сбой в процессе копирования, программа просто не смогла по какой-либо причине отправить письмо или причина заключена в работе бесплатного почтового сервера? И куда обращаться, чтобы уточнить причину, по которой письмо не было доставлено?

Некоторые бесплатные почтовые серверы предлагают свои решения по борьбе со спамом, но в конечном итоге другого решения, кроме как «переместить в папку «Спам», не предоставляется.

Справедливости ради стоит сказать о единственном положительном факторе – это то, что системному администратору практически не надо ничего делать для организации корпоративной почты. Достаточно поддерживать стабильный доступ в Интернет и, может быть, настроить программное обеспечение почтовых клиентов, хотя большая часть известных поставщиков услуг бесплатной электронной почты, такие как Gmail.com, Mail.ru или Pochta.ru, имеют достаточно простой и удобный веб-интерфейс.

Не проще ли воспользоваться услугами провайдера?

Да, конечно, можно выбрать данный вариант и воспользоваться услугами сторонней фирмы, например интернет-провайдера.

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

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

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

Также данное решение не обладает достаточной гибкостью при администрировании, например, при расследовании инцидентов, связанных с непрохождением почты, принятии решений в вопросах защиты от спама и т. д. Хотя ситуация в данном случае несколько лучше, чем с бесплатной почтой (например, можно отправить письмо администратору почтового сервера с просьбой о предоставлении информации по отклоненным сообщениям).

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

Отправка отсканированных документов из МФУ по e-mail будет иметь те же сложности, что и в случае с бесплатной почтой.

Чем же так хорош собственный почтовый сервер?

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

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

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

Появляется возможность установить собственную антиспам-систему, как основанную на бесплатных решениях, таких как сервисы RBL или свободно распространяемых продуктах (например, SpamAssassin), так и на коммерческом ПО.

Кроме того, у системного администратора появляется замечательный гибко настраиваемый инструмент получения уведомлений по e-mail об ошибках и других инцидентах, происходящих в рамках IT-структуры.

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

А почему бы не поставить Linux, FreeBSD, OpenSolaris и не поднять на нем Postfix, Sendmal, Qmail и т. д.?

Замечательно, если решения построены на базе UNIX-подобных операционных систем, такие как Postfix. Это в первую очередь отсутствие в большинстве случаев необходимости платить за лицензию на операционную систему, экономичное отношение к ресурсам, гибкость в управлении и т. д.

Но, во-первых, нужно неплохо разбираться в UNIX-подобных операционных системах, во-вторых, уметь настраивать довольно специфичное ПО. Идеология большинства решений в этой области базируется на основе идеи некоего конструктора из отдельных «кирпичиков», из которых и строится гибкая, управляемая, но все же сложная система.

Есть, конечно, программные продукты, организованные по принципу «все в одном флаконе», например Courier Mail Server (или, как его еще называют – Courier MTA, сайт – http://www.courier-mta.org).

Кроме того, если вся сеть построена на основе Windows, появляется необходимость в выделенном компьютере для организации почтового сервера на базе UNIX-решения.

Помимо вопросов наподобие: «как настроить Postfix», также требуется решить вопросы резервирования, мониторинга состояния системы и т. п. Для системного администратора, специализирующегося на Windows-платформе и зачастую единственного IT-специалиста в небольшой компании, это может оказаться довольно сложной задачей.

Для специалистов, желающих строить свою систему на базе UNIX-подобных решений, могу порекомендовать статью Андрея Шетухина «Создаем почтовый сервер. Полное руководство» из июльского номера «Системного администратора» за 2008 год.

Но ведь есть «уже готовый» почтовый сервис, поставляемый с MS Windows Server 2003. Почему бы не использовать его?

Да, конечно, такая возможность есть. Но, во-первых, чтобы получить право «бесплатно» его использовать при числе пользователей более 10, необходимо купить полноценную серверную операционную систему. В случае с бесплатным продуктом от третьих фирм мы сможем обойтись, к примеру, Windows XP, что выглядит весьма привлекательно для одноранговых сетей маленьких компаний.

Во-вторых, описываемый почтовый сервис является частью Internet Information Service. Не имеет смысла поднимать тяжеловесное приложение только из-за необходимости организовать почтовый сервер для небольшой компании.

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

Описание почтовых серверов

Итак, поскольку мы ответили на все предварительные вопросы, можно переходить к непосредственному описанию различных программных продуктов. Для начала определимся, что же мы хотим от нашего сервера.

Безусловно, он должен поддерживать связку протоколов POP3/SMTP.

Должна присутствовать защита от несанкционированного использования почтового сервера (превращения в open relay). Например, SMTP-аутентификация или ограничение почтового роутинга для всех IP-адресов, кроме специально разрешенных.

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

Должно быть удобное меню для настройки нашего почтового сервера.

Крайне желательно наличие веб-интерфейса для работы с почтой.

Еще одно серьезное пожелание – совместимость с MS Windows Vista. Так как в прилагаемой документации всех участвующих в нашем обзоре почтовых серверов специально не оговорено, что продукт совместим с Vista, придется протестировать работоспособность вручную. В качестве тестовой операционной системы выбрана Vista Home Premium.

Как пожелание еще неплохо иметь возможность поддержки протокола IMAP4, позволяющего хранить все сообщения (в том числе и отправленные) на сервере.

Еще одно условие. При тестировании и описании программных продуктов примем в качестве предварительной договоренности следующее: системные администраторы, как правило, люди довольно занятые. Сроки на сдачу сервиса в эксплуатацию устанавливаются весьма сжатые. В связи с этим нет длительного периода времени на «прикручивание» той или иной функции. Поэтому если после чтения документации и изучения интерфейса не удается настроить какую-либо функцию в течение двух часов, мы просто регистрируем факт неудачи в настройке и переходим к следующему шагу. В конце концов мы же выбрали платформу Windows и продукты под нее именно за простоту установки и эксплуатации.

hMailServer

Начнем знакомство с сайта программы – http://www.hmailserver.com.

Функциональность

hMailServer предоставляет весь важный функционал для запуска вашего собственного e-mail-сервера. Как пользователю hMailServer вам будут доступны обновления и широкая поддержка других пользователей и разработчиков на форуме. Данный продукт не требует оплаты при использовании или распространении. hMailServer поддерживает открытые почтовые e-mail-стандарты: POP3, SMTP и IMAP4. Это делает сервер совместимым с большинством почтовых клиентов. hMailServer 4 и более старшие версии лицензированы как Open Source под лицензией GPL. Последние версии (5 и позднее) также свободны, но поставляются с закрытым кодом.

Основные возможности

  • POP3, SMTP, IMAP;
  • Virtual domains (виртуальные домены);
  • Built-in backup (встроенная система резервного копирования);
  • External accounts (внешние аккаунты);
  • Rules (правила);
  • Multilingual (многоязыковая поддержка);
  • AntiVirus;
  • Spam protection (антиспамзащита);
  • Routing (перенаправление почты);
  • MX backup;
  • Mirroring (копирование сообщений на определенный адрес);
  • SQL-support (хранение данных в SQL-базе данных).

Как видно из перечисленных возможностей, перед нами довольно серьезный продукт, позволяющий организовать полностью функциональный почтовый сервер.

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

Установка и эксплуатация hMailServer

Ссылка для скачивания последней стабильной версии 4.4.3 программы – http://download.hmailserver.com/hMailServer-4.4.3-B285.exe.

Для скачивания справки: http://download.hmailserver.com/documentation/hMailServer-4-4.chm.

Скачивание программы по указанной выше ссылке и непосредственная установка прошли без особых проблем. Отдельно стоит отметить тот факт, что программа использует для хранения информации SQL-базу данных. При этом можно использовать широкий спектр СУБД, включая MySQL 4x, 5x, Microsoft SQL Server (начиная с Microsoft SQL Server 7, включая Express, Standard and Enterprise edition) или PostgreSQL (начиная с 8-й версии). При этом сама программа поставляется со встроенным MySQL, позволяя выбрать эту функцию при инсталляции. Поэтому даже абсолютно неискушенные в администрировании баз данных люди вполне могут установить и использовать данный почтовый сервер.

А вот при первом запуске консоли администрирования ожидал неприятный сюрприз: произошел сбой кодировки (см. рис. 1).

Сбой кодировки при первом запуске консоли управления сервером

Рисунок 1. Сбой кодировки при первом запуске консоли управления сервером

В данной ситуации опять же выручила документация. Пройдя по ссылке http://www.hmailserver.com/documentation/?page=howto_install, стало понятно, как ввести пароль и соединиться с сервером. После этого потребовалось меньше минуты, чтобы вручную переключить консоль на английский язык и в дальнейшем работать без ошибок (см. рис. 2).

Ликвидация последствий ошибки в кодировке при первом запуске

Рисунок 2. Ликвидация последствий ошибки в кодировке при первом запуске

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

Все настройки осуществляются через консоль управления сервером (см. рис. 3). Данную консоль можно установить как непосредственно на сам сервер, так и на отдельный компьютер, например на рабочую станцию системного администратора.

Панель управления hMailServer Administrator

Рисунок 3. Панель управления hMailServer Administrator

Честно говоря, данный продукт поражает богатством своих функций:

  • Возможность поддерживать мультидоменную почтовую систему, как при помощи виртуальных доменов, так и создавая псевдонимы к уже имеющимся.
  • Полноценная поддержка протокола IMAP4.
  • Встроенная поддержка SMTP-аутентификацией (сервер по умолчанию запускается уже с включенным данным параметром), при этом дополнительно существует возможность ограничения доступа по соответствию IP-адресов.
  • Возможность создания групп рассылки.
  • Защита от спама при помощи RBL и Greylisting.
  • Встроенная система резервного копирования и восстановления данных, которая позволяет сохранить не только базу данных пользователей, но сообщения.

Отдельное слово нужно сказать об антивирусной поддержке. hMailServer может использовать ClamWin как встроенный антивирус, который, правда, необходимо скачать и установить отдельно (ссылка на скачивание http://heanet.dl.sourceforge.net/sourceforge/clamwin/clamwin-0.94.1-setup.exe).

После установки ClamWin, если установка проходила в каталог по умолчанию, достаточно перейти на соответствующую вкладку hMailServer Administrator и нажать кнопку

Autodetect. hMailServer сам определит местонахождение антивирусной базы данных и исполняемого файла. Или можно выбрать местонахождение вручную.

Второй вариант антивирусной защиты заключается в подключении внешнего антивируса. Можно использовать в принципе любой антивирус, за исключением Eset NOD32, о чем авторы программы честно признаются на сайте программы и в документации (справке к программе).

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

Несколько слов об антиспам-защите. Предлагается использовать набор популярных black-листов (DNS и SURBL), а также GreyListing (задержка при получении письма, чтобы обмануть спамера).

Разработчики hMailServer позаботились и о White List («белом списке»), чтобы исключить ошибочную блокировку хорошей почты.

Дополнительно существует возможность подключения Anti-Spam SMTP Proxy (ASSP) (http://assp.sourceforge.net) в качестве внешнего антиспам-фильтра, о чем указано в соответствующем разделе справки.

Ну и в качестве завершающего штриха тест – на возможность SMTP- и POP3-аутентификации:

c: elnet mail.test.ru 25

220 MAIL ESMTP

ehlo mail.test.ru

250-hmailserver

250-SIZE

250 AUTH LOGIN   

Как видно из вывода команды telnet, сервер обеспечивает метод LOGIN, поддерживаемый большинством клиентов под Windows. К сожалению, нет поддержки чего-то более интересного с точки зрения безопасности, например метода шифрования MD5.

Для тестирования возможности аутентификации по POP3 воспользуемся программой KMail из пакета программ оконного менеджера KDE для UNIX-систем.

В окне настроек этого почтового клиента есть вкладка «Безопасность» с функцией «Проверить возможности сервера». Как видно на рис. 4, hMailserver не поддерживает шифрование и использует авторизацию только при помощи открытого текста.

Тестирование возможностей POP3-аутентификации при помощи функции «Проверить возможности сервера»

Рисунок 4. Тестирование возможностей POP3-аутентификации при помощи функции «Проверить возможности сервера»

Окончательное тестирование при помощи Outlook Express показало, что после соответствующей настройки возможно использование аутентификации по POP3 и по SMTP при указании логина и пароля.

Вкладка, в которой задается требование аутентификации, показана на рис. 5.

Настройка аутентификации на hMailServer

Рисунок 5. Настройка аутентификации на hMailServer

Инсталляция на Windows Vista прошла успешно. Не пришлось производить никаких дополнительных настроек. Поэтому можно с уверенностью говорить о том, что данный продукт совместим c Windows Vista.

Итак, подведем итоги по hMailServer

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

К минусам программы можно отнести отсутствие более безопасных методов аутентификации по POP3, несовместимость с Eset NOD32 (хотя ничто не мешает использовать ClamWin), а также отсутствие встроенного веб-интерфейса для работы с электронной почтой через браузер. Хотя наличие поддержки протокола IMAP4 позволяет использовать большое количество веб-интерфейсов сторонних разработчиков, включая популярный продукт SquirrelMail. (О чем, кстати, также сказано в документации.) Что же касается некоторых недоразумений, появляющихся при первом запуске консоли hMailServer Administrator, будем надеяться, что данная ошибка будет исправлена в следующих версиях.

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

XMail

По сложившейся традиции в первую очередь обратимся на сайт программы (http://www.xmailserver.org): «XMail – это Internet- и Intranet-почтовый сервер, способный работать как ESMTP server, POP3 server, finger server, обеспечивать TLS для SMTP и POP3 (и клиента и сервера), мультидоменную структуру, не требующую заводить реальные системные аккаунты, проверку SMTP relay, поддержку проверки адресов на основе DNS-списков, пользовательскую (базирующуюся как на IP, так и на почтовом адресе) защиту от спама, SMTP-аутентификацию (PLAIN LOGIN CRAM-MD5 POP3-before-SMTP и пользовательские плагины), синхронизацию по POP3 с внешними аккаунтами, алиасинг учетных записей и доменов, пользовательскую обработку почты, прямую доставку, пользовательские почтовые фильтры, списки рассылки, удаленное администрирование, настраиваемый обмен сообщениями, ведение протоколов и имеет мультиплатформенный код. Код XMail компилирован для GNU/Linux, FreeBSD, OpenBSD, NetBSD, OSX, Solaris and NT/2K/XP».

Начало довольно интригующее. Несколько огорчает отсутствие поддержки протокола IMAP4, что называется из коробки. Хотя описание продукта выглядит солидно.

Ниже на странице прилагается длинный список сторонних утилит и дополнений. Налицо подход, укладывающийся в идеологию Open Source-строительство системы «из маленьких кирпичиков». В принципе это даже хорошо. Жалко, конечно, что часть ссылок на сторонние «кирпичики» оказалась нерабочей, неплохо бы администрации сайта хоть изредка проверять содержимое своей странички на наличие неработающих ссылок.

Установка и эксплуатация XMail

Ну что же, первоначальную информацию мы получили, теперь можно приступать к скачиванию и установке. Ссылка для скачивания программы: http://www.xmailserver.org/xmail-1.25.win32bin.zip.

Если вы думаете, что сразу после распаковки архива и запуска некоего исполняемого файла все заработает, то вас глубоко разочарую. Разработчики XMail вовсю постарались, чтобы сделать знакомство с их продуктом не простым, но захватывающим и незабываемым.

В первую очередь идем на сайт и читаем документацию по установке: http://www.xmailserver.org/Readme.html#nt_win2k_xp.

Из документации следует, что необходимо распаковать архив программы в отдельный каталог, после этого содержимое подкаталога MailRoot скопировать в выбранное место в документации, предлагается в C:MailRoot. Я решил не отступать от сложившейся традиции и поступил точно так же. А вот бинарники, перед этим находящиеся в корне архива, авторы программы предлагают скопировать в подкаталог C:MailRootin, что я добросовестно и сделал. После этого необходимо запустить regedit и создать несколько ключей реестра (см. рис. 6):

Операции, необходимые для запуска XMail. Regedit c открытыми ключами, которые нужно добавить, и «Проводник» с раскрытой папкой C:MailRootin,  куда нужно скопировать содержимое корня скачанного архива

Рисунок 6. Операции, необходимые для запуска XMail. Regedit c открытыми ключами, которые нужно добавить, и «Проводник» с раскрытой папкой C:MailRootin,куда нужно скопировать содержимое корня скачанного архива

Создаем ключ GNU в HKEY_LOCAL_MACHINESOFTWARE. В результате должно получиться HKEY_LOCAL_MACHINESOFTWAREGNU.

Далее в созданном ключе HKEY_LOCAL_MACHINESOFTWAREGNU нужно создать ключ XMail. В итоге – HKEY_LOCAL_MACHINESOFTWAREGNUXMail.

В этом ключе следует создать две переменные типа String: переменную MAIL_ROOT со значением C:MailRoot и переменную MAIL_CMD_LINE с необходимыми значениями командной строки, по-видимому, значения нужно брать из соответствующего раздела документации: http://www.xmailserver.org/Readme.html#command_line. (Я оставил данное значение пустым.)

На этом подготовка к запуску еще не закончена. Необходимо установить Microsoft Visual C++ 2005 Redistributable Package (x86) (http://www.microsoft.com/downloads/details.aspx?FamilyId=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=en). Ссылка для скачивания: http://download.microsoft.com/download/d/3/4/d342efa6-3266-4157-a2ec-5174867be706/vcredist_x86.exe.

Скачайте и запустите файл vcredist_x86.exe. Теперь можно приступить к запуску самого сервера. Так как XMail работает как сервис, запуском его в этом режиме мы сейчас и займемся. Открываем окно cmd.exe и переходим в каталог c:MailRootin:

cd c:MailRootin

Далее запускаем программу xmail.exe с ключом инсталляции в режиме сервиса с автоматическим запуском:

xmail.exe —install-auto

В ответ программа выдаст сообщение:

Далее нам остается запустить сам сервис программы:

net start «XMail Server»

В ответ мы должны получить сообщения:

The XMail Server service is starting.
The XMail Server service was started successfully.

Как вы уже поняли, XMail в чистом виде представляет собой сервисную службу и набор конфигурационных файлов. Для ее настройки, включая создание почтовых доменов и аккаунтов, необходимо либо вручную редактировать файлы конфигурации, либо воспользоваться одним из инструментов, так обильно представленных на стартовой странице сайта программы.

К сожалению, большая часть предложенных инструментов требовала настроенного веб-сервера с подключенными языками разработки как то: PHP, Perl и т. д. Поскольку настройка веб-сервера не входила в мои планы (да и далеко не на всяком почтовом сервере это необходимо), было решено воспользоваться утилитой XMail Manager, написанной на Visual Basic Майком Харрингтоном (Mike Harrington). Ссылка для скачивания http://www.encenia.com/filelib/xmailmgr/xmgr13.exe.

После скачивания и установки программы я так и не смог подключиться к серверу, так как программа требовала пароль для доступа. Несколько озадаченный, я скачал и установил другую программу – XMailAdmin, также написанную на VB (автор John Kielkopf). Результат оказался тот же. К счастью, на страничке программы (http://www.webifi.com/xmail) оказался FAQ, из которого стало ясно, что необходимо воспользоваться программой XMCrypt (находящейся теперь вместе с другими бинарниками в папке C:MailRootin) для шифрования желаемого пароля, формат команды:

XMCrypt {plain_password}

После чего выбранный логин и полученное значение необходимо добавить в файл ctrlaccounts.tab, лежащий в каталоге C:MailRoot. Логин и шифрованное значение пароля должны разделяться знаком табуляции, в конце строки должен стоять перевод строки. После чего перезапускаем соответствующую службу и пробуем подключиться к серверу. (Позже я обратил внимание, что XMail Manager поставляется с утилитой XMCrypt UIб, что по сути является графической оболочкой к вышеописанной программе XMCrypt. Как говорится: «Знать бы, где падать…»)

Программа XMail Manager при запуске выдала симпатичное окно, в котором предложила следующие пункты:

  • Domains View a list of all domains on your server, and browse mailboxesдомены, просмотр списка всех доменов на сервере и почтовых ящиков.
  • Mailbox Search Quickly locate mailboxes across domains using the mailbox searchбыстрое нахождение почтовых ящиков сквозь домены, используя поиск.
  • Сustom Domains Manage the custom domains located on your serverуправление выбранным доменом, расположенным на вашем сервере.
  • POP3 Connectors Manage the POP3 connectors that allow you to link one or more mail servers togetherуправление POP3-соединениями, позволяющие связывать один или более почтовые сервера вместе.
  • Undeliverable Messages Manage messages that could not be delivered by your serverнедоставленные сообщения. Управление сообщениями, которые не были доставлены. 

И в правом верхнем углу приютился пункт:

  • To change this server»s configuration Click Hereдля изменения конфигурации сервера кликните здесь.

Для создания доменов и почтовых ящиков нужно выбрать пункт Domains.

Для человека, умеющего работать правой кнопкой мыши, создать домен, завести почтовый аккаунт и т. п. не составит особого труда (см. рис. 7).

Редактирование свойств почтового ящика во вновь созданном домене

Рисунок 7. Редактирование свойств почтового ящика во вновь созданном домене

Отдельного внимания заслуживает настройка свойств самого сервера. Для этого выбираем пункт меню «Tools -> Server Configuration» или соответствующий пункт в окне приветствия (см. выше). В появившемся окне и производится большая часть настроек (см. рис. 8).

Окно приветствия XMail Manager (вверху слева) и вызванное окно XMail Server Configuration — инструмент задания основных свойств сервера (внизу справа)

Рисунок 8. Окно приветствия XMail Manager (вверху слева) и вызванное окно XMail Server Configuration — инструмент задания основных свойств сервера (внизу справа)

Что же касается другой утилиты управления XMailAdmin, то, учитывая тот факт, что она предоставляет довольно бедный интерфейс исключительно для манипулирования почтовыми доменами и учетными записями, при наличии нормально работающего XMail Manager, не имеет смысла тратить на нее время.

И по традиции тест на SMTP- и POP3-аутентификацию:

telnet 10.0.0.249 25

220 xmailserver.test <1231888146.1424@xmailserver.test>
[XMail 1.25 ESMTP Server] service ready;
Wed, 14 Jan 2009 02:09:06 +0300
ehlo xmailserver.test
250-xmailserver.test
250-VRFY
250-ETRN
250-8BITMIME
250-PIPELINING
250-AUTH LOGIN PLAIN CRAM-MD5
250-SIZE
250 STARTTLS

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

Что же касается самой настройки SMTP-аутентификации в XMail, то я потратил уйму времени, но так и не смог разобраться, как именно это делать. Либо полностью перекрывается возможность отправки сообщений, либо почта отправляется, минуя процесс аутентификации. Хотя в документации написано (и вывод команды EHLO подтверждает), что аутентификация поддерживается. Будем надеяться, что у истинных поклонников XMail это получится.

Протестируем возможности POP3-аутентификации. Как видно из рис. 9, помимо передачи открытым текстом XMail поддерживает возможность защищенной доставки сообщений при помощи TLS. А вот аутентификация производится только открытым текстом.

Возможности доставки в XMail

Рисунок 9. Возможности доставки в XMail

При установке на Windows Vista также не обошлось без неприятных сюрпризов. При попытке выполнить команду:

xmail.exe –-install-auto

чтобы установить программу как сервис, система выдала ошибку: «Отказано в доступе». Пришлось отключить функцию «Контроль учетных записей» User Access Control (UAC) в Windows Vista (см. во врезке «Как отключить «Контроль учетных записей» в Windows Vista»).

Программа для управления сервером XMail Manager напрочь отказалась устанавливаться. выдав ошибку: «One or more necessary components could not be loaded. Please reinstall the application» (см. рис. 10).

Cообщение об ошибке при запуске XMail Manager под Windows Vista

Рисунок 10. Cообщение об ошибке при запуске XMail Manager под Windows Vista

И хотя под Windows Vista заработал XMailAdmin, его функций недостаточно для полноценного управления почтовым сервером (cм. рис. 11).

Окно XMail Administrator, запущенное в Windows Vista

Рисунок 11. Окно XMail Administrator, запущенное в Windows Vista

Итоги по XMail

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

Хочется отметить наличие большого количество инструментария, написанного сторонними разработчиками.

Наличие также возможности защищенной передачи почты при помощи TLS можно отнести к дополнительным плюсам.

К сожалению, минусов у программы тоже хватает. Во-первых, затруднен процесс инсталляции. Вроде бы не нужно выполнять ничего особенного, всего лишь: чтение разрозненной документации (материалы с сайта, README, FAQ от другой программы), создание ключей реестра вручную, раскладывание частей дистрибутива по каталогам, скачивание и установка дополнительного ПО с Microsoft.com, инсталляция программы как сервиса, создание вручную аккаунта и шифрование пароля для доступа к управлению сервером… Но все вместе вызывает глубокое недоумение, так как отсутствует даже самая слабая попытка хоть как-то автоматизировать процесс установки, хотя бы написав элементарный скрипт. Понятно, конечно, программа бесплатная, «дареному коню в зубы не смотрят», но такое полное пренебрежение к нуждам конечного потребителя, честно говоря, не просто неприятно удивляет, но и вызывает подозрение по поводу бесперебойной работы программы и дополнительных модулей.

Еще одним минусом, на мой взгляд, является отсутствие поддержки протокола IMAP4, что называется «из коробки». А единственная ссылка, дающая надежду на использование стороннего продукта Courier IMAP with XMail на сайте http://www.xmailserver.org, оказалась нерабочей. Ну и отсутствие других методов аутентификации POP3, кроме Plain Text, также выглядит несколько удручающим.

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

Ну и, конечно, очень долгий запутанный процесс настройки сервера. Простейшая задача (к примеру, настройка аутентификации) может потребовать длительного времени для поиска решения.

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

Macallan Mail Solution

По традиции обратимся на сайт программы – http://pagesperso-orange.fr/macallan/MMS/index.html.

Там указано, что: «Macallan Mail Solution is a Freeware Mail Server (SMTP/POP3/IMAP/HTTP/NEWS/SSL/Tunnel) для Microsoft Windows XP и Microsoft Windows 2000, который работает как Microsoft Outlook Express или Microsoft Outlook. Он управляет локальной почтой, входящими электронными письмами из Интернета и исходящими электронными письмами на внешний почтовый адрес.

Механизм фильтрации против спамеров использует DNSBL (DNS Black List) и ваши собственные «черные» и «белые» списки, включает механизм проверки на вирусы, используя ваш антивирус. Может отсылать провайдеру автоматические сообщения об обнаруженных спаме и вирусах. Возможно использование SpamAssassin.

Поддержка почтовых клиентов по протоколу IMAP пока еще находится в стадии разработки. Нормально поддерживаются все POP3-клиенты.

Secure Socket Layer (SSL) and Transport Layer Security (TLS) поддерживаются при помощи библиотек OpenSSL .

Число локальных SMTP и локальных POP3 учетных записей сейчас ограничено до 128 (раньше было 32). Нет ограничения по времени использования. Если вам необходимо больше аккаунтов, пришлите автору e-mail.

Программа была протестирована на 1700 смоделированных конкурентных POP3-пользователях на Pentium P4 2.4 ГГц RAM 512 Мб, работающем под Windows NT или 2000 Server. Но более подходяще будет использовать от 100 до 400 конкурентных пользователей».

Комментарии от автора программы

«На Linux вы легко можете получить Open Source Mail Servers. Для Windows 2000 или Windows XP я не нашел по-настоящему свободного ПО.

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

Я также решил предложить этот продукт другим пользователям, чтобы они имели выбор между программным обеспечением под Linux или Windows».

Установка и эксплуатация Macallan Mail Solution

В разделе Downloads встречается строка: Installation procedure uses Microsoft Installer and Microsoft C Runtime 8.0.50727.42.

То есть, как и в случае с XMail Server, необходимо скачать и установить Microsoft C Runtime. Скачиваем и устанавливаем данную библиотеку. Необходимый дистрибутив уже выложен на домашней страничке Macallan Mail Solution (ссылка для скачивания http://pagesperso-orange.fr/macallan/SETUP/vcredist_x86.exe).

Далее необходимо просто скачать и установить саму программу почтового сервера (http://pagesperso-orange.fr/macallan/SETUP/MMSSetup.msi). Управление программой осуществляется через довольно оригинально оформленное окно.

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

Окно управления программой Macallan Mail Solution с предложением перезапустить сервисы после редактирования свойств аккаунта

Рисунок 12. Окно управления программой Macallan Mail Solution с предложением перезапустить сервисы после редактирования свойств аккаунта

Помимо поддержки POP3/SMTP программа имеет встроенный весьма функциональный веб-интерфейс для просмотра электронной почты. По умолчанию доступ осуществляется по порту 8080 (см. рис. 13). Поддержка нескольких доменов осуществляется только посредством domain aliasing, виртуальные домены также поддерживаются.

Веб-интерфейс программы Macallan Mail Solution. Окно смены пароля открыто поверх окна со списком отправленных сообщений

Рисунок 13. Веб-интерфейс программы Macallan Mail Solution. Окно смены пароля открыто поверх окна со списком отправленных сообщений

Ну и напоследок тест на авторизацию:

telnet 10.0.0.249 25

220 ..dyndns.org Macallan Mail Solution (4.9.07.001)
SMTP Server Ready
ehlo dyndns.org
250-mail Hello
250-AUTH CRAM-MD5 LOGIN PLAIN
250 HELP

Как видно из приведенного листинга, поддерживаются метод LOGIN, PLAIN (передача открытым текстом), а также шифрование пароля методом MD5.

К сожалению, мне так и не удалось настроить сервер на использование аутентификации, используя прилагаемую документацию. Вообще информационная поддержка крайне скудная, из описания доступен только Help (ссылка для скачивания http://pagesperso-orange.fr/macallan/SETUP/MMSHelp.zip).

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

Тест аутентификации по POP3 (см. рис. 14) показал отсутствие возможности защищенной передачи почты, но при этом выявил дополнительный метод аутентификации APOP.

Тест на возможность аутентификации по POP3 для почтового сервера Macallan

Рисунок 14. Тест на возможность аутентификации по POP3 для почтового сервера Macallan

Для установки и работы программы в операционной системе Windows Vista также потребовалось отключить «Контроль учетных записей» User Access Control (UAC) (см. врезку «Как отключить «Контроль учетных записей» в Windows Vista»). После этого особых проблем замечено не было.

Подведем итоги по Macallan Mail Solution

К положительным качествам программы можно отнести сравнительную простоту установки. Также несомненным достоинством является наличие встроенного веб-интерфейса. Дополнительным плюсом является возможность использования внешнего антивируса, например ClamAV. Недостатками программы является отсутствие хорошей подробной документации, поддержки виртуальных доменов и IMAP4.

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

Несколько слов об остальных программных продуктах

Помимо вышеописанных программ существует довольно большое число других продуктов, которые могут выполнять те или иные функции почтового сервера.

Некоторые из них, такие как Extra Systems Mail Server (http://www.esms.org.ua) или Office Mail Server (http://www.oms.classcom.by), не имеют графического интерфейса и настраиваются исключительно путем редактирования текстовых файлов, включая почтовые аккаунты, что крайне неудобно даже при не очень большом числе пользователей. (Что касается Extra Systems Mail Server, то, судя по всему, авторы программы давным-давно забросили свое детище, последнее обновление датируется 15 июля 2003 года.)

Некоторые продукты, такие как Courier Mail Server (последняя бесплатная версия 1.56, http://courierms.narod.ru), в работе ведут себя как открытые релеи, использовать которые небезопасно.

Другой программный продукт, например ArGoSoft Mail Server .NET Freeware, является свободным только для некоммерческого использования. Хотя в силу простоты настройки он бы подошел для служебных функций какой-нибудь маленькой некоммерческой организации.

Заключение

Напоследок несколько рекомендаций на тему, какой продукт лучше использовать и при каких условиях.

Если необходимо установить полноценный почтовый сервер, я бы выбрал hMailServer. Правда, пришлось бы потратить время на установку веб-интерфейса, например Apache + PHP + SquirrelMail. Но в целом это продукт, содержащий в себе поддержку всех необходимых сервисов, имеющий законченный вид и удобную консоль администрирования.

Если необходим почтовый сервер только для служебных целей, например, для получения по почте отчетов от различного ПО, я бы остановился на Macallan Mail Solution. Простой в установке, неприхотливый, это то, что нужно для вспомогательной службы. А вот в качестве корпоративного почтового сервера его можно рекомендовать только для очень небольших компаний (например, для региональных филиалов крупных фирм).

Что же касается использования XMail, я бы предложил его для случаев, когда системному администратору нечем заняться в рабочее время (например, в случае, когда все остальное настроено и «работает как часы»). В этом случае в лице XMail он обретет некий продукт, который некоторое время не позволит ему скучать, но в целом все-таки сможет обеспечить хотя бы минимальный функционал почтового сервера. Хотя в этом случае разумнее будет заняться изучением какой-нибудь операционной системы семейства UNIX и выбрать для почтового сервера соответствующее проверенное решение, например Postfiх + Courier-IMAP + PostfixAdmin, ну и так далее.

Приложение

Организация нескольких почтовых доменов на одном сервере

Существует два способа организации нескольких почтовых доменов на одном сервере.

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

Другой способ заключается в создании так называемых псевдонимов уже имеющегося домена (domain aliases). В этом случае фактически создается и используется один полноценный почтовый домен с одной почтовой базой пользователей, а мультидоменная поддержка имитируется за счет использования нескольких имен одного и того же домена. Минусом в этом случае является невозможность создания в разных доменах учетных записей с одинаковыми именами.

Как отключить «Контроль учетных записей» в Windows Vista

Чтобы отключить в Windows Vista «Контроль учетных записей» (User Access Control (UAC), необходимо сделать следующее:

  • Открыть панель управления (Control Panel) и выбрать опцию «Классический вид» (Classic View).
  • Открыть приложение «Учетные записи пользователей» (User Accounts).
  • Нажать ссылку «Включение или отключение «Контроль учетных записей (UAC)» (Turn User Account Control on or off) и подтвердить продолжение операции в диалоговом окне UAC.
  • Нажать OK и перезагрузить систему.

Facebook

Twitter

Мой мир

Вконтакте

Одноклассники

Google+

Почтовый сервер – это устройство, при помощи которого происходит доставка электронных сообщений от отправителя к получателю. Собственно, это и следует из его названия. В данной статье рассмотрим, как происходит установка и базовая настройка почтового сервера на VPS с операционной системой семейства Windows Server, а также на виртуальном сервере, работающем на Ubuntu 20.04.

Установка сервера SMTP на Windows Server

На серверах, работающих под управлением операционных систем Windows, для передачи почтовых сообщений часто используется протокол SMTP. В Windows Server служба SMTP является одним из компонентов операционной системы.

Для корректной отправки почтового сообщения от имени домена, к которому будет привязан сервер SMTP, нам необходимо иметь доменное имя. При этом в настройках домена должна быть указана A-запись, содержащая IP-адрес VPS. В нашем примере мы будем использовать имя домена my-domain.host.

Установку почтового сервера нужно будет начать именно с добавления необходимых компонентов. Для этого запустите Server Manager, перейдите ManageAdd Roles and Features.

Добавление ролей и компонентов - Установка и настройка почтового сервера

В открывшемся окне нажмите Next.

Мастер добавления ролей и компонентов - Установка и настройка почтового сервера

Далее выберите опцию Role-based or feature-based installation, после чего нажмите Next.

Выбор установки ролей и компонентов

В следующем окне укажите сервер, на который будет производиться установка новых компонентов, либо просто нажмите Next, если в вашем пуле серверов одна-единственная запись.

Выбор сервера

На следующем шаге активируйте строку Web Server (IIS), после чего нажмите Add Features.

Добавление компонент веб-сервера (IIS)

Далее нажмите Next.

Выбор установки веб-сервера (IIS)

После чего отметьте строку SMTP Server и нажмите Add Features.

Добавление компонентов сервера SMTP

И нажмите Next.

Выбор установки сервера SMTP

Далее ещё раз нажмите Next.

Роли веб-сервера (IIS)

В следующем окне снова нажмите Next.

Роли веб-сервера (IIS)

Для запуска установки выбранных компонентов нажмите Install.

Установка выбранных ролей и компонентов - Установка и настройка почтового сервера

Настройка сервера SMTP

На следующем этапе необходимо будет настроить сервер SMTP. Для чего в Server Manager перейдите ToolsInternet Information Services (IIS) 6.0 Manager.

Запуск диспетчера IIS - Установка и настройка почтового сервера

В открывшемся окне менеджера IIS раскройте ветку вашего сервера и на строке SMTP Virtual Server нажмите правую кнопку мыши, после чего перейдите в Properties.

Свойства сервера SMTP

Далее в строке IP address: необходимо выбрать IP-адрес вашего сервера и активировать опцию Enable logging.

Указание IP-адреса включение ведения журналов

Во вкладке Access нажмите кнопку Authentication...

Вкладка Доступ

В открывшемся окне активируйте опцию Anonymous access. Активация данной опции нужна, чтобы пользователи и приложения смогли бы использовать сервер SMTP анонимно. Позже можно будет настроить более безопасную аутентификацию, пока же нажмите OK.

Включение анонимного доступа

Далее в разделе Connection control нажмите кнопку Connection...

Настройка управления подключением

В окне Connection установите переключатель на Only the list below и при помощи кнопки Add... добавьте IP-адрес вашего VPS. После чего нажмите OK.

Разрешение доступа для IP-адреса вашего VPS

Точно такую же настройку необходимо проделать в разделе Relay restrictions. Для чего нажмите кнопку Relay... и добавьте IP-адрес вашего сервера установив переключатель в Only the list below.

Настройка ограничений ретрансляции

После чего перейдите во вкладку Delivery и нажмите Advanced...

Настройка доставки

Здесь в строку Fully-qualified domain name: необходимо внести имя вашего домена, в нашем примере это – my-domain.host.

Дополнительная настройка доставки

Для того, чтобы проверить корректность данной настройки, нажмите кнопку Check DNS.

Проверка корректности имени домена - Установка и настройка почтового сервера

Далее сохраните все внесённые в настройки изменения при помощи кнопки OK.

Также необходимо указать корректное имя домена в ветке Domains.

Редактирование имени домена - Установка и настройка почтового сервера

На следующем шаге нужно активировать функцию автоматического запуска сервера SMTP. Для этого запустите командную строку PowerShell и выполните следующие команды для запуска службы:

set-service smtpsvc -StartupType Automatic
start-service smtpsvc

Чтобы убедиться, что служба запущена, необходимо выполнить ещё одну команду:

get-service smtpsvc

Вывод данной команды должен выглядеть примерно следующим образом:

Вывод команды get-service smtpsvc - Установка и настройка почтового сервера

Теперь там же, в командной строке PowerShell, при помощи следующей команды отправьте сообщение на свою электронную почту:

Send-MailMessage -SmtpServer my-domain.host -To your@email.address -From mail@my-domain.host -Subject "Message Subject" -Body "Message Body"

Здесь:

  • my-domain.host – имя домена, с которого будет производиться отправка сообщения;
  • your@email.address – адрес электронной почты, на который будет отправлено сообщение;
  • mail@my-domain.host – этот электронный адрес будет указан в сообщении как адрес отправителя;
  • Message Subject – тема письма;
  • Message Body – тело письма.

После чего проверьте свою почту, на которую должно прийти сообщение от вашего почтового сервера.

Установка и настройка Postfix на Ubuntu 20.04

Для операционной системы Ubuntu существует довольно популярный почтовый сервер – Postfix. Для установки Postfix мы будем использовать виртуальный сервер, работающий на Ubuntu 20.04. При этом на VPS должны быть произведены работы по первоначальной настройке, описанные в соответствующей статье нашего справочника.

Также, для работы Postfix нужен домен с привязанной A-записью, которой является IP-адрес вашего виртуального сервера.

Плюс ко всему, необходимо соотнести имя домена с именем сервера и его IP-адресом. Для этого запустите следующую команду:

$ sudo hostnamectl set-hostname ubuntu-server

Здесь, ubuntu-server – имя нашего сервера, вместо которого вы можете использовать своё.

Теперь при помощи текстового редактора откройте файл /etc/hosts:

$ sudo nano /etc/hosts

В данный файл добавьте строку:

XXX.XXX.XXX.XXX my-domain.host ubuntu-server

В данном случае:

  • XXX.XXX.XXX.XXX – IP-адрес вашего сервера;
  • my-domain.host – имя вашего домена;
  • ubuntu-server – имя вашего сервера.

Теперь запустите установку Postfix и почтового пакета mailutils:

$ sudo apt install postfix mailutils

В процессе установки система попросит вас выбрать тип конфигурации. Необходимо указать Internet Site:

Выбор типа конфигурации - Установка и настройка почтового сервера

Также установщик попросит согласиться с именем домена, в отношении которого производится настройка почтового сервера. В нашем случае это будет my-domain.host.

Подтверждение имени домена при установке Postfix

По окончании установки можно попробовать с нашего почтового сервера отправить тестовое сообщение. Команда для отправки сообщения выглядит следующим образом:

$ echo "Message Body" | mail -s "Message Subject" your@email.address

В данной команде:

  • Message Body – тело письма;
  • Message Subject – тема письма;
  • your@email.address – адрес электронной почты, на который будет отправлено сообщение.

Проверьте свой почтовый ящик (в нашем примере это – your@email.address), на который должно прийти отправленное из Postfix сообщение.

Вы можете установить SMTP-сервер с помощью инструментов, встроенных во все версии Windows Server. Такой SMTP-сервер в организации может действовать как почтовый ретранслятор, который должен получать и пересылать SMTP-сообщения через себя с различных устройств (например, отправителей, сканеров, устройств контроля доступа и т.д.) и приложений (веб-приложения, SQL Reporting Services, SharePoint), который должен иметь возможность отправлять почту через SMTP-сервер. Такой сервер пересылки может отправлять сообщения на полный сервер Exchange или в общедоступные почтовые службы Интернета, такие как Gmail, Mail.ru, Office 365 и т.д. (В конце концов, не всегда рекомендуется развертывать полную службу внутренней почтовой инфраструктуры на основе Microsoft Exchange Server или других почтовых служб).

В этой статье мы покажем вам, как установить, настроить и протестировать работу SMTP-сервера в Windows Server 2012 R2, 2016 и 2019, который будет работать как почтовый ретранслятор. Такой SMTP-сервер не хранит никаких почтовых сообщений и на нем нет почтовых ящиков, он может только отправлять или пересылать почту.

SMTP-сервер – это один из компонентов Windows Server, который можно установить с помощью диспетчера сервера. Для этого откройте консоль панели мониторинга диспетчера серверов (servermanager.exe), перейдите в режим добавления ролей и компонентов и при выборе функций установите флажок рядом с записью SMTP-сервера. Для управления службой SMTP вам необходимо установить консоли управления, которые поставляются с ролью веб-сервера IIS (вам будет предложено установить Инструменты управления IIS).

smtp-сервер на Windows Server 2012 r2

Оставьте все параметры, предлагаемые для роли веб-сервера (IIS), и начните установку.

Компоненты веб-сервера IIS

Кроме того, вы можете установить компонент SMTP-сервера с помощью одной команды PowerShell:

Install-WindowsFeature smtp-server

После завершения установки компонента может потребоваться перезагрузка системы.

Настройка SMTP сервера на Windows Server

SMTP-сервером управляет консоль управления Internet Information Services (IIS) Manager 6. Вы можете открыть эту консоль через Server Manager: Инструменты-> Internet Information Services (IIS) 6.0 Manager или с помощью команды inetmgr6.exe.

Консоль управления Internet Information Services 6 (IIS

В консоли диспетчера IIS 6 разверните ветку с именем сервера, щелкните правой кнопкой мыши виртуальный сервер SMTP и откройте его свойства.

Свойства SMTP-сервера

На вкладке «Общие» при необходимости выберите IP-адрес, на который должен отвечать SMTP-сервер (если у сервера несколько IP-адресов), и включите параметр «Включить ведение журнала» (для сохранения информации обо всех полученных сообщениях).

Адрес SMTP-сервера

Затем перейдите на вкладку «Вход.

Настройки входа в SMTP

Здесь нажмите кнопку «Аутентификация» и убедитесь, что разрешен анонимный доступ).

SMTP-аутентификация - анонимный доступ

Вернитесь на вкладку «Вход» и нажмите кнопку «Вход». Здесь вы можете указать IP-адреса устройств, которым разрешено отправлять почту через наш SMTP-ретранслятор. Вы должны выбрать вариант «Только список ниже» и указать список IP-адресов, не забывая о себе (127.0.0.1).

Аналогичным образом настройте список разрешенных IP-адресов в настройках Relay (нажмите соответствующую кнопку). В этом разделе указывается, на какие IP-адреса (или подсети) вы можете отправлять почту через свой SMTP-сервер.

Ограничения на отправку через SMTP-сервер по IP-адресу

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

Перейдите на вкладку Сообщения. Здесь вы указываете адрес электронной почты, на который будут отправляться копии всех отчетов о недоставке (Отправить копию отчета о недоставке на адрес :). Также здесь вы можете указать ограничения на максимальный размер сообщения в КБ и количество получателей (Ограничить количество получателей на одно сообщение).

Ограничения SMTP-сообщений

Перейдите во вкладку Доставка:

Настройки вариантов доставки

Затем нажмите кнопку «Безопасность исходящего трафика». Таким образом, вам необходимо войти на почтовый сервер, на который ваш SMTP-сервер будет ретранслировать всю почту. Например, если вся почта будет отправляться на почтовый сервер Gmail и отправляться с него получателям, необходимо выбрать тип аутентификации Обычная аутентификация, указав данные для доступа к почтовому ящику в службе Gmail в качестве пользователя и пароля (в Настройки аккаунта гугл, нужно разрешить отправку через smtp сервер gmail).

Параметры аутентификации во внешних системах

Затем нажмите кнопку «Дополнительно.

Ранняя доставка

Здесь указывается полное доменное имя вашего SMTP-сервера. Нажмите кнопку Проверить DNS, чтобы проверить правильность записи DNS.

Доменное имя действительно

Если серверу необходимо пересылать почту на внешний smtp-сервер, его имя должно быть указано в поле Smart host (например, smtp.gmail.com или smtp.office365.com).

Некоторые внешние почтовые серверы принимают почту только при использовании безопасного SMTP-соединения с использованием шифрования TLS (используется TCP-порт 587). Это настраивается в Доставке-> Безопасность исходящего трафика и Исходящие соединения. Проверьте документацию вашего почтового провайдера.

Сохраните настройки SMTP-сервера и перезапустите виртуальный SMTP-сервер, чтобы изменения вступили в силу.

Примечание.

  1. Настройки DNS имеют решающее значение с точки зрения эффективности почтовой системы. Если ваш SMTP-сервер не может правильно разрешить DNS-имена доменов, на которые он пытается отправить электронную почту, доставка не удастся.
  2. Если ваш сервер сам будет отправлять почту в другие домены, важно, чтобы для вашего адреса была сформирована правильная запись PTR для разрешения обратных DNS-запросов. Запись PTR для белого IP-адреса должна указывать на полное доменное имя. В противном случае большинство внешних SMTP-серверов не будут принимать вашу почту, считая ваш сервер спамом.

Автозапуск службы SMTPSVC

Осталось настроить автоматический запуск службы SMTP-сервера. Самый быстрый способ сделать это – из командной строки PowerShell:

set-service smtpsvc -StartupType Automatic

Запустим сервис:

start-service smtpsvc

Проверяем, что служба SMTPSVC запущена :

get-service smtpsvc

Название штата DisplayName
——   —-               ————
Запуск простого протокола передачи почты (SMTP) smtpsvc

set-service smtpsvc - управляет службой SMTP

Проверка  работы SMTP сервера на Windows Server

Ну и последнее, что осталось сделать, это проверить работу созданного SMTP-сервера. Самый простой способ сделать это – создать на рабочем столе текстовый файл smtp-test-email.txt и скопировать в него следующий текст, заменив имена отправителя и получателя своими собственными.

От: server@localdomain.com
Кому: admin@localdomain.com
Тема: тест по электронной почте
Это тестовое письмо

Тестовая отправка сообщений smtp

Скопируйте файл smtp-test-email.txt в каталог C: inetpub mailroot Pickup. Сервер SMTP следит за появлением файлов в этом каталоге и, если файл найден, он прочитает его содержимое и попытается отправить электронное письмо с указанной темой и текстом получателю, указанному в разделе Кому:.

Проверьте почтовый ящик получателя на наличие такого письма.

Контрольное письмо

Совет. Вы также можете проверить работу SMTP-сервера из командной строки telnet, сценария vbs или PowerShell:

From: server@localdomain.com
To: admin@localdomain.com
Subject: Email test
This is the test email

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

Также убедитесь, что TCP-порт 25 не заблокирован на вашем SMTP-сервере при удаленном подключении (через локальный брандмауэр, антивирус или брандмауэр). Проще всего это сделать с компьютера под управлением Windows, IP-адрес которого добавлен к разрешенным. Проверить доступность порта можно с помощью командлета Test-NetConnection:

Send-MailMessage -SMTPServer localhost -To admin@localdomain.com -From server@localdomain.com -Subject "Email test" -Body "This is the test email sent via PowerShell"

Если порт 25 заблокирован, проверьте настройки брандмауэра Windows, антивируса и аппаратного брандмауэра.

Итак, вы настроили почтовый ретранслятор SMTP на Windows Server 2016/2012 R2 и протестировали отправку электронной почты через него.

Источник изображения: winitpro.ru

Содержание

  • 1 Введение
  • 2 Установка почтовых служб.
  • 3 Настройка сервера и почтовых ящиков.
  • 4 Проверяем работу почтовых служб.

Введение

Частенько возникает необходимость настроить почтовый обмен в пределах небольшой сети, компов эдак на 10…100…1000. Стоп! Небольшой! Пока остановимся на двух. Касательно нашей маленькой тестовой сети. Итак, задача – поднять два почтовых ящика, наладить обмен почтовыми сообщениями между ними не привлекая никакие дополнительные программные продукты (особенно коммерческие).

Установка почтовых служб.

Открываем мастер добавления компонентов Windows, нам нужно установить простые почтовые службы, для этого нажимаем “Пуск”, переходим на панель управления и в оснастку “Установка или удаление программ”.

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

Дожидаемся установки компонентов.

Настройка сервера и почтовых ящиков.

Для того, чтобы развернуть сервис обмена электронной почты и настроить почтовые ящики нам нужно запустить оснастку POP3 Service, которая появилась, если мы правильно выполнили предыдущие пункты.

Добавляем новый домен почты, назову его mail.serv.main.com (полное имя).

А теперь добавляем новые почтовые ящики. Команда проста: “Add Mailbox”. Создадим почтовый ящик для user с паролем **** и для admin с паролем ****.

Разумеется, вместо звёздочек будут ваши пароли. Но в рамках нашей задачи используем простое “1234”. Что явно не рекомендовано для боевых серверов.

Проверяем работу почтовых служб.

Для простой проверки посредством клиента telnet мы будем подключаться к нашему серверу на 25-ый порт (для SMTP) и на 110-ый порт (для POP3).

telnet serv.main.com 25

Что вводим мы?

HELO serv.main.com

MAIL FROM:<user@mail.serv.main.com>

RCPT TO:<admin@mail.serv.main.com>

DATA

текст сообщения

.

QUIT

Если вы ошибётесь в наботе MAIL FROM: или RCPT TO: то стирать бэкспейсом бесполезно, команда будет отвергнута. Так что потрудитесь набрать без ошибок. :)

Конец сообщения определяется просто точкой.

А теперь прочитаем это письмо, авторизовавшись под admin.

Подключаемся к POP3-серверу.

telnet serv.main.com 110

Что вводим мы?

USER admin@mail.serv.main.com

PASS 1234

LIST

RETR 1

DELE 1

QUIT

Описания протоколов будут в отдельных статьях, так что пока коротко напишу, что это:

  1. Авторизация
  2. Список писем
  3. Получение письма
  4. Удаление письма
  5. Выход

А вот статейка про то, как настроить почтовый клиент outlook express для работы с нашим сервером.

Пока всё! Пробуем, комментируем! Удачи!

Почтовый сервер, как следует из названия, — это устройство, которое отвечает за корректную доставку электронных писем от отправителя получателю. Так, например, когда вы отправляете почту через Gmail, вероятнее всего вы используете почтовый сервер Google. 

Почтовый клиент — это программа, которая используется непосредственно для работы с почтой: чтения, отправки и хранения. Примеры таких клиентов — Microsoft Outlook, Thunderbird и так далее. 

Как Использовать SMTP Сервер Google (1)

Протоколы для приёма и отправки почты

SMTP

Сервер исходящей почты использует протокол SMTP — simple mail transfer protocol — дословно переводится как «простой протокол передачи почты». Главная задача протокола — быть ретранслятором между отправителем и получателем. Она заключается в выполнении каждой из двух ключевых функций: проверять конфигурацию и разрешать отправку устройству-отправителю, отправлять сообщение и получать код ответа. 

SMTP-сервер использует 25 и 465 порты для отправки почты с шифрованием и без шифрования соответственно. 

POP3

POP3 (Post Office Protocol) — протокол для получения электронной почты. Он позволяет установить соединение с сервером и загрузить письмо на локальное устройство, чтобы отобразить его в почтовом клиенте. При этом на удалённом сервере информация не сохраняется (однако существует опция создания дублей).

Этот протокол использует 110 и 995 порты (без шифрования и SSL/TLS). 

IMAP

IMAP (Internet Message Access Protocol) — протокол с теми же задачами и функциями, что и POP3. Ключевое отличие в том, что IMAP позволяет работать с почтой непосредственно на сервере, без дублирования почты на локальное устройство. 

Используются порты 143 и 993 (без шифрования и SSL/TLS).

Зачем нужен собственный почтовый сервер

Чаще всего ответ на этот вопрос: «если настроить свой сервер, можно использовать свой домен в адресе электронной почты». Это верный, однако не совсем точный ответ. 

Настроить почту на своём домене вы сможете и без создания собственного сервера. Такую услугу, например, предоставляют VK Group, Яндекс.Почта и Google. Вам нужно только купить домен и привязать его к серверам компании в личном кабинете. 

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

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

При использовании собственного почтового сервера вам придётся не только следить за лимитами и квотами, но также обеспечивать резервное копирование, избегать попадания в спам-листы, а также настраивать права доступа, если почтой пользуются несколько человек. 

Создание почтового сервера

В этой статье мы рассмотрим способы создания собственного почтового сервера. Для наших целей отлично подойдут облачные серверы Timeweb — мы выберем себе устройство с ОС Ubuntu версии 20.04. 

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

Подготовка сервера

Первый шаг — переход в режим суперпользователя root:

sudo su

Перед установкой необходимого программного обеспечения обновим пакеты на сервере:

apt update && apt upgrade

Затем необходимо проверить, соответствует ли имя сервера домену вашей электронной почты:

hostname

Если в ответе вы видите что-то отличное от желаемого имени сервера, используйте команду hostnamectl:

hostnamectl set-hostname mail.hostname.ru,

где mail.hostname.ru — имя хоста.  

Далее для корректной работы всех планировщиков и непосредственно почты настраиваем временную зону — устанавливаем пакет для синхронизации времени chrony:

apt install chrony
timedatectl set-timezone Europe/Moscow

Если ваша временная зона отличается от МСК, выберите подходящую, воспользовавшись командой timedatectl list-timezones.

Запускаем chrony:

systemctl enable chrony

Теперь нужно открыть порты, необходимые для работы почтового сервера, с помощью утилиты iptables. Нам нужен следующий набор портов: 

  1. 25, 465 — SMTP
  2. 110, 995 — POP3
  3. 143, 993 — IMAP
  4. 80, 443 — HTTP 

В списке выше первыми идут порты для стандартных соединений, а вторыми — для защищённых. Воспользуемся утилитой iptables:

iptables -I INPUT 1 -p tcp --match multiport --dports 25,110,143,465,587,993,995,80,443 -j ACCEPT

Правила iptables сохраняются в течение одного сеанса, то есть после перезагрузки устройства они сбросятся. Чтобы этого избежать, используем пакет iptables-persistent:

netfilter-persistent save

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

Установка и настройка Postfix

Postfix — агент передачи почты (mail transfer agent) с открытым исходным кодом. Он имеет модульную архитектуру, которая не требует работы из-под суперпользователя root. Установим приложение postfix и postfix-mysql для работы с базой данных:

apt install postfix postfix-mysql

В диалоговом окне в процессе установки выбираем Internet Site. Это предполагает, что у вас есть доступ к редактированию DNS-записей и вы можете указать FQDN — полное имя домена. В следующем окне оставляем имя сервера и переходим далее. 

Image3

После установки создаём новую учётную запись в системе, из-под этого пользователя будем работать с почтой. С помощью утилиты groupadd создаём группу vmail:

addgroup -gid 1080 vmail

Далее создадим пользователя vmail и назначим ему домашнюю директорию /home/mail:

 adduser --home /home/mail -gid 1080 -uid 1080 vmail

… где 1080 — guid группы и uid пользователя. Если он занят, вы можете заменить его на любой другой. 

Проверим, что права на директорию /home/mail принадлежат пользователю vmail и группе vmail:

ll /home

Конфигурация почтового сервера

После создания пользователя можно приступить к настройке postfix. Для этого открываем файл /etc/postfix/main.cf в любом текстовом редакторе:

nano /etc/postfix/main.cf

… и редактируем строки:

mydestination = localhost.$mydomain, localhost, localhost.localdomain # Для каких доменов принимаем почту

Inet_protocols = ipv4 # протокол работы postfix

smtpd_tls_cert_file = /etc/ssl/mail/public.pem # путь до публичного сертификата.
smtpd_tls_key_file = /etc/ssl/mail/private.key # путь до приватного сертификата.

Далее в этот же файл дописываем дополнительные опции, которые необходимы для корректной работы Postfix:

virtual_mailbox_base = /home/mail # где будем хранить почту
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cf # путь к псевдонимам 
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql_virtual_domains_maps.cf # формат хранения доменов 
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf # формат хранения почтовых ящиков
virtual_minimum_uid = 1080 # минимальный идентификатор виртуального пользователя
virtual_uid_maps = static:1080 # идентификатор основного пользователя, от которого создаются сообщения
virtual_gid_maps = static:1080 # идентификатор группы, от пользователей которой создаются сообщения
virtual_transport = dovecot # регистрируем доставщик сообщений

smtpd_sasl_auth_enable = yes # разрешаем безопасную аутентификацию
smtpd_sasl_exceptions_networks = $mynetworks # не используем шифрование в сетях $mynetworks
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_type = dovecot # тип аутентификации
smtpd_sasl_path = private/auth # где лежат временные файлы 

smtp_use_tls = yes # шифровать соединение при подключении к другому SMTP-серверу
smtpd_use_tls = yes # поддерживаем подключение TLS
smtpd_tls_auth_only = yes # и используем только TLS
smtpd_helo_required = yes # начинаем сессию с HELO (или EHLO)

Теперь создадим файлы, которые указывали в этой конфигурации. Сперва укажем, где Postfix должен брать псевдонимы. Открываем файл /etc/postfix/mysql_virtual_alias_maps.cf:

nano mysql_virtual_alias_maps.cf

… и записываем в него следующие строки:

user = postfix
password = postfixPa$$w0rd
hosts = localhost
dbname = postfix
query = SELECT goto FROM alias WHERE address='%s' AND active = '1'

Здесь dbname, user и password — база данных, имя пользователя и пароль для подключения к MySQL (настроим позже), query — шаблон запроса.

Делаем аналогичные действия с файлом для получения данных доменов:

nano /etc/postfix/mysql_virtual_domains_maps.cf

Записываем:

user = postfix
password = postfixPa$$w0rd
hosts = localhost
dbname = postfix
query = SELECT domain FROM domain WHERE domain='%u'

Следом — файл с почтовыми ящиками:

nano /etc/postfix/mysql_virtual_mailbox_maps.cf

Записываем:

user = postfix
password = postfixPa$$w0rd
hosts = localhost
dbname = postfix
query = SELECT CONCAT(domain,'/',maildir) FROM mailbox WHERE username='%s' AND active = '1'

На этом этапе мы можем перейти к настройке файла master.cf:

nano /etc/postfix/master.cf

И записываем туда следующие настройки:

submission   inet  n  -  n  -  -  smtpd
  -o smtpd_tls_security_level=may
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_sasl_type=dovecot
  -o smtpd_sasl_path=/var/spool/postfix/private/auth
  -o smtpd_sasl_security_options=noanonymous
  -o smtpd_sasl_local_domain=$myhostname

smtps   inet  n  -  n  -  -  smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject

dovecot   unix  -  n  n  -  -  pipe
  flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -d ${recipient}

Генерация сертификатов безопасности

Для корректной работы почты нужно сгенерировать сертификаты безопасности с помощью утилиты openssl. В первую очередь создаём директорию, в которой будем хранить сертификаты (указывали в файле main.cf):

mkdir -p /etc/ssl/mail
openssl req -new -x509 -days 1000 -nodes -out /etc/ssl/mail/public.pem -keyout /etc/ssl/mail/private.key -subj "/C=RU/ST=SPb/L=SPb/O=Global Security/OU=IT Department/CN=mail.devnullhost.ru"

Запускаем и перезагружаем postfix:

systemctl enable postfix && systemctl restart postfix

Установка и настройка Dovecot 

Dovecot — IMAP и POP3 сервер с открытым исходным кодом. Установим его и модули для работы с БД:

apt install dovecot-imapd dovecot-pop3d dovecot-mysql

Настраиваем способ хранения сообщений:

nano /etc/dovecot/conf.d/10-mail.conf

Записываем в файл каталог для хранения почты. Будем использовать иерархию домен → пользователь:

mail_location = maildir:/home/mail/%d/%u/

В этом же файле настраиваем метод аутентификации:

service auth {
  unix_listener /var/spool/postfix/private/auth {
    mode = 0666
    user = postfix
    group = postfix
  }
  unix_listener auth-userdb {
    mode = 0600
    user = vmail
    group = vmail
  }
}

service stats {
    unix_listener stats-reader {
        user = vmail
        group = vmail
        mode = 0660
    }
    unix_listener stats-writer {
        user = vmail
        group = vmail
        mode = 0660
    }
}

Настраиваем аутентификацию в Dovecot:

nano /etc/dovecot/conf.d/10-auth.conf

Заменяем строку !include auth-system.conf.ext на !include auth-sql.conf.ext, указывая, что использовать нужно sql-авторизацию.

Редактируем настройки шифрования:

nano /etc/dovecot/conf.d/10-ssl.conf

В файле указываем:

ssl = required
ssl_cert = </etc/ssl/mail/public.pem
ssl_key = </etc/ssl/mail/private.key

При первом подключении пользователей создаём каталоги в домашней директории:

nano /etc/dovecot/conf.d/15-lda.conf

Добавляем строку:

lda_mailbox_autocreate = yes

Настраиваем подключение к базе данных:

nano /etc/dovecot/dovecot-sql.conf.ext

И добавим в него:

driver = mysql
connect = host=localhost dbname=postfix user=postfix password=postfixPa$$w0rd
default_pass_scheme = MD5-CRYPT
password_query = SELECT password FROM mailbox WHERE username = '%u'
user_query = SELECT maildir, 1080 AS uid, 1080 AS gid FROM mailbox WHERE username = '%u'
user_query = SELECT CONCAT('/home/mail/',LCASE(`domain`),'/',LCASE(`maildir`)), 1080 AS uid, 1080 AS gid FROM mailbox WHERE username = '%u'

Настраиваем интерфейс Dovecot:

nano /etc/dovecot/dovecot.conf

Указываем:

listen = *

Запускаем и перезагружаем Dovecot:

systemctl enable dovecot && systemctl restart dovecot

Установка и настройка PostfixAdmin

Для корректной работы PostfixAdmin нужен настроенный веб-сервер, PHP и база данных mariadb (стеки LAMP или LEMP). В этом руководстве пропустим конфигурацию веб-сервера и приступим непосредственно к установке PostfixAdmin.

Устанавливаем необходимые расширения php:

apt install php-mysql php-mbstring php-imap

Скачиваем PostfixAdmin в корневой каталог веб-сервера с помощью утилиты wget:

wget https://sourceforge.net/projects/postfixadmin/files/latest/download -O postfixadmin.tar.gz

Создаём каталог postfixadmin и помещаем туда содержимое архива:

mkdir /var/www/html/postfixadmin && tar -C /var/www/html/postfixadmin -xvf postfixadmin.tar.gz --strip-components 1

И создаём каталог для хранения кэша шаблонов:

mkdir /var/www/html/postfixadmin/templates_c

Ставим на весь каталог права веб-сервера:

chown -R www-data:www-data /var/www/html/postfixadmin

База данных

Создаём базу данных и пользователя:

mysql -u root
> CREATE DATABASE postfix DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
> GRANT ALL ON postfix.* TO 'postfix'@'localhost' IDENTIFIED BY 'postfixPa$$w0rd';
> exit;

В локальном файле конфигурации postfix добавим конфигурацию базы данных: 

nano /var/www/html/postfixadmin/config.local.php

Содержимое файла:

<?php
$CONF['configured'] = true;
$CONF['default_language'] = 'ru';
$CONF['database_password'] = 'postfixPa$$w0rd';
$CONF['emailcheck_resolve_domain']='NO';

Заходим на страницу установщика postfixadmin в браузере — /postfixadmin/public/setup.php. Здесь нам будет предложено сгенерировать хэш для авторизации.

Image1

Вводим пароль и нажимаем на кнопку. Под формой увидим сообщение, в котором содержится хэш, его мы должны вставить в файл /var/www/html/postfixadmin/config.local.php:

nano /var/www/html/postfixadmin/config.local.php

Image5

Обновляем страницу /postfixadmin/public/setup.php и входим на страницу с паролем, который вводили для генерации хэша. Если сервер настроен верно, в результате мы увидим страницу с проверками конфигурации. 

В самом низу расположена форма, в ней создаём админа. После успешного создания переходим на страницу /postfixadmin/public/login.php и авторизуемся в аккаунт, который только что создали.

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

Image2

Создаём почтовый ящик в PostfixAdmin

В браузере переходим по адресу /postfixadmin/public/. В верхнем меню выбираем «Список доменов → Новый домен». 

Далее в разделе «Обзор → создать ящик» вводим данные для тестового почтового ящика. 

Image4

Теперь вы можете проверить подключение с помощью почтовых клиентов. Параметры для подключения:

  1. Сервер — имя вашего сервера
  2. IMAP — 143 STARTTLS
  3. POP3 — 110 STARTTLS
  4. SMTP — 25 STARTTLS
  5. Логин и пароль — данные, которые вы указали при создании ящика

Заключение

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

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

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

Понравилась статья? Поделить с друзьями:
  • Логический диск в windows 10 что это
  • Локальная политика безопасности windows server 2003
  • Локальный порт параметр задан неверно windows 10
  • Логитек вингман формула форс гп скачать драйвер для windows 10
  • Локальный порт отказано в доступе принтер windows 10