A quoi peut bien servir un reverse proxy (RP) ?
Comme à mon habitude, je vous renvoi vers une définition déjà complète présente sur internet
http://fr.wikipedia.org/wiki/Reverse_proxy
Grosso modo, pour ceux qui ne souhaiterai pas aller lire ;p il s’agit d’un élément physique ou logiciel, qui se positionne en amont des frontaux web et les protège ainsi des attaques extérieures.
Un RP représente également un seul point d’entrée des flux en provenance du web et à destination des serveurs web. Qui dit un seul point d’entrée dit réduction du nombre des @IP publique.
Nous pouvons également l’utiliser pour faire de la répartition de charge
Etc..
Dans mon cas précis, la société utilise sharepoint server 2010 comme outil collaboratif et les utilisateurs y accèdent via cette URL -> http://sharepoint
L’idée est de rendre cet intranet accessible également depuis l’extérieur. (Attention, je ne parle pas d’extranet …)
Pour parvenir à notre objectif nous avons plusieurs possibilités telles que:
choix 1) Mettre en place une redirection de port sur notre FW internet. port dest TCP 80 vers port destination TCP 80 à destination du serveur sharepoint.
choix 2) Faire la même chose mais en HTTPS port TCP 443
choix 3) Encore plus sécurisant, HTTPS + Reverse Proxy
Vous l’aurez compris nous allons nous intéresser au choix n°3 car:
– le choix 1 n’est pas envisageable car les mots de passe d’authentification circuleraient en clair sur interne
– le choix 2 est plus sécurisant mais expose toujours notre serveur web aux attaques provenant d’internet
Comme je vous l’expliquais plus haut, le RP est le meilleur choix car il va permettre de:
– masquer la véritable @IP de notre serveur
– de faire de la réécriture d’URL
– d’être en frontal et ainsi en cas d’attaque, le serveur web sharepoint ne sera pas impacté, l’accès depuis internet pourrait être down si le RP était amené a tomber mais l’accès en interne fonctionnerait encore.
– de faire de la répartition de charge si tant est qu’il y a plusieurs serveurs web derrière.
Les étapes à suivre:
- Choix du Reverse Proxy, ici on prend le module ARR de IIS (Application Request Routing)
- Création de la vm ou du serveur et on le positionne en DMZ svp !
- Choix du nom de domaine externe exemple sharepoint.masociété.com
- Configurer sharepoint pour qu’il réponde aussi bien en https:\\sharepoint qu’en https://sharepoint.masociété.com
- Si on veut faire les choses proprement on fait une demande de certificat à une entité externe telle que verisign (avec la liste exhaustive des noms sharepoint à prendre en compte) sinon on peut dans un premier temps commencer par faire une demande à l’autorité de certificat racine de son domaine.
- Lier ce certificat au serveur sharepoint mais aussi au RP (exportation du certificat puis importation)
- Créer la règle de redirection sur le RP
- Faire des tests 🙂 si tout va bien vous ne devriez pas avoir d’alerte de certificat puisqu’en frontal IIS ARR vous présentera le certificat publique
- Enjoy your public sharepoint site
vous aurez les screen shot quand j’aurai un peu plus de temps à consacrer à cet article! 🙂
A bientot
Votre commentaire