Analyse service Réseau interne - CardinPatson/SysAdmin GitHub Wiki

Besoins techniques

L'entreprise WoodyToys comporte plusieurs postes :

  • un atelier où sont fabriqués les jouets
  • un hangar de stockage d’où partent les produits vers les revendeurs
  • le bureau des comptables
  • le bureau des commerciaux
  • le bureau de la secrétaire
  • le bureau du directeur

Tous ces postes doivent être accessibles en interne mais doivent également pouvoir accéder à Internet.

Les répertoires de travail personnels des employés doivent être aisément accessibles ainsi que les répertoires partagés pour les différents départements. Il faut également un répertoire commun à toute l'entreprise. Tous les fichiers ne sont accessibles qu'au sein de l'entreprise et bien entendu, sécurisés de manière adéquate.

L'entreprise souhaite être autonome pour la résolution de noms.

Un contrôle du trafic Web généré par les employés est souhaitable.

Pour ce faire, il faudra donc

  • Mettre en place un SOA interne, responsable de la zone interne M1-3.ephec-ti.be
  • Penser à un plan d'adressage adéquat
  • Mettre en place un resolver, responsable des requêtes des employés
  • Mettre en place un serveur de fichiers partagés

Ces 4 serveurs seront placés en zone sécurisée et n'ont pas accès à internet pour des raisons de sécurité. Les requêtes des employés vers internet seront gérées par un forwarder placé en zone DMZ.

Qu'est-ce qu'un serveur de fichiers?

Un serveur de fichiers est un référentiel de stockage central qui permet aux employés d'accéder aux fichiers qui y sont stockés et de collaborer quotidiennement sur le travail lié auxdits fichiers. Il permet également la sauvegarde de ces fichiers

Quels sont les avantages d'un serveur de fichiers?

  • une organisation simple de l’ensemble du stock de fichiers,
  • une visibilité accrue,
  • un partage simple des fichiers,
  • une collaboration sans conflits entre les versions,
  • une décharge de l’ordinateur client (un espace de stockage quasiment illimité),
  • un accès à distance possible via WebDAV, (S)FTP ou SCP,
  • la main sur la protection et la sécurité des données.

Identification et comparaison des solutions possibles

Descriptif des solutions possibles pour le résolver et le SOA interne

Bind9

C'est le serveur le plus largement déployé. Il s'agit d'un produit logiciel gratuit, distribué avec la plupart des plateformes Unix et Linux. Son composant le plus important, nommé named, remplit les deux principaux rôles de serveur DNS, agissant en tant que serveur de noms faisant autorité pour les zones DNS et en tant que résolveur récursif dans le réseau. BIND9 est une réécriture complète de BIND avec une prise en charge complète de DNSSEC en plus d'autres fonctionnalités et améliorations.

Unbound

Unbound est un serveur DNS récursif et de mise en cache conçu pour des performances élevées. Il a été publié le 20 mai 2008 (version 1.0.0) en tant que logiciel libre sous licence BSD par NLnet Labs. Unbound a supplanté le Berkeley Internet Name Daemon ( BIND ) en tant que serveur de noms par défaut du système de base dans FreeBSD et OpenBSD , où il est perçu comme plus petit, plus moderne et plus sécurisé pour la plupart des applications.

PowerDNS

PowerDNS est un programme de serveur DNS , écrit en C++ et sous licence GPL . Il fonctionne sur la plupart des dérivés d' Unix . PowerDNS propose un grand nombre de backends différents allant des simples fichiers de zone de style BIND aux bases de données relationnelles et aux algorithmes d'équilibrage de charge / basculement . Un récurseur DNS est fourni en tant que programme séparé.

Simple DNS Plus

Simple DNS Plus est un produit de serveur DNS commercial qui s'exécute sous Microsoft Windows en mettant l'accent sur une interface graphique simple à utiliser. La maintenance du logiciel semble s'être relâchée ces dernières années.

Knot DNS

Knot DNS est un serveur DNS faisant autorité et un logiciel libre de CZ.NIC. Knot DNS vise à être un serveur DNS rapide et résilient utilisable pour les services d'infrastructure (racine et TLD) et d'hébergement DNS. Knot DNS prend en charge la signature DNSSEC et héberge entre autres la zone racine (serveurs de noms racine B, K et L), plusieurs domaines de premier niveau.

djbdn

Le progiciel djbdns a été créé par Daniel J. Bernstein en réponse à ses frustrations face aux failles de sécurité répétées dans le logiciel DNS BIND largement utilisé. En 2004 , le composant tinydns de djbdns était le deuxième serveur DNS le plus populaire en termes de nombre de domaines pour lesquels il était le serveur faisant autorité, et le troisième en termes de nombre d'hôtes DNS qui l'exécutaient. Bien que djbdns ne prenne pas directement en charge DNSSEC , il existe des correctifs tiers pour ajouter la prise en charge de DNSSEC au composant tinydns faisant uniquement autorité de djbdns.

