Dicas e informações sobre Windows Server, Powershell

Criando um SMTP-SERVER

Recentemente precisei configurar um serviço de SMTP em um servidor Windows, para que um dispositivo pudesse encaminhar via e-mail todos os eventos que ele gerasse. O processo de configuração é muito simples e até mesmo divertido, abaixo compartilharei como fiz essa configuração e como você também pode realizá-la =D.

Requisitos para o Laboratório

  • Conexão com internet
  • Conta de e-mail (gmail, outlook, hotmail, etc)
  • Servidor Windows 

Possui todos esses requisitos aí? Borá lá então!

Como sempre, fiz um passo a passo de todo o processo de instalação e configuração.

O primeiro passo é abrir o Power Shell em seu servidor e avaliar se o recurso SMTP-Server está disponível.

Execute o cmdlet:

Get-WindowsFeature | Where-Object Name -Like SMTP*
#esse cmdlet irá listar se a feature está disponível no servidor e listará o nome dela, o que iremos utilizar logo em seguida.
Imagem 01 – Get-WindowsFeature

A imagem acima, nos informa que o nome da feature é SMTP-Server, anote-o, pois iremos utilizá-lo já já!

Execute o cmdlet abaixo para instalar o SMTP-SERVER:

Install-WindowsFeature -Name SMTP-Server
Imagem 02 – Install-WindowsFeature

Aguarde a execução do cmdlet, após isso, iremos validar se o recurso foi instalado. Execute novamente o cmdlet.

Get-WindowsFeature | Where-Object Name -Like SMTP*
Imagem 03 – Get-WindowsFeature

Observe que o estado do recurso é “Instalado”. Estamos prontos para a próxima etapa!

Abra o Server Manager, na aba “Tools” procure por “Internet Information Services (IIS) 6.0 Manager”.

Imagem 04 – Server Manager

Após clicar, irá executar esta janelinha abaixo 

Imagem 04 – IIS 6.0 Manager

Agora iremos iniciar as configurações de nosso SMTP Server! Se atente bem aos próximos passos!

Clique em Virtual Server com o botão direito e selecione a opção “Properties”.

Imagem 05 – Virtual Server

Após clicar em “Properties” a janela abaixo será executada. Nessa opção, iremos apenas ativar o registro de logs. O nosso servidor SMTP irá funcionar com a porta 25 (Que é a padrão quando se instala essa feature).

1º Passo: Marque o check box “Enable Logging”.

2º Clique em “Properties”.

Imagem 06 – Configurar Logs

1º Passo: Opção “General”

2º Passo: Em “New log Schedule” selecione a opção “Daily”. Marcando essa opção, será gerado 1 arquivo de log por dia.

3º Passo: Selecione a opção “Use Local time for file naming and rollover”.

4º Passo: Clique em “Apply”

Imagem 07 – Configurar Logs

Agora clique em “Advanced”, selecione todos os itens e clique em “Apply”.

Imagem 08 – Configurar Logs

Agora que fizemos essa configuração, toda tentativa de envio de e-mail será armazenada no diretório C:\Windows\System32\LogFiles\SMTPSVC1.

Feito isso, retorne para as propriedades do Virtual Server.

1º Passo: Selecione a opção “Access”.

2º Passo: Clique na opção “Authentication”

3º Passo: Selecione a opção “Anonymous Access”.

4º Clique em “OK”.

Imagem 09 – Configuração de Acesso

Volte para tela de “Access”

1º Passo: Clique em “Connection”

2º Passo: Selecione a opção “Only the list below”

3º Passo: Clique em “ADD”

4º Passo: Nessa opção, você irá inserir os endereços ip’s que poderão se conectar ao servidor de SMTP.

Após inserir o(s) endereço(s), clique em “OK”.

Imagem 10 – Conexões 

Volte para tela de “Access”

1º Passo: Clique em “Relay”

2º Passo: Selecione a opção “Only the list below”

3º Passo: Clique em “ADD”

4º Passo: Nessa opção, você irá inserir os endereços ip’s que poderão fazer a transmissão de e-mails .

Após inserir o(s) endereço(s), clique em “OK”.

Imagem 11 – Transmissões

Agora vá para a aba “Messages”

1º Passo: Na opção “Send Copy of Non-Delivery Report to”, insira um endereço de e-mail, este irá receber os e-mails com falha ao enviar.

Imagem 12 – Configuração para falha de envio

Agora iremos configurar a conta que realizará o envio de e-mails, no meu caso, estou usando uma conta do hotmail, e as configurações são as abaixo:

Imagem 13 – Configurações Hotmail

Nas propriedades de Virtual Server:

1º Passo: Selecione a opção “Outbound Security”.

2º Passo: Selecione a opção “Basic Authentication” e insira os dados da conta que irá utilizar para realizar o envio de e-mails “e-mail e senha”.

3º Passo: Selecione a opção “TLS encryption”.

4º Passo: Clique em “OK”.

Imagem 14 – Configurações de Conta

Agorá vá para opção “Outbound Connections” e insira a porta de acesso ao servidor de e-mail, no nosso exemplo será a porta 587. Feito isso clique em “OK” e volte para tela de propriedades.

Imagem 15 – Configurações de conta

Após isso, resta somente inserir as informações de domínio e qual é o endereço do servidor SMTP que irá fazer a entrega dos e-mails.

Imagem 16 – Configurações de conta

Após tudo isso, basta clicar em “Apply” e nosso SMTP-Server estará funcional!  Vamos testar?

Para isso, fiz o script abaixo.

$DATE= Get-Date
$TO = "DESTINATÁRIO"
$FROM = "REMETENTE"
$SMTP = "NOME OU IP DO SEU SERVIDOR"
$BODY = "E-mail enviado pelo servidor SMTP: $env:COMPUTERNAME em $DATE" 
$SUBJECT = "SMTP-SERVER NO WINDOWS"

Send-MailMessage -SmtpServer $SMTP -To $TO -From $FROM -Subject $SUBJECT -Body $BODY
Imagem 17 – Envio de e-mail

E-mail recebido =D

Imagem 18 – E-mail recebido

E quando o destinatário não é encontrado, lembra aquela caixa que configuramos lá atrás? Recebe a notificação de falha ao enviar =D.

Imagem 19 – Falha no envio de e-mail

Bom, por hoje é só isso!

Deixe suas dúvidas e sugestões nos comentários!

2 Comments

  1. Fabrício Oliveira's Gravatar Fabrício Oliveira
    May 9, 2019    

    Muito bom, Estevão!

  2. September 8, 2019    

    Glad to be one of many visitors on this amazing web site : D.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.