Microsoft IIS peut très bien remplir le rôle d’un serveur SMTP, mais cela nécessite quelques étapes pour être configuré. Heureusement pour vous, j’ai configuré un serveur relais SMTP IIS et documenté toutes les étapes!
Dans cet article, nous couvrirons toutes les étapes nécessaires pour configurer avec succès un serveur relais SMTP afin d’envoyer un e-mail sortant avec Office 365. Techniquement, nous utiliserons ce relais SMTP pour rediriger les e-mails vers Office 365 ; cela peut tout aussi bien fonctionner rapidement à des fins de livraison d’e-mails généraux via un relais SMTP.
Prérequis
Pour configurer IIS et suivre avec moi, assurez-vous d’avoir une machine Windows Server 2016 disponible. Je supposerai également que vous êtes connecté au serveur en tant qu’administrateur.
Installer la fonctionnalité IIS SMTP Server de Windows
La première tâche que vous devrez effectuer pour configurer un relais SMTP IIS est d’installer le serveur SMTP IIS. Vous devrez installer la fonctionnalité Serveur SMTP de Windows.
Utilisation de Server Manager
Si vous n’êtes pas familier avec l’installation des fonctionnalités Windows via Server Manager, consultez cet article intitulé Installer ou désinstaller des rôles, des services de rôle ou des fonctionnalités.
Utilisation de PowerShell
Installer la fonctionnalité du serveur SMTP supprime beaucoup de clics. Ouvrez une console PowerShell en tant qu’administrateur et exécutez la commande ci-dessous :
Attendez que l’installation se termine. Vous devriez voir une sortie similaire à ceci.

Importez un certificat (pour TLS uniquement)
Si vous envoyez des e-mails via TLS (Office 365), vous devez importer un certificat SSL dans le magasin de certificats personnels de la machine locale du serveur avant de configurer le serveur SMTP IIS. Vous pouvez sauter cette étape si votre relais SMTP Office 365 ne prend pas en charge le TLS.
Si vous n’avez pas de certificat, vous pouvez en obtenir un via votre PKI interne (si vous en avez un) ou un certificat public en utilisant des services tels que LetsEncrypt, Digicert, etc.
Une fois que vous avez le certificat, vous devrez l’importer dans le magasin de certificats personnels de la machine locale. Si vous ne savez pas comment importer des certificats à l’aide de MMC Certificates, consultez Importer et exporter un certificat – Microsoft Windows.
Lorsque la procédure est réussie, vous devriez obtenir une fenêtre de confirmation comme celle-ci. Cliquez sur OK (1) pour confirmer.

De retour dans la fenêtre principale de la console, actualisez le dossier Personnel > Certificats et vous devriez pouvoir voir le certificat importé.
Validez le certificat.
Une fois importé, assurez-vous de vérifier que la chaîne de certificats est complète et qu’il n’y a pas d’erreurs. Si tout va bien, vous devriez pouvoir ouvrir le certificat et voir que le champ Valide à partir de est à jour et qu’il y a une clé privée associée au certificat. Un exemple est indiqué ci-dessous.

Sur l’onglet Chemin de certification, vous devriez également voir un État du certificat indiquant que le certificat est OK, comme indiqué ci-dessous.

Configurez le serveur SMTP IIS
Vous avez réussi à installer le serveur SMTP à ce stade. Mais avant de pouvoir l’utiliser, les paramètres du serveur doivent d’abord être configurés.
Le serveur SMTP fonctionne en mode de compatibilité IIS6 et ne prend pas en charge PowerShell intégré. Cela signifie que vous devez configurer les paramètres manuellement à l’aide de la console de gestion IIS6.
Allez dans Démarrer -> Exécuter et tapez inetmgr6, puis appuyez sur Entrée. Cela ouvrira la console IIS 6.
Une fois la console ouverte, cliquez avec le bouton droit de la souris sur [Serveur virtuel SMTP n°1] (1), puis sélectionnez Propriétés (2).

Dans la fenêtre Propriétés, cochez Activer la journalisation (1), puis cliquez sur Propriétés (2).

Accédez à l’onglet Avancé et cochez toutes les cases de la liste (1), puis cliquez sur OK (2).

De retour dans la fenêtre Propriétés, allez à l’onglet Livraison et cliquez sur Avancé (1).