dnsmasq

dnsmasq est un logiciel gratuit fournissant la mise en cache du système de noms de domaine (DNS) , un serveur DHCP ( Dynamic Host Configuration Protocol ) , des fonctionnalités d'annonce de routeur et de démarrage réseau, destiné aux petits réseaux informatiques. dnsmasq a de faibles exigences en matière de ressources système, peut fonctionner sur Linux , BSD , Android et macOS , et est inclus dans la plupart des distributions Linux . Par conséquent, il est présent dans de nombreux routeurs domestiques et certains gadgets de l'IoT et est inclus dans Android.

Comparatif

Solution Linux MacOS Windows DNSSEC (1) DoH (2) IPv6 Prix par an Logiciel libre Autres
Bind9 oui Oui Oui Oui Oui Oui Gratuit Oui Largement répandu, complet, config aisé
Unbound Oui Oui Oui Oui Oui Oui Gratuit Oui Rapide, sécurisé, peu de documentation
PowerDNS Oui Beta Non Oui Oui Oui Gratuit Oui Sécurisé, config facile
Simple DNS Plus Non Non Oui Oui Oui Oui $79-$379 Non Basé sur le framework Microsoft.NET
Knot DNS Oui Oui Non Oui Oui non renseigné Gratuit Oui Chargement très rapide des zones au démarrage
djbdns Oui Oui Non Partiel Partiel non renseigné Gratuit Oui Correctifs tiers pour prise en charge de DNSSEC
dnsmasq Oui Oui Non Oui Oui non renseigné Gratuit Oui Support faisant autorité limité

(1) Le DNSSEC ( Domain Name System Security Extensions ) est une suite de spécifications d'extension de l' Internet Engineering Task Force (IETF) pour sécuriser les données échangées dans le système DNS dans les réseaux de protocole Internet (IP). Le protocole fournit une authentification cryptographique des données, un déni d'existence authentifié et l'intégrité des données, mais pas la disponibilité ou la confidentialité.

(2) DoH : Le DNS sur HTTPS est un protocole permettant d'effectuer une résolution DNS à distance via le protocole HTTPS . Un objectif de la méthode est d'augmenter la confidentialité et la sécurité des utilisateurs en empêchant l'écoute clandestine et la manipulation des données DNS par des attaques man-in-the-middle en utilisant le protocole HTTPS pour crypter les données entre le client DoH et le résolveur DNS .

Solution choisie et justification

Bind9 bénéficie de plusieurs avantages importants, qui en font de loin le serveur DNS le plus populaire sur Internet. Il bénéficie dès lors d'une documentation très fournie ce qui est loin d'être négligeable dans notre cas.

  • Sa large utilisation vient du fait que Bind9 est une norme de facto pour le DNS dans les systèmes Linux et est activement pris en charge par une grande communauté open source.
  • Bind9 est utilisé dans des millions de serveurs DNS de production et est connu pour son fonctionnement stable et prévisible.
  • Bind9 prend en charge Linux, NetBSD, FreeBSD, OpenBSD, macOS et Windows
  • Bind9 est l'un des seuls serveurs DNS qui couvre toutes les fonctionnalités DNS des base.

Bind9 fournit également des outils qui aident à gérer un système DNS, notamment :

  • dig - permet aux utilisateurs d'exécuter des requêtes DNS et d'afficher la sortie du serveur.
  • host - convertit les noms d'hôtes en adresses IP.
  • nslookup - interroge les serveurs DNS pour obtenir des informations sur les hôtes et les domaines.
  • Remote Name Daemon Control (rndc) - permet aux administrateurs de contrôler toutes les opérations du serveur de noms via un canal crypté.

Descriptif des solutions possibles pour le serveur de fichiers partagés

Bien que l'entreprise ne souhaite pas devoir dépendre de fournisseurs de services extérieurs, il est intéressant de mentionner le cloud public comme alternative au serveur de fichiers dédié en vue d'une éventuelle transition.

Les avantages du cloud public

  • Flexibilité et évolutivité
  • Pas d'entretien et peu de connaissances techniques
  • Infrastructure informatique sécurisée
  • Back-up efficace

Il faudra néanmoins prendre quelques éléments en considération tels que :

  • La connexion internet
    • Il est indispensable que la connexion soit rapide et fiable
  • Considérations juridiques
    • Les données d'entreprise seront délocalisées dans le cloud du fournisseur, probablement à l'étranger (ex: RGPD)
  • Solutions standard ou travail sur mesure
    • Quel type de cloud en fonction des besoins de l'entreprise

Les avantages du cloud privé

Les avantages sont similaires au cloud public mais on parle ici d'une architecture propriétaire.

  • Libre service
  • Évolutivité
  • Modification des ressources à la demande
  • Création de machines multiples pour les tâches complexes (Big Data) Lee services du cloud privé sont protégés derrière un pare-feu et offre dès lors une sécurité supplémentaire ainsi qu'un contrôle direct sur ses données.

