# Zeroshell

Zeroshell est une distribution Linux créée dans le but d'être très complète, conçue pour fournir des services réseaux sécurisés dans un réseau local. Elle a été développée par Fulvio Ricciardi pour être totalement administrable via une interface web. Fournie sous forme de Live CD, elle s'initialise en insérant le CD dans la machine cible et en la redémarrant. La connexion à l’interface d’administration se fait via un navigateur web pour ensuite configurer les services réseaux.

## Fonctionnalités

* Routeur statique.
* Routeur NAT (Network address translation) pour pouvoir utiliser des adresses IP privées masquées derrière l’adresse IP publique du fournisseur d’accès Internet. La redirection de ports associé à l’adresse IP publique vers une IP et un port d’un poste du réseau local est possible.
* Protocole de routage RIPV2 (Routing information protocol) pour configuration dynamique des tables de routage.
* Pare-feu, pour filtrage des paquets avec fonction SPI (Stateful Packet Inspection) pour filtrer en fonction de l’état de la connexion.
* Portail captif dont le but est d’autoriser l’accès au réseau via une authentification web adossée à un serveur Kerberos. Cette fonction est très utile pour sécuriser un réseau sans demander aucune configuration sur les postes clients.
* VPN LAN-to-LAN, pour interconnecter deux réseaux locaux via Internet en encapsulant les trames Ethernet.
* VPN Host-to-LAN, pour permettre à des postes clients de se connecter au réseau local via internet.
* Authentification Radius, pour autoriser l’accès au réseau via des points d’accès Wi-Fi.
* Serveur DNS multi-zones, pour définir sa propre zone DNS et les enregistrements associés.
* Client DynDNS si on a besoin d’un nom DNS pour atteindre le routeur.
* Serveur DHCP pour assigner automatiquement des adresses IP aux postes clients qui le demandent.
* Qualité de service, pour hiérarchiser la priorité et même la bande passante attribuée à chacun des types de trafic qui traversent Zeroshell. Configuré en mode pont, Zeroshell est ainsi très utile même pour une connexion internet familiale pour donner la priorité aux applications voix (de type Skype) et chat sur d’autres applications (téléchargement, etc.).
* VLAN à utiliser avec des switches supportant les VLAN. On peut ainsi par exemple dans un campus, créer un VLAN dédié aux points d’accès WIFI et centraliser la gestion de l’authentification par captive portal sur Zeroshell.
* Administration web (sécurisé par filtrage sur IP),
* Accès SSH (sécurisé par filtrage sur IP).
* Serveur proxy avec fonction de proxy transparent, intégrant un anti-virus.
* équilibrage de charge et tolérance aux pannes par l'usage de plusieurs connexion internet.
* Pont 802.1d avec protocole Spanning Tree pour éviter les boucles dues aux chemins redondants;
* Connexion UMTS/HSDPA par modem 3G.
L'utilisation en Live CD nécessite de sauvegarder le paramétrage mis en place sur un support enregistrable. Il est possible d'utiliser un disque dur pour cela. Zeroshell propose d'enregistrer une configuration sous la forme d'une base de données. Plusieurs configurations peuvent être enregistrées, mais une seule est active à la fois. On peut, à l'aide de l'interface web, la configuration sous forme d'un fichier que l'on peut restaurer à tout moment. Zeroshell fonctionne aussi sur une machine virtuelle, par exemple avec les logiciels VMware et Virtual PC (un disque virtuel pour VMware est fourni en téléchargement).