Dans la fenêtre Livraison avancée, saisissez le nom de domaine complet (1) que vous souhaitez utiliser pour le serveur de messagerie SMTP de destination. Il n’est pas nécessaire qu’il soit identique au FQDN de l’ordinateur lui-même. Si vous configurez ce serveur SMTP pour une utilisation avec Office 365, dans le champ Smart host (2) , définissez votre point de terminaison MX Office 365, puis cliquez sur OK (3).

Ajoutez des adresses IP autorisées dans le serveur SMTP IIS
Maintenant, si vous avez un appareil que vous souhaitez tester, vous devez d’abord ajouter son adresse IP aux restrictions de relais. Pour cet exemple, l’adresse IP 192.168.0.3 sera ajoutée aux restrictions de relais. Cette adresse IP appartient à un ordinateur qui se trouve dans le même réseau que le serveur.
Pour ajouter une adresse IP autorisée dans les restrictions de relais, allez dans l’onglet Accès et cliquez sur Relais (1).

Dans la fenêtre Restrictions de relais, cliquez sur Ajouter (1).

Ensuite, saisissez l’adresse IP (1) que vous souhaitez autoriser, puis cliquez sur OK (2).

De retour dans la fenêtre Restrictions de relais, vérifiez que l’adresse IP est ajoutée à la liste, puis cliquez sur OK (1) et OK pour fermer la fenêtre des propriétés.

Vérifiez que le certificat est détecté par le serveur SMTP et activez le chiffrement TLS
Si votre serveur de relais envoie des e-mails sortants via TLS, vous devez vérifier que le certificat est visible par le serveur SMTP IIS et activer le chiffrement TLS.
Sur l’onglet Accès des propriétés du serveur SMTP, vous devriez voir un message indiquant « Un certificat TLS est trouvé avec une date d’expiration : XXXXXX ». Si c’est le cas, tout est en ordre.

Ensuite, cliquez sur l’onglet Remise, cliquez sur Sécurité sortante (1), cochez la case Chiffrement TLS (2), cliquez sur OK (3).

Cela conclut les étapes de configuration du serveur SMTP IIS.
Testez le serveur relais de messagerie SMTP IIS
À ce stade, votre serveur SMTP devrait être configuré et prêt à relayer les courriels. La prochaine étape consiste à le tester. Vous devriez maintenant tester l’envoi d’un courriel via le relais SMTP pour confirmer que le serveur SMTP récepteur reçoit le message.
Testez avec le répertoire de collecte
Lorsque le serveur SMTP IIS est installé, il crée un dossier sur le serveur à l’emplacement C:\inetpub\mailroot\Pickup. Ce répertoire est l’endroit où le service SMTP récupère les courriels nouvellement soumis pour les traiter avant de les déplacer vers le répertoire Queue.
Pour tester en utilisant cette méthode, créez un fichier texte avec un contenu similaire à ceci :
N’oubliez pas de changer les valeurs De et À par les vôtres.
Enregistrez maintenant ce fichier quelque part en dehors du répertoire de collecte sous le nom mail.txt.
Une fois que vous avez enregistré le fichier, copiez-le et collez-le dans le dossier C:\inetpub\mailroot\Pickup. Si cela réussit, le fichier devrait disparaître rapidement. Cela signifie que le service SMTP l’a récupéré et a commencé le traitement du message.
Après quelques secondes à une minute, vous devriez recevoir l’e-mail envoyé à l’adresse e-mail spécifiée définie dans mail.txt.
Testez avec PowerShell
Dans ce test, vous utiliserez PowerShell à partir de l’ordinateur dont l’adresse IP a été ajoutée dans la section Ajouter des IP autorisées dans le serveur SMTP IIS.
Ouvrez une console PowerShell et copiez/collez le code ci-dessous. Assurez-vous de modifier les valeurs des paramètres From
, To
et SmtpServer
. Selon la façon dont vous avez configuré le serveur relais ci-dessus, vous pouvez utiliser l’un des exemples ci-dessous pour tester une configuration avec ou sans TLS.
Résumé
Dans cet article, vous avez appris comment configurer un serveur relais SMTP IIS pour la livraison des e-mails des destinataires à partir de Office 365. Nous avons couvert la configuration d’un serveur SMTP avec ou sans TLS en utilisant une combinaison de l’interface graphique et de PowerShell. Nous avons ensuite testé notre configuration en utilisant PowerShell pour confirmer que tout fonctionne correctement.