Почтовый сервер – это устройство, при помощи которого происходит доставка электронных сообщений от отправителя к получателю. Собственно, это и следует из его названия. В данной статье рассмотрим, как происходит установка и базовая настройка почтового сервера на VPS с операционной системой семейства Windows Server, а также на виртуальном сервере, работающем на Ubuntu 20.04.
Установка сервера SMTP на Windows Server
На серверах, работающих под управлением операционных систем Windows, для передачи почтовых сообщений часто используется протокол SMTP. В Windows Server служба SMTP является одним из компонентов операционной системы.
Для корректной отправки почтового сообщения от имени домена, к которому будет привязан сервер SMTP, нам необходимо иметь доменное имя. При этом в настройках домена должна быть указана A-запись, содержащая IP-адрес VPS. В нашем примере мы будем использовать имя домена my-domain.host
.
Установку почтового сервера нужно будет начать именно с добавления необходимых компонентов. Для этого запустите Server Manager
, перейдите Manage
→ Add Roles and Features
.
В открывшемся окне нажмите Next
.
Далее выберите опцию Role-based or feature-based installation
, после чего нажмите Next
.
В следующем окне укажите сервер, на который будет производиться установка новых компонентов, либо просто нажмите Next
, если в вашем пуле серверов одна-единственная запись.
На следующем шаге активируйте строку Web Server (IIS)
, после чего нажмите Add Features
.
Далее нажмите Next
.
После чего отметьте строку SMTP Server
и нажмите Add Features
.
И нажмите Next
.
Далее ещё раз нажмите Next
.
В следующем окне снова нажмите Next
.
Для запуска установки выбранных компонентов нажмите Install
.
Настройка сервера SMTP
На следующем этапе необходимо будет настроить сервер SMTP. Для чего в Server Manager
перейдите Tools
→ Internet Information Services (IIS) 6.0 Manager
.
В открывшемся окне менеджера IIS раскройте ветку вашего сервера и на строке SMTP Virtual Server
нажмите правую кнопку мыши, после чего перейдите в Properties
.
Далее в строке IP address:
необходимо выбрать IP-адрес вашего сервера и активировать опцию Enable logging
.
Во вкладке Access
нажмите кнопку Authentication...
В открывшемся окне активируйте опцию Anonymous access
. Активация данной опции нужна, чтобы пользователи и приложения смогли бы использовать сервер SMTP анонимно. Позже можно будет настроить более безопасную аутентификацию, пока же нажмите OK
.
Далее в разделе Connection control
нажмите кнопку Connection...
В окне Connection
установите переключатель на Only the list below
и при помощи кнопки Add...
добавьте IP-адрес вашего VPS. После чего нажмите OK
.
Точно такую же настройку необходимо проделать в разделе 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
Вывод данной команды должен выглядеть примерно следующим образом:
Теперь там же, в командной строке 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
.
По окончании установки можно попробовать с нашего почтового сервера отправить тестовое сообщение. Команда для отправки сообщения выглядит следующим образом:
$ echo "Message Body" | mail -s "Message Subject" your@email.address
В данной команде:
Message Body
– тело письма;Message Subject
– тема письма;your@email.address
– адрес электронной почты, на который будет отправлено сообщение.
Проверьте свой почтовый ящик (в нашем примере это – your@email.address
), на который должно прийти отправленное из Postfix
сообщение.