Вы можете установить 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).
Оставьте все предлагаемые опции роли Web Server (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.
В консоли IIS 6 Manager разверните ветку с именем сервера, щёлкните ПКМ по SMTP Virtual Server и откройте его свойства.
На вкладке General, если необходимо, выберите IP адрес, на котором должен отвечать SMTP сервер (если у сервера несколько IP адресов), и включите ведение логов Enable logging (чтобы сохранялась информация обо всех полученных письмах).
Затем перейдите на вкладку Access.
Здесь нажмите на кнопку Authentication и убедитесь, что разрешен анонимный доступ (Anonymous access).
Вернитесь на вкладку Access и нажмите кнопку Connection. Здесь вы можете указать IP адреса устройств, которым разрешено отправлять почту через наш SMTP релей. Нужно выбрать опцию Only the list below и указать список IP адресов, не забыв самого себя (127.0.0.1).
Аналогичным образом настройте список разрешенных IP в настройках Relay (нажмите соответствующую кнопку). В этой секции указано каким IP адресам (или подсетям) можно пересылать почту через ваш SMTP сервер.
Примечание. Как правило, обязательно стоит включать эту опцию, как минимум ограничив список обслуживаемых устройств диапазоном IP адресов. В противном случае ваш SMTP сервер может использоваться спамерами и другими злоумышленниками как открытый релей для массовых почтовых рассылок.
Перейдите на вкладку Messages. Здесь указывается email, на который будут отправляться копии всех 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 серверов не будут принимать от вас почту, считая ваш сервер спамерским.
Автозапуск службы 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)
Проверка работы SMTP сервера на Windows Server
Ну и последнее, что осталось сделать, проверить работу созданного SMTP сервера. Проще всего это сделать, создав на рабочем столе текстовый файл smtp-test-email.txt и скопировав в него следующий текст, заменив имя отправителя и получателя на ваши.
From: [email protected]
To: [email protected]
Subject: Email test
This is the test email
Скопируйте файл 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 и протестировали отправку писем через него.
You can install an SMTP server using built-in tools in all versions of Windows Server. This SMTP server can work as a mail relay service that should receive and send SMTP emails from various devices in the organization (for example, senders, scanners, access control devices, etc.) and applications (web apps, SQL Reporting Services, SharePoint), which should be able to send mail using the SMTP protocol. Such a relay can send messages to your Exchange servers or to public email services such as Gmail, Yahoo, Office 365 (outlook.com), etc. (since it is not always advisable to deploy a full-featured internal email infrastructure based on Microsoft Exchange Server or other email services).
In this article we’ll show how to install, configure and test the SMTP server on Windows Server 2012 R2, 2016 and 2019 serving as a mail relay. This SMTP server can only send or forward emails, and there are no user mailboxes on it.
Contents:
- How to Install SMTP Service on Windows Server 2016 / 2012 R2?
- Configuring SMTP Server on Windows Server
- SMTPSVC Service Auto-Start
- Testing the SMTP Server on Windows
How to Install SMTP Service on Windows Server 2016 / 2012 R2?
SMTP service is one of the built-in features of Windows Server that can be installed through Server Manager. To do it, open the Server Manager Dashboard (servermanager.exe), go to Add roles and features and check SMTP Server when selecting the features to install. To manage the SMTP service, install the management consoles, being a part of Web Server (IIS) role, so you will be prompted to install some IIS components.
Leave all the suggested options of the Web Server (IIS) role and run installation.
You can also install the SMTP server role using the PowerShell command:
Install-WindowsFeature smtp-server
After the components are installed, you may need to restart your server.
Configuring SMTP Server on Windows Server
The SMTP server is still managed using the old school management console Internet Information Services (IIS) Manager 6. You can open this console from the Server Manager: Tools-> Internet Information Services (IIS) 6.0 Manager or with the command inetmgr6.exe.
Expand the branch with your server name in the IIS 6 Manager, right-click SMTP Virtual Server and open its properties.
On the General tab, if necessary, select the IP address on which the SMTP server should respond (if the server has multiple IP addresses), and check the option Enable logging (in order to save information about all received emails to text log files).
Then go to the Access tab.
Here click the Authentication button and make sure that the Anonymous access is enabled.
Go back to the Access tab and click the Connection button. Here you can specify the IP addresses of devices that are allowed to send emails through your SMTP relay. To do it, check the Only the list below and specify the list of IP addresses (subnets), don’t forget about yourself (127.0.0.1).
Configure the same way the list of allowed IPs in the Relay settings (click the corresponding button). This section indicates which IP addresses (or subnets) can relay email through your SMTP server.
Note. As a general rule, it’s worth to check this options and limit the list of accepted devices with the range of IP addresses. Otherwise, your SMTP server may be used by spammers and other attackers as an open relay for mass mailings.
Go to the Messages tab. Here the administrative e-mail address is specified, to which the copies of all NDR messages will be send (Send copy of Non-Delivery Report to:). Also here you can specify the restrictions on the maximum message size (Limit message size KB) and the maximum number of recipients (Limit number of recipients per message).
Go to the Delivery tab.
Then click Outbound Security. Here you specify the way of authentication on the external mail server to which your SMTP server will send (relay) all email messages. For example, if all emails will be forward to Gmail mail server and then sent to the recipients, you need to check the Basic authentication and specify your Gmail mailbox credentials (you must allow to send email via Gmail SMTP in the Google account settings).
Then click Advanced.
Here you specify the FQDN name of your SMTP server. Click the Check DNS button to make sure that the DNS record is valid.
If your server sends mail to an external SMTP server, specify its name in the Smart host field (for example, smtp.gmail.com or smtp.office365.com).
Some public mail servers accept email only when using a secure SMTP connection using TLS Encryption (TCP port 587). You can configure this setting in the section Delivery -> Outbound Security and Outbound Connections. Read the documentation of your email provider.
Save the SMTP server settings and restart your SMTP virtual service to apply the changes.
Note.
- The DNS settings are critical from the point of view of email system health. If your SMTP server cannot correctly resolve DNS names of domains to which it is trying to send email, the delivery will fail.
- If your server sends mail to other domains, it is important that the correct PTR record is created for your IP address in order to resolve reverse DNS lookups. The PTR record for your public IP address should point to your server FQDN name. Otherwise, most external SMTP servers won’t accept email from you, considering your server a spammer one.
SMTPSVC Service Auto-Start
It remains to configure the automatic startup of SMTP service on your Windows Server. You can do it quickly using the PowerShell command prompt:
set-service smtpsvc -StartupType Automatic
Start the service:
start-service smtpsvc
Make sure that the SMTPSVC service is running:
get-service smtpsvc
Status Name DisplayName
—— —- ————
Running smtpsvc Simple Mail Transfer Protocol (SMTP)
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-email.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: Email test
This is the test email
Copy the file smtp-test-email.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 email with the given subject and body to the recipient specified in the To: line.
Check the recipient mailbox, and you will see this e-mail.
Tip. You can test your SMTP server using the telnet command, VBS script or PowerShell:
Send-MailMessage -SMTPServer localhost -To manager@localdomain.com -From server@localdomain.com -Subject "Email test" -Body "This is the test email from PowerShell"
If you have enabled Basic Authentication to authenticate all your SMTP clients (instead of anonymous authentication), you can send an email 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 emails through it.
Содержание
- Установка и настройка SMTP сервера на Windows Server 2016 / 2012 R2
- Установка службы SMTP на Windows Server 2016/2012 R2
- Настройка SMTP сервера на Windows Server
- Автозапуск службы SMTPSVC
- Проверка работы SMTP сервера на Windows Server
- How to Install and Configure SMTP Server on Windows Server 2016/2012 R2?
- How to Install SMTP Service on Windows Server 2016 / 2012 R2?
- Configuring SMTP Server on Windows Server
- SMTPSVC Service Auto-Start
- Testing the SMTP Server on Windows
Установка и настройка SMTP сервера на Windows Server 2016 / 2012 R2
Вы можете установить 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, который можно установить через Server Manager. Для этого откройте консоль Server Manager Dashboard (servermanager.exe), перейдите в режим Add roles and features и на этапе выбора функций отметьте чекбокс у пункта SMTP Server. Для управления службой SMTP нужно установить консоли управления, которые входят в комплект роли Web Server IIS (вам будет предложено установить IIS Management Tools).
Оставьте все предлагаемые опции роли Web Server (IIS) и запустите установку.
Также вы можете установить компонент SMTP сервера с помощью одной команды PowerShell:
После окончания установки компонентов может потребоваться перезагрузка системы.
Настройка SMTP сервера на Windows Server
Управляется SMTP сервер консоль управления Internet Information Services (IIS) Manager 6. Открыть эту консоль можно через Server Manager: Tools-> Internet Information Services (IIS) 6.0 Manager или командой inetmgr6.exe.
В консоли IIS 6 Manager разверните ветку с именем сервера, щёлкните ПКМ по SMTP Virtual Server и откройте его свойства.
На вкладке General, если необходимо, выберите IP адрес, на котором должен отвечать SMTP сервер (если у сервера несколько IP адресов), и включите ведение логов Enable logging (чтобы сохранялась информация обо всех полученных письмах).
Затем перейдите на вкладку Access.
Здесь нажмите на кнопку Authentication и убедитесь, что разрешен анонимный доступ (Anonymous access).
Вернитесь на вкладку Access и нажмите кнопку Connection. Здесь вы можете указать IP адреса устройств, которым разрешено отправлять почту через наш SMTP релей. Нужно выбрать опцию Only the list below и указать список IP адресов, не забыв самого себя (127.0.0.1).
Аналогичным образом настройте список разрешенных IP в настройках Relay (нажмите соответствующую кнопку). В этой секции указано каким IP адресам (или подсетям) можно пересылать почту через ваш SMTP сервер.
Перейдите на вкладку Messages. Здесь указывается email, на который будут отправляться копии всех 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 сервера и перезапустите ваш виртуальный SMTP сервер для применения изменений.
- Настройки DNS критичны с точки зрения работоспособности почтовой системы. Если ваш SMTP сервер не может корректно разрешить DNS имена доменов, на которые он пытается отправить письма, доставка не удастся.
- Если ваш сервер сам будет отправлять почту в другие домены, важно, чтобы для вашего адреса была сформирована правильная PTR запись для разрешения обратных DNS запросов. PTR запись для белого IP адреса должна указывать на FQDN имя. В противном случае большинство внешних smtp серверов не будут принимать от вас почту, считая ваш сервер спамерским.
Автозапуск службы SMTPSVC
Осталось настроить автозапуск службы SMTP сервера. Быстрее всего это сделать из командной строки PowerShell:
set-service smtpsvc -StartupType Automatic
Проверим, что запущена служба SMTPSVC :
Проверка работы SMTP сервера на Windows Server
Ну и последнее, что осталось сделать, проверить работу созданного SMTP сервера. Проще всего это сделать, создав на рабочем столе текстовый файл smtp-test-email.txt и скопировав в него следующий текст, заменив имя отправителя и получателя на ваши.
From: server@localdomain.com
To: admin@localdomain.com
Subject: Email test
Скопируйте файл smtp-test-email.txt в каталог C:inetpubmailrootPickup. SMTP сервер следит за появлением файлов в этой каталоге и при обнаружении файла прочтет его содержимое и попытается отправить письмо с данной темой и текстом адресату, указанному в разделе To:.
Проверьте ящик получателя, в него должно прийти такое письмо.
Send-MailMessage -SMTPServer localhost -To admin@localdomain.com -From server@localdomain.com -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 и протестировали отправку писем через него.
Источник
How to Install and Configure SMTP Server on Windows Server 2016/2012 R2?
You can install an SMTP server using built-in tools in all versions of Windows Server. This SMTP server can work as a mail relay service that should receive and send SMTP emails from various devices in the organization (for example, senders, scanners, access control devices, etc.) and applications (web apps, SQL Reporting Services, SharePoint), which should be able to send mail using the SMTP protocol. Such a relay can send messages to your Exchange servers or to public email services such as Gmail, Yahoo, Office 365 (outlook.com), etc. (since it is not always advisable to deploy a full-featured internal email infrastructure based on Microsoft Exchange Server or other email services).
In this article we’ll show how to install, configure and test the SMTP server on Windows Server 2012 R2, 2016 and 2019 serving as a mail relay. This SMTP server can only send or forward emails, and there are no user mailboxes on it.
How to Install SMTP Service on Windows Server 2016 / 2012 R2?
SMTP service is one of the built-in features of Windows Server that can be installed through Server Manager. To do it, open the Server Manager Dashboard (servermanager.exe), go to Add roles and features and check SMTP Server when selecting the features to install. To manage the SMTP service, install the management consoles, being a part of Web Server (IIS) role, so you will be prompted to install some IIS components.
Leave all the suggested options of the Web Server (IIS) role and run installation.
You can also install the SMTP server role using the PowerShell command:
After the components are installed, you may need to restart your server.
Configuring SMTP Server on Windows Server
The SMTP server is still managed using the old school management console Internet Information Services (IIS) Manager 6. You can open this console from the Server Manager: Tools-> Internet Information Services (IIS) 6.0 Manager or with the command inetmgr6.exe.
Expand the branch with your server name in the IIS 6 Manager, right-click SMTP Virtual Server and open its properties.
On the General tab, if necessary, select the IP address on which the SMTP server should respond (if the server has multiple IP addresses), and check the option Enable logging (in order to save information about all received emails to text log files).
Then go to the Access tab.
Here click the Authentication button and make sure that the Anonymous access is enabled.
Go back to the Access tab and click the Connection button. Here you can specify the IP addresses of devices that are allowed to send emails through your SMTP relay. To do it, check the Only the list below and specify the list of IP addresses (subnets), don’t forget about yourself (127.0.0.1).
Configure the same way the list of allowed IPs in the Relay settings (click the corresponding button). This section indicates which IP addresses (or subnets) can relay email through your SMTP server.
Go to the Messages tab. Here the administrative e-mail address is specified, to which the copies of all NDR messages will be send (Send copy of Non-Delivery Report to:). Also here you can specify the restrictions on the maximum message size (Limit message size KB) and the maximum number of recipients (Limit number of recipients per message).
Go to the Delivery tab.
Then click Outbound Security. Here you specify the way of authentication on the external mail server to which your SMTP server will send (relay) all email messages. For example, if all emails will be forward to Gmail mail server and then sent to the recipients, you need to check the Basic authentication and specify your Gmail mailbox credentials (you must allow to send email via Gmail SMTP in the Google account settings).
Then click Advanced.
Here you specify the FQDN name of your SMTP server. Click the Check DNS button to make sure that the DNS record is valid.
If your server sends mail to an external SMTP server, specify its name in the Smart host field (for example, smtp.gmail.com or smtp.office365.com).
Save the SMTP server settings and restart your SMTP virtual service to apply the changes.
- The DNS settings are critical from the point of view of email system health. If your SMTP server cannot correctly resolve DNS names of domains to which it is trying to send email, the delivery will fail.
- If your server sends mail to other domains, it is important that the correct PTR record is created for your IP address in order to resolve reverse DNS lookups. The PTR record for your public IP address should point to your server FQDN name. Otherwise, most external SMTP servers won’t accept email from you, considering your server a spammer one.
SMTPSVC Service Auto-Start
It remains to configure the automatic startup of SMTP service on your Windows Server. You can do it quickly using the PowerShell command prompt:
set-service smtpsvc -StartupType Automatic
Start the service:
Make sure that the SMTPSVC service is running:
Status Name DisplayName
—— —- ————
Running smtpsvc Simple Mail Transfer Protocol (SMTP)
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-email.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: Email test
This is the test email
Copy the file smtp-test-email.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 email with the given subject and body to the recipient specified in the To: line.
Check the recipient mailbox, and you will see this e-mail.
Send-MailMessage -SMTPServer localhost -To manager@localdomain.com -From server@localdomain.com -Subject «Email test» -Body «This is the test email from PowerShell»
If you have enabled Basic Authentication to authenticate all your SMTP clients (instead of anonymous authentication), you can send an email 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 emails through it.
Источник
Вы можете установить 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).
Оставьте все параметры, предлагаемые для роли веб-сервера (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.
В консоли диспетчера IIS 6 разверните ветку с именем сервера, щелкните правой кнопкой мыши виртуальный сервер SMTP и откройте его свойства.
На вкладке «Общие» при необходимости выберите IP-адрес, на который должен отвечать SMTP-сервер (если у сервера несколько IP-адресов), и включите параметр «Включить ведение журнала» (для сохранения информации обо всех полученных сообщениях).
Затем перейдите на вкладку «Вход.
Здесь нажмите кнопку «Аутентификация» и убедитесь, что разрешен анонимный доступ).
Вернитесь на вкладку «Вход» и нажмите кнопку «Вход». Здесь вы можете указать IP-адреса устройств, которым разрешено отправлять почту через наш SMTP-ретранслятор. Вы должны выбрать вариант «Только список ниже» и указать список IP-адресов, не забывая о себе (127.0.0.1).
Аналогичным образом настройте список разрешенных IP-адресов в настройках Relay (нажмите соответствующую кнопку). В этом разделе указывается, на какие IP-адреса (или подсети) вы можете отправлять почту через свой SMTP-сервер.
Примечание. Как правило, вам обязательно стоит включить эту опцию, ограничив хотя бы список поддерживаемых устройств диапазоном IP-адресов. В противном случае ваш SMTP-сервер может использоваться спамерами и другими злоумышленниками в качестве открытого ретранслятора для массовой рассылки.
Перейдите на вкладку Сообщения. Здесь вы указываете адрес электронной почты, на который будут отправляться копии всех отчетов о недоставке (Отправить копию отчета о недоставке на адрес :). Также здесь вы можете указать ограничения на максимальный размер сообщения в КБ и количество получателей (Ограничить количество получателей на одно сообщение).
Перейдите во вкладку Доставка:
Затем нажмите кнопку «Безопасность исходящего трафика». Таким образом, вам необходимо войти на почтовый сервер, на который ваш SMTP-сервер будет ретранслировать всю почту. Например, если вся почта будет отправляться на почтовый сервер Gmail и отправляться с него получателям, необходимо выбрать тип аутентификации Обычная аутентификация, указав данные для доступа к почтовому ящику в службе Gmail в качестве пользователя и пароля (в Настройки аккаунта гугл, нужно разрешить отправку через smtp сервер gmail).
Затем нажмите кнопку «Дополнительно.
Здесь указывается полное доменное имя вашего SMTP-сервера. Нажмите кнопку Проверить DNS, чтобы проверить правильность записи DNS.
Если серверу необходимо пересылать почту на внешний smtp-сервер, его имя должно быть указано в поле Smart host (например, smtp.gmail.com или smtp.office365.com).
Некоторые внешние почтовые серверы принимают почту только при использовании безопасного SMTP-соединения с использованием шифрования TLS (используется TCP-порт 587). Это настраивается в Доставке-> Безопасность исходящего трафика и Исходящие соединения. Проверьте документацию вашего почтового провайдера.
Сохраните настройки SMTP-сервера и перезапустите виртуальный SMTP-сервер, чтобы изменения вступили в силу.
Примечание.
- Настройки DNS имеют решающее значение с точки зрения эффективности почтовой системы. Если ваш SMTP-сервер не может правильно разрешить DNS-имена доменов, на которые он пытается отправить электронную почту, доставка не удастся.
- Если ваш сервер сам будет отправлять почту в другие домены, важно, чтобы для вашего адреса была сформирована правильная запись PTR для разрешения обратных DNS-запросов. Запись PTR для белого IP-адреса должна указывать на полное доменное имя. В противном случае большинство внешних SMTP-серверов не будут принимать вашу почту, считая ваш сервер спамом.
Автозапуск службы SMTPSVC
Осталось настроить автоматический запуск службы SMTP-сервера. Самый быстрый способ сделать это – из командной строки PowerShell:
set-service smtpsvc -StartupType Automatic
Запустим сервис:
start-service smtpsvc
Проверяем, что служба SMTPSVC запущена :
get-service smtpsvc
Название штата DisplayName
—— —- ————
Запуск простого протокола передачи почты (SMTP) smtpsvc
Проверка работы SMTP сервера на Windows Server
Ну и последнее, что осталось сделать, это проверить работу созданного SMTP-сервера. Самый простой способ сделать это – создать на рабочем столе текстовый файл smtp-test-email.txt и скопировать в него следующий текст, заменив имена отправителя и получателя своими собственными.
От: server@localdomain.com
Кому: admin@localdomain.com
Тема: тест по электронной почте
Это тестовое письмо
Скопируйте файл 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
Many services and apps require some kind of email server in order to send you email notifications, warnings, errors. Windows Server 2012 doesn`t pack Exchange Server with it, but there is simple solution for sending emails from Windows Server 2012 and here is the tutorial for setting it up.
Prerequisite for this tutorial is installed IIS with IIS 6.0 Management Tools
Search | Server Manager | click on Server Manager
Click on Manage | Add Roles and Features |Next
Role-based of feature-based installation | Next
Select server | Next
Next | (Select Web Server and all under Management tools if you don`t already have IIS installed)
Select SMTP Server under Features
New Window will pop-up |Add Features
Next
Install
Success | Close
Back to search – enter IIS and then click on Internet Information Services (IIS) 6.0 Manager
Expand your local server and right click on SMTP | click on Properties
General tab |IP address – select local machine IP address and enable logging |Apply
Access Tab | click on Connection button
Click on Only the list below |Add
Enter IP of the computer you want to be able to access to SMTP service (you will define all local IPs here that you want to access your SMTP)
OK
Now, back to Access tab | click on Relay button
Same procedure as for Connection |OK |Apply
Delivery tab |click on Advanced button
Under fully-qualified domain name enter name of external mail server. If you have the need – you`ll also enter smart host name. After you’re done – OK |Apply |OK
Last stop is the firewall
Enter Firewall in search |select Windows Firewall with Advanced Security
!In some scenarios, you`ll also have to define Outbound Firewall Rule (same procedure as described here for inbound rule)
Right click on Inbound Rules | New Rule
Select Port | Next
TCP | Specific Local ports: enter 25 | Next
Allow the connection | Next
I`ll open my SMTP port to all instances, Public interface is not recommended, so choose wisely and think about what you want to achieve. This is my test lab, so I don`t have any security issues with it and want to test some scenarios. Next
Write the Name and description for your rule | Finish
Rule is created
Go to Control Panel | Administrative Tools | Services | find Simple Mail Transfer Protocol (SMTP) and set startup to Automatic (right click on it – Properties – Startup Type – Automatic)
Restart service (or even better – server is you can) and test your SMTP with application or service you want notifications from.
Disclaimer
You are here: Home / How To / How to Install SMTP Server on Windows Server 2012 R2
The internal SMTP server feature is deprecated but not removed on Microsoft Windows Server 2012, so when moving legacy applications from an older server, you can still install the internal SMTP under IIS 6 on Windows Server 2012 R2 to avoid using a separate Exchange Server. Here are the steps to install it.
Steps
-
Launch Server Manager.
-
On the Dashboard, click Add roles and features on the right pane.
-
Click Next > button to go to Installation Type (on left) and select Role-based or feature-based installation on the right and click Features on the left.
-
In a box under the heading Features, check SMTP Server. There will be a pop-out screen to add more services or features. Just click the Add Features button.
-
You will be shown a confirmation screen. Click the Install button. Click Close button when finished.
-
You can find the IIS 6 by going to the tile menu and pick the icon with the purple background as pictured.
-
Launch the IIS 6 Manager to configure the SMTP server.
The default location of your SMTP folders will be in C:inetpubmailroot. You can move these default directories to a different drive.
Further Reading
Features Removed or Deprecated in Windows Server 2012 R2
How to Fix SMTP 550 5.7.1 Unable to Relay Error on Windows Server 2012 R2
Mastering Windows Server 2012 R2
Windows Server 2012 R2 Inside Out Volume 1: Configuration, Storage, & Essentials
Windows Server 2012 R2 Inside Out Volume 2: Services, Security, & Infrastructure
Training Guide Installing and Configuring Windows Server 2012 R2 (MCSA)
- Remove From My Forums
-
Общие обсуждения
-
Имеется Windows Server 2012 со статическим внешним ip адресом, но пока что без домена.
Нужно поднять SMTP сервер (пока для тестов, после покупки домена — для дела).
Я установил необходимые роли, в т.ч. IIS6.0 консоль, служба запущена.
Создал в системе отдельного пользователя — Mail.
Сообщение посылаю с соседнего компьютера примерно так:
var mailClient = new SmtpClient(«192.168.1.110», 25) { Credentials = new NetworkCredential(«пользователь», «пароль») };
var message = new MailMessage(«admin@milestone», «e-mail получателя»,»тема»,»текст»);
mailClient.Send(message);
больше всего смущает адрес отправителя — я указал не существующий адрес на несуществующем домене (ну, точнее, существующем локально. Имя сервера — MILESTONE).
Письма не отправляются.
Прошу помощи в данном вопросе.
-
Изменен тип
19 декабря 2012 г. 5:44
Тема переведена в разряд обсуждений по причине отсутствия активности
-
Изменен тип