Il est temps d’améliorer la sécurité de notre infrastructure Exchange 2016. Nous allons implémenter un serveur de rôle Tranport Edge. L’objectif du rôle Transport Edge est de fournir une protection supplémentaire pour notre infrastructure Exchange Server (antivirus, antispam, attaques DDoS, cheval de Troie…etc.)
Machine virtuelle nécessaire pour ce chapitre :
- AD-SERVER : Ok – voir ici
- EX-SERVER1 : Ok – voir ici
- Firewall pfSense : Ok – voir ici
- Règle pfSense Edge : NOk
- EX-EDGE : NOk
- EX-DAG : NOk
Prérequis rôle Transport Edge
Le rôle Transport Edge est une sorte de passerelle SMTP qui permet de gérer le flux de messagerie internet entrant et sortant. Une petite voix me dit que vous n’aimez pas trop lire alors, je vais éviter de faire un roman. Voici ce que vous devez savoir :
- Il doit être installé dans la DMZ
- Il ne peut pas être déployé sur un serveur qui héberge déjà un autre rôle Exchange (il faut donc un deuxième serveur)
- Il n’appartient pas au domaine (pixelabs.lan) Active Directory (WORKGROUP)
- Il doit accéder aux données de votre domaine Active Directory en lecture seule (AD LDS, EdgeSync, réplication unidirectionnelle)
- Il doit être configuré avec le suffixe DNS principal (pixelabs.lan)
- Il faut pointer votre MX public vers le serveur Edge
- Il faut installer le Framwork .NET 4.5+
En général, il faut placer le serveur Edge entre deux pare-feu (Routeur). Il faut donc équiper le serveur Edge de deux cartes réseau, une carte vers le firewall externe-DMZ et l’autre vers le firewall interne-DMZ.
Architecture Edge / deux firewall
Voici un petit schéma avec deux firewall pour mieux comprendre :
Architecture Edge / un firewall
Dans mon cas, je n’ai pas besoin de deux pare-feu. Nous allons simplement utiliser le fameux firewall pfSense. Il est puissant et largement suffisant. Cependant, il faut autoriser les mêmes ports que sur le schéma ci-dessus. Voici donc la nouvelle architecture que nous allons mettre en place.
Machine Virtuelle pfSense
L’installation de pfSense et la configuration des 3 interfaces est ici : VM_Firewall_pfSense
- WAN (192.168.1.0/24)
- LAN (172.16.1.0/16)
- DMZ (10.0.0.0/8)
L’installation de Windows Server 2016 pour les 3 VMs est ici : VM Windows Server 2016
- AD-SERVER
- EX-SERVER1
- EX-EDGE
Configuration AD-SERVER
Depuis Virtualbox, avant de démarrer la VM :
- Configuration de la VM
- Réseau > Carte 1
- Mode d’accès réseau : Réseau interne
- Nom : LAN
Démarrez la VM et configurer le réseau :
- Ma configuration réseau :
- IP : 172.16.1.4
- MASK : 255.255.0.0
- GW : 172.16.1.1
- DNS : 172.16.1.4
- Rôle à installer : AD DS, DNS
- Domaine : pixelabs.lan
Préparer Active Directory pour Exchange :
- AD-SERVER : Ok – voir ici
Configuration EX-SERVER1
Depuis Virtualbox, avant de démarrer la VM :
- Configuration de la VM
- Réseau > Carte 1
- Mode d’accès réseau : Réseau interne
- Nom : LAN
Démarrez la VM et configurer le réseau :
- Configuration réseau :
- IP : 172.16.1.2
- Mask : 255.255.0.0
- GW : 172.16.1.1
- DNS : 172.16.1.4
- Domaine : pixelabs.lan
Installez Exchange Server 2016 :
- EX-SERVER1 : Ok – voir ici
Remarque : Comme vous pouvez le constater sur l’image ci-dessus, j’ai recommencé le projet Exchange depuis le début, mais cette fois-ci avec le Firewall pfSense en plus. J’ai renommé EX-SERVER2 en EX-DAG.
Configuration EX-EDGE
Installez Windows Server 2016 de la même façon que les autres :
- Mettez à jour le serveur
- Renommer le serveur : EX-EDGE
- Ne pas joindre le serveur au domaine (pixelabs.lan)
Arrêtez la VM, depuis le menu Virtualbox
- Configuration de la VM
- Réseau > Carte 1
- Mode d’accès réseau : Réseau interne
- Nom : DMZ
Démarrez la VM et configurer le réseau :
- Configuration réseau :
- IP : 10.0.0.2
- MASK : 255.0.0.0
- GW : 10.0.0.1
- DNS : 172.16.1.4
- Domaine : pas de domaine (WORKGROUP)
Nous allons préparer le terrain avant de passer à l’installation du rôle Edge Transport.
Nom de domaine (MX)
Faisons les choses étape par étape. Après avoir installé et configuré mon contrôleur de domaine et le serveur Exchange 2016 (J’ai simplement recommencé le projet Exchange). J’ai réussi à envoyer des messages en interne et vers l’extérieur (Gmail) mais impossible de recevoir et c’est normal, car le domaine (MX) n’est pas encore configuré avec la nouvelle architecture. Nous allons donc y remédier de suite.
Avant : Exchange sans firewall : Ok
OVH – MX mailhost.pixelabs.fr vers > IP_BBox > Redirection de ports / SMTP 25/tcp vers > IP_Exchange
Avec la nouvelle architecture : Exchange avec firewall pfSense : Impossible de recevoir encore
OVH – MX mailhost.pixelabs.fr vers > IP_BBox > Redirection de ports / SMTP 25/tcp vers > IP_WAN_pfSense
La partie jaune : à faire sur votre hébergeur. Pour OVH, la procédure est ici enregistrement MX
La partie bleu : à faire sur votre box. Si vous avez une Bbox, voir ci-dessous.
Redirection de ports (BBOX)
Connectez vous à votre Box (c’est facile à faire chez free également).
- Cliquez sur SERVICES DE LA BOX > Redirection de ports :
Dans la partie NAT & PAT, cliquez sur AJOUTER UNE RÈGLE :
- Nom de la règle : TCP 25 (ce que vous voulez)
- Protocole : TCP
- Equipement : adresse WAN pfSense doit être présente dans la liste : 192.168.1.60
- Port externe : 25
- Port interne : 25
Cliquez sur APPLIQUER (je n ‘ai pas eu besoin de redémarrer la box). Il reste encore une étape à faire avant d’arriver au bout.
Port Forwarding pfSense
Je vais expliquer de façon très simple, le port 25/TCP est « arrivé » sur l’interface WAN. Il faut donc le rediriger vers la zone DMZ (là ou se trouve donc EX-EDGE). Mais avant, je vais le rediriger vers le réseau LAN directement afin de tester l’envoi et la réception des messages depuis l’extérieur. Le rôle Edge Transport n’est pas encore installé, je préfère tester pour être sûr que le serveur Exchange fonctionne avant de passer à la suite.
Je fais un test avant de rediriger le port SMTP (25/tcp).
J’envoi un message sur ma boite Gmail via le compte utilisateur Adam Arouine (OWA) depuis le contrôleur de domaine AD-SERVER :
J’ai bien reçu le message :
Et quand je réponds :
Failed, c’est normal. Le message (flux SMTP) arrive à l’interface WAN, il ne trouve pas de porte d’entrée, il ne connait pas l’adresse, le message est détruit et un mail de non-remise est envoyé sur Gmail…
Pour régler le problème, nous allons donc faire du Port Forwarding (Transfert de port) sous pfSense. Depuis le contrôleur de domaine AD-SERVEUR (ou depuis la machine hôte si la connexion est autorisée), connectez-vous à l’interface web de pfSense :
http://172.16.1.1
- Allez dans le menu : Pare-feu > NAT > Transfert de port
- Cliquez sur le bouton vert : Ajouter
- Interface : WAN
- Protocole : TCP
- Destination : WAN address
- Plage de port de destination :
- Du port : SMTP
- Au port : SMTP
- IP de redirection cible : 172.16.1.2 (EX-SERVER1)
- Port de redirection cible : SMTP
- Description : SMTP WAN TO LAN
- Enregistrer
- Cliquez sur le bouton vert : Appliquer les modifications
Je renvoie le même message et cette fois-ci, l’utilisateur Adam Arouine a bien reçu le message.
Remarque : Une fois le rôle de Transport Edge installé et configuré, il faut modifier cette règle afin de rediriger le flux SMTP vers le serveur EX-EDGE. (IP de redirection cible : 172.16.1.2 en 10.0.0.2). Nous le ferons dans le prochain chapitre.
Allez, je m’arrête ici les amis. Nous verrons dans le prochaine chapitre la configuration des ports nécessaires sous le firewall pfSense.
Bonne journée et à bientôt.