Fala galera, enviar e-mail através de um serviço de SMTP é um processo bastante difundido e usado, mas só uma pequena porcentagem de pessoas que trabalham com TI sabem como configurar o serviço.
Olhando para o mundo de BI, podemos pensar rapidamente em usar o envio de e-mails em atividades como estas abaixo, mas não nos limitando somente à elas:
- Subscription do Reporting Services
- DataAlert do Reporting Services + Sharepoint
- Execução com sucesso/falha de tarefas do Integration Services
A primeira coisa a ser feita é instalar/habilitar o serviço de SMTP no servidor. Para isso, vá até o Server Manager, procure por Features e marque a caixa do SMTP Server e siga o wizard para concluir a instalação.
Após instalar o SMTP Server, vá até o IIS 6.0 Manager para realizar a configuração do servidor de disparo de e-mail.
Após abrir o IIS 6.0 Manager, serão mostrados todos os serviços virtuais que estão instalados/habilitados no Internet Information Services. No meu caso, tenho somente o serviço do SMTP que acabamos de instalar, e é neste serviço (servidor virtual) que vamos configurar os dados da conta de e-mail. Clique com o botão direito no servidor virtual (SMTP Virtual Server #1), e vá até as propriedades (Properties).
Nas propriedades, na primeira tela que é apresentada, precisamos definir o IP único e a porta de acesso. Por padrão a porta 25 é usada por serviços SMTP, mas você pode alterar. É importante fazer esta configuração do IP/Porta, para não informar uma configuração errada quando uma aplicação precisar disparar e-mail. Lembrando que você pode configurar mais de um servidor SMTP dentro da sua empresa, e eles serão acessados através de seus IPs e Portas. Por isso é importante prestar atenção neste passo.
Para realizar esta configuração informando a porta que deseja, clique no botão Advanced e após a janela se abrir informe o IP e a Porta, clicando no botão ADD. Aparecem alguns IPs na combobox, selecione o IP interno do seu servidor. Se for manter a porta 25 (que é a padrão), pode selecionar o IP interno diretamente na tela principal, ignorando o botão Advanced.
Na aba Access, vamos informar quem pode acessar o SMTP. Através do botão Authentication informamos o tipo de autenticação que é permitido no serviço. Por padrão acesso Anonimo (Anonymous) já vem marcado, nós vamos marcar também Basic Authentication, para permitir preenchimento de usuário e senha. Um alerta será mostrado, pode clicar em OK para seguir em frente.
Ainda na aba Access, clicando no botão Relay mais em baixo da tela, é informado quem pode acessar, ou quem é negado a acessar, o serviço. Para facilitar a configuração, informamos ao SMTP que todos podem ter acessos, com excessão do domínio, IP específico ou Range de IPs, que são adicionados à esta regra. Não colocaremos nenhuma regra de bloqueio aqui (mas fique a vontade para colocar, caso queira). Após configurar o Relay Restriction, clique em OK.
Agora na aba Delivery, vá até o botão Outbound Security e altere a opção de Anonymous access para Basic Authentication informando o endereço de e-mail e a senha que será utilizado para fazer o disparo… (aqui até me lembro de um fato engraçado que aconteceu a um tempo atrás, mas é melhor nem comentar pra não perder a amizade). Também marque a caixa de TLS encryption. Essa marcação informa que SSL será usado para criptografar informações durante a saída do e-mail. Como estamos usando uma conta do gmail (sim, o Codificando.Net é uma conta do gmail) não é preciso instalar o certificado digital. Caso você esteja fazendo o teste com uma conta própria, pode ser necessário fazer esta instalação. Clique em OK após informar usuário e senha.
Ainda na aba Delivery, mas no botão Advanced, informamos o smtp do gmail (lembrando, novamente, que o provedor original do e-mail do Codificando .Net é o gmail) e depois clicamos em OK.
Feito isso, na teoria, seu ambiente possui um servidor de SMTP configurado e está preparado para disparar e-mails. Para testar, fiz o download de um software do codeplex (http://smtptest.codeplex.com/) que testa o SMTP. O preenchimento do software é simples, e usa o recurso que acabamos de configurar.
Veja em amarelo os itens que preenchi, para enviar o e-mail. Reparem que não foi usado o e-mail e senha de envio, visto que já está configurado no SMTP. Esta faixa vermelha onde está o Host, é o nome do servidor que você configurou o serviço de SMTP. O campo From precisa ser preenchido, mas não é usado para o disparo. O serviço do SMTP usa o email configurado (Codificando.Net) para realizar o disparo.
Se você clicar em Test e aparecer a mensagem “Email enviado com sucesso”, confira sua caixa de entrada que foi informada no campo To, e veja se o e-mail está lá.
Agora é contigo, configure seus serviços internos para usar o disparo de emails através do SMTP que acabou de configurar…