Malgré ces avantages indéniables, le cloud privé a lui aussi ses limites.

  • Personnel et maintenance qualifiés requis
  • Dépenses supplémentaires
  • Ressources matérielles supplémentaires

Samba

SMB (Server Message Block) est un protocole permettant l'accès à des fichiers, à des répertoires complets et à d'autres ressources du réseau (imprimantes, routeurs...). Il permet également l'échange d'informations entre les différents processus d'un système. Ce protocole étant initialement utilisé sous windows, Samba permet l’implantation du protocole SMB dans les systèmes d’exploitation Linux et Unix.

Onionshare

OnionShare est une application d'une quarantaine de Mo, qui s'installe comme n'importe quelle autre, sous Linux, macOS et Windows. Open source, son code est disponible sur GitHub en licence GPL v3.

Filezilla

FileZilla Server est un serveur FTP. Il est écrit en C++ et est distribué sous la licence publique générale GNU.

CyberDuck

Cyberduck est un logiciel client FTP et SFTP pour la plateforme Mac OS X – depuis décembre 2010 pour Microsoft Windows – développé par David Kocher et distribué selon les termes de la licence GNU GPL.

SmartFTP

SmartFTP est un client FTP qui permet de transférer des fichiers entre un ordinateur local et un serveur externe. Parmi les protocoles supportés : FTPS, SFTP, WebDAV, Amazon S3, Blackblaze B2, Google Drive, OneDrive, SSH et Terminal.

Comparatif

Solution Protocole OS OpenSource Interface Documentation Caractéristique
Samba SMB/CIFS Linux/macOS/Windows Oui plusieurs disponibles Très complète Interopérabilité entre plateformes et serveur LDAP inclus
OnionShare GPG/OTR Linux/macOS/Windows Oui Simpliste : fenêtre unique + 4 onglets/Navigateur TOR obligatoire Correcte Anonymat garanti
Filezilla Server FTP/FTPS Windows Oui Assez ergonomique Correcte Possibilité de créer une multitude de comptes
Cyberduck FTP/SFTP/WebDAV/... macOs/Windows oui Easy-to-use Correcte Un petit canard sympa
SmartFTP FTP/SFTP/WebDAV/... Windows Non Très complète Correcte Planification de téléchargement de fichiers

Au vu du tableau comparatif et des doléances du client, nous avons choisi d'implémenter Samba

Eléments de configuration

Pour installer la solution, voici les étapes qu'il faudra suivre :

  • Implémenter le SOA interne avec ses différentes fichiers de configuration et ses fichiers de zone.
    • Aller dans le fichier named.conf pour le modifier
    • Paramétrer les options
    • Créer le fichier de zone interne db.intranet.woody avec ses instructions
    • Créer le fichier reverse 0.16.172.in-addr.arpa avec ses instructions
  • Implémenter le resolver
    • Aller dans le fichier named.conf pour le modifier
    • Paramétrer les options
    • Toujours dans le fichier named.conf, paramétrer la zone interne intranet.woody et la zone reverse
  • Implémenter Samba
    • Aller dans le fichier smb.conf
    • Paramétrer les options
    • Créer le fichier shares.conf avec ses instructions

Sources

https://en.wikipedia.org/wiki/Comparison_of_DNS_server_software

https://ns1.com/resources/bind-dns-pros-cons-and-alternatives

https://doc.ubuntu-fr.org/bind9#:~:text=Le%20service%20DNS%20(Domain%20Name,se%20souvenir%20des%20adresses%20IP.

https://www.nlnetlabs.nl/projects/unbound/about/

https://doc.ubuntu-fr.org/unbound

https://doc.ubuntu-fr.org/pdns

https://www.linuxtricks.fr/wiki/dnsmasq-le-serveur-dns-et-dhcp-facile-sous-linux

https://knot.readthedocs.io/en/latest/introduction.html#what-is-knot-dns

https://cr.yp.to/djbdns.html

https://simpledns.plus/

https://www.ionos.fr/digitalguide/serveur/know-how/fileserver/

https://www.ionos.fr/digitalguide/serveur/configuration/samba-server-une-plateforme-dinteroperabilite/

https://www.gladinet.com/fr/what-is-file-server/

https://www.techtarget.com/searchstorage/tip/Cloud-storage-advantages-Solving-five-common-IT-problems

https://www.departement-ti.com/2019/10/22/serveur-informatique-ou-cloud-lequel-utiliser/

https://www.nextinpact.com/article/30164/107562-onionshare-partager-fichiers-ou-publier-site-via-tor

https://fr.wikipedia.org/wiki/FileZilla_Server

https://fr.wikipedia.org/wiki/Cyberduck

https://whatis.techtarget.com/fr/definition/Cloud-prive-ou-Cloud-Interne-ou-Cloud-dEntreprise

https://filezilla-project.org/

https://doc.ubuntu-fr.org/samba_smb.conf