# VHFFS

VHFFS (Virtual Hosting For Free Software) est un ensemble d'outils, développé par TuxFamily, permettant la gestion d'une plate-forme d'hébergement mutualisée. VHFFS permet de fournir aux utilisateurs de la plate-forme une interface conviviale pour gérer les services dont ils disposent et aux administrateurs des outils pour gérer la plate-forme et automatiser la plupart des tâches répétitives.

## Présentation

VHFFS est conçu pour s'interfacer avec les logiciels phares en matière d'hébergement de masse tel qu’Apache, Exim, Subversion, et bien d'autres.
VHFFS se compose de trois parties principales : l'API, le Panel, et les Robots.
L'API, pièce maîtresse de VHFFS fournit une interface d'accès à la base de données et gère les droits d'accès. Elle contient la quasi-totalité du code et fournit les interfaces nécessaires pour la cohérence des différents objets (un utilisateur, un groupe, un service, ...).
Le panel permet aux utilisateurs et à l'équipe d'administration d'effectuer les tâches les plus courantes. Les utilisateurs peuvent y demander un nouveau groupe ou un nouveau service, ajouter des personnes à leur groupe, configurer les services... Les administrateurs l'utilisent pour lister les demandes à modérer, modifier un objet, accorder plus de quota à un projet ou tout simplement pour obtenir des statistiques sur la plateforme...
Les robots sont lancés à intervalles réguliers grâce au cron. Ils permettent d'appeler les fonctions de l'API sur les services modifiés via le panel permettant ainsi leur modification effective.

## Services

VHFFS peut gérer une plate-forme fournissant les services suivants :
* Hébergement de sites support de PHP 4 et 5 avec statistiques détaillées et logs disponibles
* Hébergement de bases MySQL et PostgreSQL
* Dépôts Subversion
* Dépôts CVS
* Dépôts GIT
* Dépôts Mercurial
* Adresse de courrier électronique (POP3, IMAP, webmail)
* Gestion de domaine (DNS)
* Comptes et redirections mails pour le domaine
* Listes de diffusion (propres au domaine ou non)
* Espace de téléchargements avec statistiques détaillées,
* Gestion des Quotas pour les projets,
* Jabber
* accès aux fichiers via Ftp, FTPS, Ssh

## Spécificités

Par sa vocation à faire de l'hébergement ouvert au public, VHFFS permet aux utilisateurs d'effectuer des demandes de services qui seront par la suite modérées par les administrateurs. Par sa conception, VHFFS peut fonctionner aussi bien sur une machine unique que sur une multitude de serveurs permettant ainsi de répartir correctement la charge selon les besoins de l'hébergeur. VHFFS est le seul des logiciels de gestion de plate-forme d'hébergement à intégrer une gestion des groupes de projets. Les utilisateurs sont regroupés en projets et peuvent travailler collaborativement sur des mêmes ressources. Le responsable du projet peut ainsi donner des droits d'accès précis aux autres membres du projet voire déléguer la gestion de certains services.
VHFFS permet aussi un isolement total des utilisateurs au niveau du système de fichier par l'intermédiaire d'un système de fichiers virtuel utilisant FUSE nommé VHFFS-FS. C'est notamment grâce à cette innovation que TuxFamily a pu fournir du Ssh à ses hébergés. Enfin, VHFFS est le seul ou l'un des rares logiciels de ce genre à proposer à la fois une interface web, une interface en ligne de commande ou via un bot IRC.