VRFY
Команда VRFY является сокращением от verify (англ. проверить — Прим. пер.). Ее можно использовать для определения возможности доставки сервером почты определенному получателю перед выполнением команды RCPT. Формат этой команды следующий:
VRFY username
По принятии данной команды сервер SMTP определяет, имеется ли у него на локальном сервере пользователь с заданным именем. Если такой пользователь найден, то сервер вернет ответ с полным почтовым адресом пользователя. Если такого пользователя нет на локальном сервере, то SMTP-сервер может либо вернуть негативный ответ клиенту, либо указать, что он будет пересылать все сообщения удаленному пользователю. Это зависит от того, будет ли сервер SMTP пересылать сообщения удаленному клиенту.
Команда VRFY может оказаться эффективным инструментом при поиске неполадок в работе электронной почты. Довольно часто, отправляя почтовые сообщения, пользователи ошибаются при написании имени адресата или хоста и затем недоумевают, почему их сообщения не были получены. Конечно, первое, что они предпримут, — это пожалуются администратору почтовой системы на отвратительную работу системы электронной почты. Как администратор почтовой системы вы, можете проверить работоспособность адресов электронной почты двумя путями. Во-первых, с помощью команды DNS host, которая позволяет определить правильность доменного имени и наличие почтового сервера, обслуживающего домен. И во-вторых, можно зайти с помощью telnet на порт 25 почтового сервера и затем задать команду VRFY, которая определит правильность имени пользователя. В листинге 5.3 показан пример использования команды VRFY для проверки имен пользователей.
1 riley@shadrach riley$ telnet localhost 25 2 Trying 127.0.0.1... 3 Connected to localhost. 4 Escape character is '^]'. 5 220 shadrach.smallorg.org ESMTP Sendmail 8.9.38.9.3; Thu, 26 Aug 1999 19:20:16 -050 6 HELO localhost 7 250 shadrach.smallorg.org Hello localhost 127.0.0.1, pleased to meet you 8 VRFY rich 9 250 <rich@shadrach,smallorg.org> 10 VRFY prez@mechach.smallorg.org 11 252 <prez@mechach.smallorg.org> 12 VRFY jessica 13 550 jessica... User unknown 14 QUIT 15 221 shadrach.smallorg.org closing connection 16 Connection closed by -foreign host. 17 riley@shadrach riley$
В строках 8–13 представлены результаты выполнения команды VRFY. В строке 8 делается попытка выполнить VRFY для локального пользователя rich. Ответ SMTP- сервера в строке 9 подтверждает, что пользователь с таким именем имеется в системе, и клиенту возвращается его полный адрес электронной почты. В строке 10 показан еще один вариант задания команды VRFY. Здесь клиент пытается выполнить команду VRFY для пользователя на удаленном компьютере. Ответ, полученный в строке 11 от системы shadrach, отличается от результата, полученного в строке 9. В разделе «Ответы сервера» значения кодов, возвращаемых сервером, обсуждаются более детально. В нашем случае отметим, что система shadrach уведомляет клиента о том, что почта будет пересылаться пользователю prez на удаленном сервере meshach.smallorg.org. Строка 12 отображает попытку проверить несуществующее имя в системе meshach. Ответ SMTP-сервера в строке 13 в пояснениях не нуждается.
Проверить существования пользователя используя bash и curl.$ echo -e «VRFY username@example.com\n QUIT» | curl telnet://mail.example.com:25
220 mail.1-talk.com ESMTP Postfix
252 2.0.0 username@example.com
221 2.0.0 Bye
Testing the SMTP Server on Windows
The last thing you have to do is to make sure that your SMTP server is working. It is easier to do it by creating a plain-text file smtp-test-.txt on your desktop and copying the following text to it. Don’t forget to change the sender and recipient names to yours.
From: server@localdomain.com
To: admin@localdomain.com
Subject: test
This is the test
Copy the file smtp-test-.txt to the C:inetpubmailrootPickup folder. The Windows SMTP server monitors new files appearing in this folder, and if a file is found it will read it contents and try to send an with the given subject and body to the recipient specified in the To: line.
Check the recipient mailbox, and you will see this .
If you have enabled Basic Authentication to authenticate all your SMTP clients (instead of anonymous authentication), you can send an with the smtp authentication via telnet as follows.
Also, make sure that TCP 25 port is not blocked on your SMTP server by the local firewall or anti-virus software. The easiest way to do this is from a Windows-based computer whose IP address has been added to the allowed connection list. Check availability of port 25 using the Test-NetConnection cmdlet:
Test-NetConnection smtprelay.woshub.com -port 25
If port 25 is blocked, check the settings of Windows Firewall, antivirus and hardware firewalls.
So, you have configured your own SMTP mail relay on Windows Server 2016 / 2012 R2 and tested sending s through it.
Источник
Настройка
В данной статье мы не будем рассматривать установку Postfix, так как данный сервер легко устанавливается под большинство дистрибутивов, и вы можете найти большое количество статей, посвященных данному действию.
/etc/postfix/main.cf
Как должно быть понятно из названия, это основной конфигурационный файл Postfix.
Совет: Команда ниже покажет вам все конфигурационные директивы, значения которых отличаются от дефолтных:
postconf -n
Так как на шлюзе требуется только пересылка почты, отключаем локальную доставку сообщений (Замечание: пустое значение конфигурациооной директивы означает её отключение):
mydestination = local_recipient_maps = local_transport = error:local mail delivery is disabled
Установите директиву myorigin в значение домена, на который пересылается почта:
myorigin = example.com
Директива mynetworks = определите сети, которым разрешено выполнять пересылку через данный сервер. Обычно сюда включают только внутреннюю локальную сеть, или вообще только IP внутреннего почтового сервера:
mynetworks = 127.0.0.0/8, 172.16.42.0/24
Данная секция предотвращает прием сообщений для адресов вида username@subdomain.example.com to match. Мы явно определим домены, для которых необходимо принимать почту в директиве relay_domains ниже.
parent_domain_matches_subdomains = debug_peer_list, smtpd_access_maps
relay_domains = в данной директиве определяем домены, для которых необходимо принимать почту.
relay_domains = example1.com, example2.com, subdomain.example.com
smtpd_recipient_restrictions = контролируем действия сервера после команды RCPT TO.
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination
transport_maps = указываем связь между доменами и SMTP серверами, на которые будет пересылаться почта.
transport_maps = hash:/etc/postfix/transport
relay_recipient_maps = указатель на файл, который будет содержать спискок адресов электронной почты, для которых Postfix будет принимать сообщения.
relay_recipient_maps = hash:/etc/postfix/relay_recipients
show_user_unknown_table_name = в установленном значении no возвращает сообщение «User unknown» если адрес электронной почты не найден. Используется в связке с relay_recipient_maps.
show_user_unknown_table_name = no
Хотя локальная доставка почты отлючена, почтовый шлюз должен принимать почты для адресов postmaster и abuse. Для этого определите виртуальные алиасы.
virtual_alias_maps = hash:/etc/postfix/virtual
/etc/postfix/master.cf
Данный файл определяет определяет обслуживаемые Postfix службы. Для полного отключения локальной доставки, отредактируйте данный файл и вставьте символ # в начале следующей строки:
#local unix - n n - - local
/etc/postfix/virtual
В случае типичной настройки Postfix файл /etc/aliases используется для пересылки почты на другие аккаунты или внешние адреса. Однако, так как локальная доставка отключена, модификация файла etc/aliases не принесет результатат. Поэтому нам нужно использовать файл /etc/postfix/virtual.
postmaster postmaster@example.com abuse abuse@example.com root guru@example.com
Вы также можете использовать данный файл более широко. Вы можете перенаправлять почту на другие адреса, создавать простые списки рассылки или копировать почту другому пользователю и прочее..
virtualuser@example.com actualuser@example1.com distribution@example.com user1@example.com,user2@example.com,user3@example.com ex_user@example2.com forwarding_address@dom.ain user@example.com user@example.com,spy@example.com
/etc/postfix/transport
Данный файл определяет отношения между доменами и серверами, куда должна пересылаться почта для данных доменов.
example1.com smtp:insidesmtp.example.com example2.com smtp:insidesmtp.example.com subdomain.example.com smtp:insidesmtp.example.com
/etc/postfix/relay_recipients
Данный файл содержит полный списко адресов электронно почты, для которых шлюз будет принимать сообщения.
user1@example1.com OK user2@example1.com OK user1@example2.com OK user2@example2.com OK user1@subdomain.example.com OK user2@subdomain.example.com OK
Шаг 2. Установка Windows Server и базовая настройка системы
Установка системы
Во время установки системы важно учесть только один нюанс — дисковую систему необходимо разбить на два логических раздела. Первый (малый, 70 — 120 Гб) выделить для системных файлов, второй — под пользовательские данные
На это есть две основные причины:
- Системный диск малого размера быстрее работает и обслуживается (проверка, дефрагментация, антивирусное сканирование и так далее)
- Пользователи не должны иметь возможность хранить свою информацию на системном разделе. В противно случае, возможно переполнение диска и, как результат, медленная и нестабильная работа сервера.
Базовая настройка Windows Server
- Проверяем правильность настройки времени и часового пояса;
- Задаем понятное имя для сервера и, при необходимости, вводим его в домен;
- Настраиваем статический IP-адрес;
- Если сервер не подключен напрямую к сети Интернет, стоит отключить брандмауэр;
- Для удаленного администрирования, включаем удаленный рабочий стол;
- Устанавливаем все обновления системы.
How to setup and configure SMTP Server on Windows Server 2008 R2
If you want to install SMTP on Windows Server 2008, start by launching the Server Manager console(type servermanager.mscin the search box and press Enter), then select Features and click Add features
Check SMTP sever
If you see a prompt like the one in the picture below, click the Add required servicesbutton
Ensure that IIS Metabase Compatibility and IIS 6 Management Console are selected and click Next
Confirm the installation by clicking the Install button
Once the installation is complete, click Close
When you configure the SMTP server, you would want to disable Open Relay asthis will ensure that your server will not be used for sending spam messages. In addition to taking the steps below, you can also configure the Firewall so that only 127.0.0.1 talks to port 25 on the server and all other connections are rejected.
How to configure the SMTP server on Windows Server 2008 R2
Start the IIS 6 Manager console (type inetmgr6 in the search box and press Enter). Right click on SMTP virtual server and select Properties
Open the Access tab and click Relay
Make sure that under Relay restrictions Only the list below is selected
Click the Add button and on the next screen, enter the local host IP address, 127.0.0.1 and click OK
Click the OK button again
Click Connection and repeat the same steps by adding the 127.0.0.1 IP address
Click the Authentication button and select Anonymous access.
You can leave the default settings under the Messages and Delivery tabs. Under Outbound Security of the Delivery tab, you can leave Anonymous accessselected since we have chosen only localhost to connect and relay mail.
Testing the server
Make sure that Telnet is installed, if it isn’t, start the Server Manager console (type servermanager.mscin the search box and press Enter), click Features, Add features, select Telnet client and install the feature.
Once Telnet is installed, start command prompt (type cmd in the search box and press Enter), then type telnet localhost 25 and press Enter again
Установка и настройка SMTP сервера на Windows Server 2016 / 2012 R2
Вы можете установить SMTP сервер с помощью встроенных средств во всех версиях Windows Server. Такой SMTP сервер внутри организации может работать в качестве почтового релея, который должен принимать и пересылать через себя SMTP сообщения от различных устройств (к примеру, сендеров, сканеров, устройств СКД и пр.) и приложений (веб приложения, SQL Reporting Services, Point), которым необходимо иметь возможность отправлять почту через SMTP сервер. Такой релей может пересылать сообщения на полноценные Exchange сервер или на публичные почтовые сервисы в Интернет типа Gmail, Mail.ru, Office 365 и т.д (ведь не всегда целесообразно разворачивать полноценную внутреннюю почтовую инфраструктуру на базе Microsoft Exchange Server или других почтовых служб).
В этой статье мы покажем, как установить, настроить и протестировать работу SMTP сервера на Windows Server 2012 R2, 2016 и 2019, который будет функционировать в качестве mail релея. Такой SMTP сервер не хранит почтовые сообщения и на нем отсутствуют почтовые ящики, он сможет только отправлять или пересылать почту.
…и прочие танцы с бубном
В теории это все: сервер запустили, всем сообщили — ждем почту / отправляем свою. На практике большую часть почты, которую мы хотим кому-то послать, другие серверы будут заворачивать. Ответ прост — СПАМ. На сегодняшний день есть много способов как по рассылке спама, так и по борьбе с ним. Один из первых способов борьбы со спамом — это обратный DNS-запрос. Объясню на пальцах:
Например отправляем мы письмо с нашего сервера на адрес лалала@mail.ru. Наш сервер соединяется с сервером мейл.ру и говорит: Привет, я mail.firma.kiev.ua, хочу послать тебе письмо. Майл.ру делает DNS-запрос — какой адрес у сервера mail.firma.kiev.ua — получает ответ 222.222.222.222 (это прямой запрос), но этого ему мало — он посылает запрос вашему провайдеру — «кто такой 222.222.222.222» и получает ответ что-то типа «222_static.ads.mysip.net» — налицо несоответствие и наш сервер посылают куда подальше (вдруг спамер). Что бы этого не случилось — нам нужно сообщить нашему провайдеру, что мы не просто «222_static.ads.mysip.net», а «mail.firma.kiev.ua» и он внесет соответствующую запись в свои настройки (PTR запись).
Все? Фиг там! Готовьтесь как минимум к еще одной проблеме. Так как вы со своим сервером — новый член почтового сообщества, то на первых порах к вам будут относится с большим подозрением. Протокол SMTP (тот, на котором сервера общаются между собой) придуман много лет назад и все стандарты полностью описаны в соответствующей документации. Но соблюдают их ничем не лучше, чем мы соблюдаем рекомендации 1С по написанию обработок . Каждый администратор почтового сервера сам себе начальник и сам устанавливает условия работы своего сервера — от кого принимать, кому отказать и так далее.
И что делать? Нужно анализировать ответы других серверов (сообщения типа MAILER-DAEMON и тп) — в большинстве случаев проблема будет описана в сообщении — почему чужой сервер не захотел принимать от вас сообщения.
Возможные варианты (не дословно, а по смыслу):
- Ваш сервер в спам-списке — в самом сообщении обычно указывают в каком именно списке ваш сервер засветился. Для решения проблемы нужно проверить свою сеть на наличие вирусов, затем зайти на указанный сайт и заполнить заявку на исключение вашего сервера из списка
- Ваш сервер/домен отсутствует в списке доверенных и тп — скорее всего удаленный сервер очень жестко настроен — разрешается доступ только определенным серверам/доменам. Для решения нужно связаться с администратором этого сервера, что бы он внес ваш сервер в «белый» список.
- Временная ошибка, «перезвоните попозже» — тут два варианта — чужой сервер действительно перегружен/занят/пошел покурить, или же это «проверка на вшивость» — так называемый серый список. Это еще один способ борьбы со спамерами — суть такова: по правилам каждый почтовый сервер должен предпринимать попытки доставить почту через определенные промежутки времени (боюсь быть не точным — каждые полчаса в течение трех суток). Естественно, что спамер вряд ли будет это делать, соответственно настоящий сервер таки добьется своего и письмо доставит. Такие проверки устраивают единоразового для каждого нового сервера или же с какой-то периодичностью. Решение: ничего не делать — просто ждать (при условии, что вы верно внесли настройки описанные выше — их достаточно для преодоления большинства проверок типа «серый список»). Дольше всего мне пришлось ждать «разрешения» от ukr.net — благо они в ответ дают ссылку http://www.ukr.net/mta/std3.html, где все подробно разжевано.
- Ну и всевозможные ошибки, связанные с неправильной настройкой сервера, DNS или заголовков письма — тут нужно разбираться в каждом случае отдельно.
Есть путь и проще — достаточно пересылать всю исходящую почту на SMTP-сервер провайдера (настройка SMTP Relayer) и все эти проблемы лягут на провайдера, но мы ведь не ищем легких путей
Про азы борьбы со спамом, преимущества протокола IMAP на практике, а также что делать с входящей почтой когда ваш сервер в оффлайне расскажу в следующей статье. Если, конечно, будет интерес.
P.S. Как маленький бонус — для доступа к корпоративной сети извне по RDP/VPN/etc теперь не надо набирать IP-адрес — ведь у нас есть собственное имя
Просмотр и настройка событий
В этом разделе вы узнаете, как настроить сбор данных журнала событий с серверов в диспетчер сервера пуле серверов и какие события должны выделяться в эскизах.
Примечание
События, о которых вы получаете оповещения в эскизах, представляют собой подмножество общих событий, которые вы указываете диспетчер сервера собираются с управляемых серверов. Несмотря на то, что изменение условий событий в диалоговом окне Настройка данных события в плитках событий может изменить число оповещений, отображаемых на панели мониторинга Диспетчер сервера, изменение критериев оповещения о событиях в эскизах не влияет на данные журнала событий, собираемые с управляемых серверов.
Настройка событий, собираемых с управляемых серверов
-
В консоли диспетчер сервера откройте любую страницу, кроме панели мониторинга. События, собираемые с управляемых серверов, можно настроить в плитке События на страницах роли, группы серверов или локального сервера.
-
В меню Задачи плитки События щелкните Настройка данных события.
-
Выберите уровни серьезности событий, которые необходимо собрать с серверов в выбранной группе. Степени серьезности Критическая, Ошибка и Предупреждение выбраны по умолчанию.
-
Укажите период времени для событий. По умолчанию срок жизни событий составляет 24 часа.
-
Выберите файлы журнала событий, из которых должны собираться события. По умолчанию это файлы Приложение, Настройка и Система.
-
Чтобы сохранить изменения и закрыть диалоговое окно Настройка данных события, нажмите кнопку ОК. Данные события автоматически обновляются при сохранении изменений.
Настройка событий, отображаемых в эскизах
Если диспетчер сервера уже открыт, перейдите к следующему шагу. Если диспетчер серверов еще не открыт, откройте его одним из следующих способов.
На рабочем столе Windows запустите диспетчер серверов, щелкнув Диспетчер серверов на панели задач Windows.
на начальном экране Windows щелкните плитку диспетчер сервера.
На панели мониторинга, в плитке Роли и группы серверов эскиза, щелкните строку События.
В диалоговом окне Просмотр подробных сведений о событиях добавьте уровень серьезности к событиям, которые необходимо отобразить. По умолчанию в эскизах отображается только оповещение для критических событий
Обратите внимание, что количество событий, отображаемых в диалоговом окне подробное представление , увеличивается при добавлении уровня серьезности, о котором необходимо получать оповещения.
В поле Источники событий выберите источники событий для оповещения. Значение по умолчанию — All.
Если этот эскиз предназначен для роли, установленной на нескольких серверах, или группы из нескольких серверов, в раскрывающемся списке серверы можно выбрать серверы, для которых требуется создать оповещения о событиях.
В поле период времени укажите период времени до 1440 минут, 24 часа или 1 день.
В поле ИД событий введите кодовые числа определенных событий для оповещения
Можно ввести диапазон идентификаторов событий, разделенных тире ( — ), и исключить идентификаторы событий из диапазона, введя тире перед идентификатором события или диапазоном идентификаторов событий, которые требуется исключить. Например, значение 1,3,5-99,-76 означает, что оповещения вызываются для событий с идентификаторами 1 и 3, а также для всех событий с идентификаторами в диапазоне от 5 до 99, за исключением события с идентификатором 76.
При изменении условий отображения оповещений число оповещений о событиях, отображаемых в области результатов в нижней части диалогового окна, может измениться. Выберите записи в списке и щелкните скрыть предупреждения , чтобы они не влияли на число оповещений, отображаемых в исходном эскизе. Для выбора нескольких оповещений нажмите и удерживайте клавишу CTRL при выборе оповещений. Вы также можете сделать это для оповещений, соответствующих ранее выбранным условиям оповещения о событиях, которые не нужно отображать.
Щелкните Показать все для возврата скрытых оповещений в список.
Нажмите кнопку ОК , чтобы сохранить изменения, закрыть диалоговое окно « подробное представление » и просмотреть изменения предупреждения о событиях в исходном эскизе.
Сжатие баз данных 1С:Предприятие в MS SQL Server Промо
Тема сжатия баз данных 1С в настоящий момент довольно часто обсуждается. Достоинства сжатия известны – уменьшение размера базы данных, уменьшение нагрузки на дисковую подсистему и некоторое ускорение выполнения тяжелых операций чтения/записи. Из недостатков – небольшое увеличение нагрузки на процессоры сервера СУБД за счет расхода ресурсов на компрессию/декомпрессию данных. Но при использовании в качестве MSSQL и DB2 (за Oracle и PostgreSQL не скажу, т.к. не знаю) есть один «подводный камень» — при выполнении реструктуризации происходит декомпрессия новых таблиц и индексов. Происходить это может как при выполнении обновления конфигурации с изменением структуры метаданных, так и при выполнении тестирования и исправления ИБ (реиндексация пересоздает только индексы, а реструктуризация – и таблицы, и индексы). «Проблема» кроется в том, что признак сжатия устанавливается индивидуально для каждой таблицы и индекса.
Обновление сертификата, выданного центром сертификации
Процедуры одинаковы для сертификатов, выданных внутренним (например, службами сертификации Active Directory) и коммерческим ЦС.
Чтобы обновить сертификат, выданный ЦС, создайте запрос на обновление сертификата и отправьте его в ЦС. Затем ЦС отправляет вам фактический файл сертификата, который необходимо установить на Exchange сервере. Почти аналогично выполняется запрос нового сертификата. Инструкции см. в справке Complete a pending Exchange Server сертификата.
-
В Центре администрирования Exchange последовательно выберите пункты Серверы > Сертификаты.
-
В списке Выберите сервер выберите сервер Exchange с сертификатом, который требуется обновить.
-
В области сведений всех действительных сертификатов есть ссылка Обновить, которая отображается при выборе сертификата из списка. Выберите сертификат, который требуется обновить, и нажмите Обновить в области сведений.
-
На открывшейся странице Обновление сертификата Exchange в поле Сохранить запрос сертификата в следующий файл введите UNC-путь и имя файла нового запроса на обновление сертификата. Например, . После этого нажмите кнопку ОК.
После этого запрос сертификата появится в списке сертификатов Exchange со статусом Ожидает.
Чтобы создать запрос на обновление сертификата для центра сертификации на локальном сервере Exchange, используйте следующий синтаксис:
Чтобы найти значение отпечатка сертификата, который требуется обновить, выполните следующую команду:
В этом примере создается запрос на обновление сертификата со следующими свойствами:
-
Сертификат для обновления:
-
RequestFile:
Примечания.
-
Параметр RequestFile принимает локальный путь или путь UNC.
-
Мы не использовали переключатель BinaryEncoded, поэтому запрос закодирован в Base64. Данные, отображаемые на экране, также записываются в файл, а содержимое файла это то, что нам нужно отправить в ЦС. Если бы мы использовали переключатель BinaryEncoded, запрос был бы закодирован DER, а сам файл запроса сертификата должен был бы отправляться в ЦС.
-
Мы не использовали параметр KeySize, поэтому запрос сертификата имеет общедоступный ключ RSA 2048 бита.
-
Дополнительные сведения см. в сведениях Get-ExchangeCertificate и New-ExchangeCertificate.
Как проверить, что все получилось?
Чтобы убедиться, что вы успешно создали запрос на обновление сертификата для центра сертификации, выполните любое из следующих действий:
-
В Центре администрирования Exchange выберите Серверы > Сертификаты, убедитесь, что выбран сервер, на котором хранится запрос сертификата. Запрос должен быть в списке сертификатов и иметь статус Ожидающий запрос.
-
В командной консоли Exchange на сервере, где хранится запрос сертификата, выполните следующую команду:
Настройка SMTP сервера на Windows Server
Управляется SMTP сервер консоль управления Internet rmation Services (IIS) Manager 6. Открыть эту консоль можно через Server Manager: Tools-> Internet rmation Services (IIS) 6.0 Manager или командой inetmgr6.exe.
В консоли IIS 6 Manager разверните ветку с именем сервера, щёлкните ПКМ по SMTP Virtual Server и откройте его свойства.
На вкладке General, если необходимо, выберите IP адрес, на котором должен отвечать SMTP сервер (если у сервера несколько IP адресов), и включите ведение логов Enable g (чтобы сохранялась информация обо всех полученных письмах).
Затем перейдите на вкладку Access.
Здесь нажмите на кнопку Authentication и убедитесь, что разрешен анонимный доступ (Anonymous access).
Вернитесь на вкладку Access и нажмите кнопку Connection. Здесь вы можете указать IP адреса устройств, которым разрешено отправлять почту через наш SMTP релей. Нужно выбрать опцию Only the list below и указать список IP адресов, не забыв самого себя (127.0.0.1).
Аналогичным образом настройте список разрешенных IP в настройках Relay (нажмите соответствующую кнопку). В этой секции указано каким IP адресам (или подсетям) можно пересылать почту через ваш SMTP сервер.
Примечание. Как правило, обязательно стоит включать эту опцию, как минимум ограничив список обслуживаемых устройств диапазоном IP адресов. В противном случае ваш SMTP сервер может использоваться спамерами и другими злоумышленниками как открытый релей для массовых почтовых рассылок.
Перейдите на вкладку Messages. Здесь указывается , на который будут отправляться копии всех NDR отчетов (Send copy of Non-Delivery Report to:). Также здесь можно указать ограничения на максимальный размер писем (Limit message size KB) и количество получателей (Limit number of recepients per message).
Перейдите на вкладку Delivery:
Затем нажмите на кнопку Outbound Security. Здесь указывается, как нужно авторизоваться на почтовом сервере, на который ваш SMTP-сервере будет пересылать (relay) всю почту. К примеру, если вся почта будет отправляться на почтовый сервер Gmail и уже с него пересылаться адресатам, вам нужно выбрать тип аутентификации Basic authentication, указав в качестве пользователя и пароля данные для доступа к почтовому ящику на сервисе Gmail (в настройках аккаунта Google нужно разрешить отправку через smtp сервера gmail).
Затем нажмите на кнопку Advanced.
Здесь указывается FQDN имя вашего SMTP сервера. Нажмите кнопку Check DNS, чтобы проверить корректность записи в DNS.
Если сервер должен пересылать почту внешнему smtp серверу, нужно указать его имя в поле Smart host (к примеру smtp.gmail.com или smtp.office365.com).
Некоторые внешние почтовые сервера принимает почту только при использовании защищенного SMTP соединения с помощью TLS Encryption (используется порт TCP 587). Это настраивается в разделе Delivery-> Outbound Security и Outbound Connections. Ознакомитесь с документацией вашего почтового провайдера.
Сохраните настройки SMTP сервера и перезапустите ваш виртуальный SMTP сервер для применения изменений.
Примечание.
Настройки DNS критичны с точки зрения работоспособности почтовой системы
Если ваш SMTP сервер не может корректно разрешить DNS имена доменов, на которые он пытается отправить письма, доставка не удастся.
Если ваш сервер сам будет отправлять почту в другие домены, важно, чтобы для вашего адреса была сформирована правильная PTR запись для разрешения обратных DNS запросов. PTR запись для белого IP адреса должна указывать на FQDN имя
В противном случае большинство внешних smtp серверов не будут принимать от вас почту, считая ваш сервер спамерским.
Как работает СМТП, какие преимущества и особенности
Преимущества:
-
Высокая доставляемость
Чтобы уменьшить спамность, почтовые клиенты ограничивают или вовсе блокируют электронный ящик. С помощью СМТП вероятность блокировки близится к нулю, из-за авторизации пользователя. Так как, при входе в аккаунт учитывают логин и пароль на конкретном сервисе, и вопросов у почтовиков к реальным людям меньше. -
Безопасное взаимодействие
Что такое SMTP сервер? Это лишь доставщик, он не заглядывает внутрь письма и не сохраняет личные данные. Информация о клиентской базе хранится только у вас. -
Миллионы email за несколько минут
Быстрый обмен и последующая информация в личном аккаунте или в приложении для ПК. -
Не требует установки специального софта
Достаточно понять принцип работы и применять простой набор команд. Дополнительно устанавливать ничего не нужно. -
Отчетность о доставляемости и ошибках отправки
В случае, если не удалось отправить информацию даже через несколько попыток, то владельцу автоматически приходит сообщение о сбое.
Особенности использования:
- Лимит может возникнуть со стороны провайдера, для избежания спамерства.
- Необходимо настраивать в большинстве кейсов. Например, аналитика открытий, переходов, исправление ошибок требует руки разработчика.
- Автоматический spam-фильтр от провайдера из-за многопоточных запросов и ответов. Simple Mail Transfer Protocol может прекратить попытки отправить сообщение. Для этого необходимо позаботиться о повторной попытке заранее.
Настройка IP и DNS
Обеспечение внешнего статического IP-адреса, публичного домена и записи PTR
Это основные требования для запуска собственного почтового сервера.
-
Публичный статический IP-адресIP-адрес почтового сервера должен быть общедоступным и постоянным во времени. Убедиться в этом можно у хостинг или Интернет-провайдера.
-
Доменное имя указывает на IPDNS-запись публичного доменного имени почтового сервера должна указывать на этот IP-адрес. Им можно управлять в настройках DNS провайдера доменного имени.
-
IP указывает на доменное имяСамое главное, обратная DNS-запись (именуемая PTR) должна указывать на доменное имя почтового сервера по IP-адресу. Можно попросить своего хостинг-провайдера или поставщика интернет-услуг настроить его. Его можно легко проверить по IP-адресу онлайн (например, тут), или с помощью команды ‘nslookup’ в Windows и команды ‘host’ в системах на основе UNIX.
Настройка MX записи в DNS
Запись почтового обмена (MX) указывает почтовый сервер, ответственный за прием сообщений электронной почты от имени домена.
Например, если наш домен — mycompany.com, почтовый сервер — mail.mycompany.com, то запись DNS для mycompany.com будет:
Type |
Host |
Value |
Priority |
TTL |
MX |
@ |
mail.mycompany.com |
10 |
1 min |
где:
-
Priority (приоритет) используется, когда в домене более одного почтового сервера.
-
TTL (время жизни) можно установить любое предпочтительное значение, а наименьшее значение используется для применения конфигурации DNS как можно скорее при отладке настроек.
Настройка DKIM записи в DNS
Почта, идентифицированная ключами домена (DKIM) — это протокол безопасности электронной почты, который прикрепляет зашифрованную цифровую подпись к электронному письму. Принимающий сервер проверяет его с помощью открытого ключа, чтобы убедиться, что электронное письмо не было подделано.
Понадобятся приватный и открытый ключи. Их можно создать с помощью онлайн-инструментов, например Power DMARC Toolbox — DKIM Record Generator, или с помощью команд OpenSSL (приведен пример для Windows):
-
Создать приватный ключopenssl.exe genrsa -out private.key 2048
-
Создать публичный ключ из приватногоopenssl.exe rsa -in private.key -pubout -outform der 2>nul | openssl base64 -A > public.key.txt
И запись DNS будет выглядеть так:
Type |
Host |
Value |
TTL |
TXT |
selector._domainkey |
v=DKIM1; k=rsa; p=public_key |
1 min |
где:
-
selector — самостоятельно выбранный идентификатор (например, mysrv), который будет использоваться в приложении почтового сервера (смотрите ниже).
-
public_key — открытый ключ, закодированный алгоритмом base64 (содержимое public.key.txt).
-
TTL (время жизни) имеет то же значение, что и в предыдущем разделе.
Настройка SPF записи в DNS
Инфраструктура политики отправителя (SPF) — это стандарт проверки подлинности электронной почты, который проверяет IP-адрес отправителя по списку авторизованных IP-адресов владельца домена для проверки входящей электронной почты.
Тут запись DNS будет выглядеть так:
Type |
Host |
Value |
TTL |
TXT |
@ |
v=spf1 a mx include:relayer_name -all |
1 min |
где:
-
relayer_name — имя необязательного внешнего почтового сервера-ретранслятора (смотрите ниже). Если не нужно — убирается вместе с «include:».
-
TTL (время жизни) имеет то же значение, что и в предыдущем разделе.
Можно использовать удобный онлайн-генератор записи SPF.
Дополнительные записи DNS
Некоторые поля не обязательны, но желательно иметь.
-
DMARCЗапись доменной проверки подлинности сообщений, отчетов и соответствия (DMARC) позволяет собственному почтовому серверу декларировать политику того, как другие почтовые серверы должны реагировать на недостоверные сообщения от него.
-
BIMIИндикаторы бренда для идентификации сообщений (BIMI) — это новый стандарт, созданный для того, чтобы упростить отображение логотипа рядом с сообщением. Кроме того, BIMI предназначен для предотвращения мошеннических электронных писем и улучшения доставки.
-
TLS-RPTTLS-отчетность (TLS-RPT) дает ежедневные сводные отчеты с информацией о электронных письмах, которые не зашифровываются и не доставляются.
-
MTA-STSСтрогая транспортная безопасность агента пересылки почты (MTA-STS) — это новый стандарт, направленный на повышение безопасности SMTP, позволяя доменным именам выбирать строгий режим безопасности транспортного уровня, требующий аутентификации и шифрования.
Все эти записи кроме MTA-STS могут быть созданы с помощью Power DMARC Toolbox. Конфигурация MTA-STS похожа на , также описывалась на habr, и, наконец, может быть проверена с помощью Hardenize.