Analyse services internes - ArthurSchamroth/ProjetAdminII GitHub Wiki
Service interne
-
Les services internes doivent comprendre différents services pour ce projet.
- Une base de donnée
- Un SOA interne
- Un résolveur interne
- Un service web
-
Les différentes possibilités :
- Pour le DNS
- Nous aurons besoin d’un résolveur et un SOA interne.
- Pour le serveur Web
Les possibilités les plus connues concernant les serveurs Web sont Nginx, Apache et IIS
- Nginx : Comme Apache, Nginx est un service d’hébergement web. C’est un serveur web open source et il est le plus utilisé après Apache. Nginx dépasse petit à petit Apache sur certains points.
- Apache : Apache est un serveur web open source utilisé dans différents systèmes d’exploitations comme Unix et Windows. Les serveurs sous Apache sont souvent utilisé avec des bases de données MySQL.
- IIS : Il est compris dans Windows directement et est développé par Microsoft. C’est le troisième service web le plus utilisé après Apache et Nginx. Le défaut d’IIS est qu’il est réservé à une utilisation sous Windows.
- Pour la base de données
- Nous utiliserions une base de données MySQL car celle-ci nous a été demandée dans le cahier de charge du projet. Elle se situera dans le réseau interne car il est plus simple de la rapprocher des services qui l'utilise régulièrement tel que le web ERP.
- Web ERP
- Le site web interne au réseau de l'entreprise doit être dynamique, la base de données sera utilisée en temps réel. Un des langages les plus utilisé en développement web est PHP. Il nous permettra de faire des requêtes à la base de données. PHP est un langage de backend, il fait la liaison entre le frontend et la base de données. PHP est souvent utilisé avec Apache lorsqu'il faut mettre en place des serveurs "tout en un" comme un WAMP, qui reprend Windows, Apache, MySQL et PHP.
- Pour le DNS
Listing et Description
- MaraDNS : Il s'agit d'un serveur DNS présent, dans sa dernière version stable, sur les dépôts officiels de Debian. Il s'agit également d'un serveur autoritaire et non d'un serveur récursif, ce qui signifie qu'il s'agira du dernier de tous les serveurs DNS interrogés à donner l'IP finale recherchée par tout le processus.
- PowerDNS : Il s'agit d'un serveur libre de nom de domaine (Licence GNU GPL). Il permet la gestion des noms de domaines directement depuis une base de données PostgresSQL ou MySQL.
- OpenDNS : Il s'agit d'un service gratuit de redirection DNS. Il se consulte via deux serveurs DNS récursif accessibles sous certaines IP anycasts.
- BIND : Il s'agit d'un serveur DNS agissant sur deux points importants, il s'agit d'un résolveur récursif dans son réseau et il agit également comme serveur de noms avec autorités dans les différents domaines de ce même réseau.
Choix, descriptif et justification de la solution
Pour la mise en place de ce service, nous avons décidé de travailler avec le serveur DNS BIND car il s'agit du serveur DNS le plus utilisé, en effet, celui-ci est utilisé dans 79% des cas sur internet.
Il s'agit également d'un serveur avec lequel nous avons déjà eu l'occasion de travailler et que nous commençons à connaitre.
Nous pensons que son utilisation nous permettra de réaliser l'ensemble de ce service mais également dans les autres dans lesquels il sera également impliqué. En effet, nous devrons également travailler avec Docker et l'utilisation des deux services semblent totalement compatibles.
De par sa popularité, nous avons constaté qu'une multitude de documentations existait quant à son utilisation, cela nous aidera par la suite lors de son implémentation.
Comparaison différentes solutions
| Noms DNS | Résolveur Récursif | Serveur Autoritaire | Popularité |
|---|---|---|---|
| MaraDNS | Non | Oui | |
| PowerDNS | Non | Non | |
| OpenDNS | Oui | Non | |
| BIND | Oui | Oui | Très répandu |
Modélisation Réseau
Schémas Logique
Explication Schéma
Afin de modéliser notre réseau, nous avons décidé de diviser celui-ci en 3 zone bien distinctes chacune contenant des éléments essentiels au reste du réseau.
- L'Entreprise : Il s'agit d'une zone composée de 5 sous-réseaux représentant les 5 domaines de travail des employés, la direction, les commerciaux, la comptabilité, le secrétariat et l'atelier.
- La DMZ : Il s'agit d'une zone contenant les éléments accessibles depuis le réseau externe (via internet) et depuis le réseau interne. Cette zone est protégée des deux cotés par des pare-feu.On y retrouve des services tels que SOA externe, le Web (Site vitrine et des revendeurs), le service Mail et le service VoIP.
- Le réseau interne : Il s'agit des services utilisables depuis la société et qui sont modifiables par celle-ci. On y retrouve le ERP (Intranet), le service SOA interne, la base de données et le résolveur DNS.Les routeurs sont quant à eux présents pour "gérer" les différentes zones et permettre la mise en place des différents sous-réseaux dans celles-ci.Nous retrouvons un réseau externe, il regroupe les visiteurs du site vitrine ainsi que les revendeurs qui ont accès au second site Web dédié à la revente.
Justifications
- DNS
- Pour le DNS, Bind permet de configurer un résolveur et un SOA. Nous devrons donc mettre en place moins de services différents. La même technologie serait utilisée en interne et en externe ce qui facilite la gestion et la configuration.
- Serveur Web
- Le serveur web Apache est l'un dès plus fiable et les problèmes peuvent être rapidement réglés du à sa grande utilisation.
Elément de configuration à implémenter
- Zone DNS en interne:
- Un SOA interne
- La zone interne n'est pas accessible depuis l'extérieur
- Tous les services internes sont référencés dans la zone interne
- Résolution DNS:
- Résolveur DNS installé et configuré
- Résolveur DNS accessible uniquement en interne
- Intranet:
- Site accessible uniquement en interne
- Site affiche une page HTML
- Utilisation d'une base de donnée en MySQL
- Utilisateurs:
- Les postes sont chacun sur un conteneurs docker
- Chaque poste a accès au réseau interne et externe