Auto-hébergement

Sommaire

  1. Introduction
  2. Avant de vous lancer
  3. Installation et configuration d'Ubuntu Server
  4. Installation et configuration d'OpenSSH Server
  5. Installation et configuration de Lighttpd avec PHP en CGI
  6. Installation et configuration de Postfix avec Dovecot
  7. Liens

Introduction

La conférence de Benjamin Bayart sur l'Internet libre vous a convaincu et vous souhaitez devenir votre propre hébergeur? Les révélations d'Edward Snowden vous ont rendu paranoïaque? Cependant, vous ne savez pas comment héberger vos e-mails et votre site web chez vous, derrière votre petite connexion ADSL? Dans ce cas, ce tutoriel est fait pour vous! Nous allons voir comment installer un serveur SSH afin de pouvoir prendre le contrôle de votre machine à distance et de pouvoir transférer vos fichiers de manière beaucoup plus sécurisée que via le vieillissant protocole FTP, un serveur web léger, équipé de PHP pour rendre votre site disponible chez M. Toutlemonde et d'un serveur mail pour pouvoir envoyer et recevoir des courriels.

Avant de vous lancer

Je vais commencer par une mise en garde: cette page n'aborde pas tous les aspects de l'auto-hébergement. Ici, le choix du serveur, l'utilisation d'un nom de domaine, la maintenance et la configuration de votre routeur ne seront pas abordés. Aussi, je vous invite à vous familiariser avec l'utilisation d'une distribution GNU/Linux en ligne de commandes ainsi qu'avec le fonctionnement des réseaux avant de vous plonger dans la lecture de ce tutoriel. Cela pourrait vous éviter quelques arrachages de cheveux. Si vous rencontrez des problèmes ou si vous avez des questions en suivant ce tutoriel, n'hésitez pas à poser vos questions sur des forums comme HomeServer.DIY, où de nombreuses personnes seront aptes à vous aider/conseiller. Enfin, sachez que vous pouvez également me contacter.

Installation et configuration d'Ubuntu Server

Pour commencer, nous allons aborder l'installation d'un système d'exploitation libre et gratuit ayant fait ses preuves: Ubuntu Server. Commencez par vous rendre sur cette page puis cliquez sur "Plus d'options..." et sélectionnez la version LTS (pour "Long Term Support", "Support à Long Terme" en français). Cliquez ensuite sur le bouton télécharger. Une fois le téléchargement effectué, gravez le fichier ISO sur un CD ou installez-la sur une clé USB (via UnetBootin par exemple) puis allumez votre futur serveur (en ayant pris soin d'avoir inséré le support contenant Ubuntu Server).

Une fois arrivé sur le menu principal, sélectionnez français comme langage puis Installer Ubuntu Server. Choisissez ensuite les options suivantes (en utilisant les flèches pour naviguer, "tabulation" pour changer de zone et "entrée" pour valider):

L'ordinateur va redémarrer: Ubuntu est maintenant installé! Entrez votre nom d'utilisateur puis votre mot de passe. Une fois connecté, nous allons effectuer quelques mises à jour. Pour cela, assurez-vous que votre PC est relié à Internet puis entrez les trois commandes suivantes (dans l'ordre indiqué):

Votre serveur est maintenant à jour! Vous pouvez dès à présent passer à l'étape suivante.

Installation et configuration d'OpenSSH Server

Nous allons maintenant installer OpenSSH. Une fois ce « démon » installé, vous pourrez prendre le contrôle de votre serveur depuis n'importe quel autre ordinateur connecté sur votre réseau local ou sur Internet. Vous n'aurez donc plus besoin d'un écran! De plus, nous l'utiliserons comme un serveur de transfert de fichiers (appelé SFTP).

Avant d'installer OpenSSH, nous allons préparer le terrain en créant un utilisateur spécial pour le shell et en mettant tous les utilisateurs autorisés à transférer des fichiers dans un groupe spécial.On créé un utilisateur spécial (que l'on va appeler "adminssh"):

Puis on créé le groupe réservé au SFTP:

Et on ajoute chaque utilisateur au groupe (à répéter pour chaque utilisateur qui sera autorisé à transférer des fichiers):

Nous allons ensuite appliquer les bons droits au home de chaque utilisateur: il doit appartenir à root. Nous devrons donc créer plusieurs dossiers que chaque utilisateur pourra utiliser:

On peut maintenant passer à l'installation d'OpenSSH!
On installe OpenSSH:

Puis on le configure:

Je vous propose d'utiliser mon fichier (j'ai commenté le plus utile):

On quitte avec ctrl+X puis on répond O et on appuie sur entrée. Ensuite on redémarre le démon:

Vous pouvez dès à présent débrancher l'écran de votre serveur et vous connecter grâce à PuTTY si vous possédez Windows ou grâce à la commande SSH (à éxécuter dans le terminal) si vous utilisez Linux ou MacOS. N'oubliez pas que le port du serveur SSH est maintenant le port 223! Vous pouvez également transférer des fichiers avec FileZilla (l'adresse de votre serveur est sftp://ipduserveur/ et le port est le port 223).

Installation et configuration de Lighttpd avec PHP en CGI

Attention: ici, je ne traiterais pas l'installation de MySQL: c'est lourd et on peut très bien s'en passer.
Nous allons maintenant mettre en place le serveur qui traitera les pages statiques: Lighttpd.
On commence par installer lighttpd et PHP:

Puis on créé un nouvel utilisateur:

Nous allons maintenant le configurer:

et remplacez tout le contenu par ces lignes:

Puis nous allons activer et configurer PHP:

Ajoutez cette ligne à la fin du fichier:

Puis remplacez:

par:

,

par:

et:

par:

Et redémarrez:

Installation et configuration de Postfix avec Dovecot

Je n'aborderais pas directement cette partie: en effet, Rom1v l'a traité avant moi. Je me contenterai donc de quelques conseils. Commencez par ce tutoriel (vous ferez attention à mettre le serveur SMTP de votre FAI dans "relayhost" pour passer outre les blacklists) puis complétez votre installation grâce à ce tutoriel. Vous disposez maintenant d'un serveur mail fonctionnel!

C'est fini! Vous êtes arrivé au bout de ce tutoriel et vous pouvez dès maintenant vous amuser avec votre serveur!

Liens

  1. Un site communautaire sur l'auto-hébergement
  2. La communauté française d'Ubuntu
  3. Le Réseau d’Hébergeurs Indépendants et ENgagés
  4. Un wiki regroupant de nombreuses applications web libres pour votre serveur
  5. Un autre tutoriel sur l'auto-hébergement, très complet et au format PDF