Les articles de GNU/Linux Magazine Hors-Série N°68

Article mis en avant

Préface

Internet : nous sommes nombreux à y être connectés en ce début de XXIème siècle. On a accès à des millions de sites web, des ressources diverses et variées ; on peut même participer : Facebook, Twitter et autres Google+ forment des plateformes de réseaux sociaux, permettant d'interagir avec ses amis. Mais on reste toujours lié à une plateforme, à un fournisseur, à un éditeur... On peut vouloir être indépendant, avoir un coin d'Internet à soi, son propre site web, ses propres services...

On sait tous à peu près ce qu'est Internet : c'est un gros réseau sur lequel on peut connecter son ordinateur pour accéder à des sites et autres services. Approfondissons la question, voyons comment fonctionne Internet.
Pour proposer un ou plusieurs service(s) sur Internet, ceux-ci doivent être hébergés. Plusieurs approches sont possibles, à chacun de choisir celle qui lui convient le plus : cela va des services « clés en main » à l'auto-hébergement, en passant par l'hébergement mutualisé, les serveurs dédiés et les VPS... Se faire une place sur Internet, c'est bien, mais encore faut-il arriver à juger ses besoins et l'énergie qu'on compte réellement investir, afin de choisir une solution adaptée parmi les cinq que nous vous présentons ici...
Une fois une solution d'hébergement choisie, il faut la gérer. Dans le cas des services « clés en main » c'est simple : il suffit de publier son contenu ; dans le cas de l'hébergement mutualisé, ce n'est pas compliqué : il suffit de placer ses fichiers (généralement PHP) au bon endroit et roulez jeunesse ! Mais dans les autres cas (dédié, VPS, housing, auto-hébergement), il faut savoir gérer un serveur et notamment comprendre ce que sont les services et les ports.
Encore une fois, avec les solutions « clés en main » et l'hébergement mutualisé, la sécurité des systèmes est gérée par le fournisseur. Mais dans les autres cas, les plus intéressants, il va vous falloir gérer tout cela vous-même et vous frotter à des notions qui peuvent devenir complexes, à commencer par le filtrage de ports.
Dans l'article précédent, nous avons évoqué des logiciels permettant de simplifier la gestion de Netfilter, le pare-feu de Linux. Ufw (pour « Uncomplicated Firewall ») est l'un d'entre eux, créé pour Ubuntu mais également disponible pour d'autres distributions...
Linux, Apache, MySQL, PHP : les quatre technologies que l'on associe le plus couramment dans le cadre d'un serveur web. C'est le point de départ de nombreux outils en ligne, il est donc nécessaire de savoir installer cet ensemble avant de mettre en place ce genre d'outils.
Apache est peut-être le serveur HTTP le plus courant, mais il n'est pas le seul. Intéressons-nous à Lighttpd (que l'on nomme communément « Lighty »), un serveur web très léger... Lighttpd étant un serveur web à part entière, il ne faut pas qu'Apache soit installé pour que celui-ci puisse fonctionner avec sa configuration par défaut : les deux logiciels voudront accéder au port 80 en même temps, ce qui créera un conflit. Soit il faut modifier la configuration de l'un des deux pour écouter sur un autre port, soit il ne faut pas installer Apache.
Autre challenger intéressant, Nginx (prononcé – à l'anglaise - « Engine X ») est réputé pour ses performances qui crèvent le plafond, surtout avec des fichiers statiques.Développé à l'origine par une équipe russe, celui-ci est utilisé par de nombreux sites importants (plus de 15% des serveurs web), comme WordPress.com par exemple. Nginx étant un serveur web à part entière, ni Apache, ni Lighttpd ne doivent être installés pour que celui-ci puisse fonctionner avec sa configuration par défaut : les deux logiciels accéderaient au port 80 en même temps, ce qui créerait un conflit. Soit il faut modifier la configuration de l'un d'entre eux pour écouter sur un autre port, soit il ne faut installer ni Apache, ni Lighttpd.
Exim est le MTA (Mail Transfer Agent) par défaut de Debian. Ce logiciel est une valeur sûre, utilisée sur de nombreuses infrastructures de par le monde, que ce soit pour des besoins modestes ou pour des milliers de boîtes e-mail. Nous verrons ici comment le mettre en œuvre dans le cadre d'un serveur de messagerie complet. La première version d'Exim date de 1995 ; elle fut écrite par Philip Hazel pour le service informatique de l'université de Cambridge. Exim est un MTA monolithique, il est constitué d'un seul processus binaire qui se charge de l'ensemble des traitements des e-mails. Certains pensent qu'Exim se comporte mal dans des environnements à forte charge, cependant il est déployé sur des plateformes où il doit traiter plusieurs milliers de messages à l'heure sans le moindre problème.
Postfix est parmi les MTA libres les plus réputés. Il est utilisé par près d'un quart des serveurs de messagerie sur Internet. Il est notamment le serveur de messagerie par défaut de la distribution Red Hat Enterprise Linux ; il est également utilisé par le logiciel de messagerie collaborative Zimbra. Postfix a été publié pour la première fois en 1998, écrit par Wietse Venema au centre de recherche IBM T. J. Watson. Il a d'abord été connu sous les noms Vmailer et IBM Secure Mailer. Il repose sur une architecture très modulaire, chaque sous-service étant géré par un processus différent ; cela lui permet d'être très performant sur des systèmes multi-tâches, notamment lorsqu'un nombre important de processeurs ou de cœurs est disponible.
Parmi les nombreux serveurs IMAP et POP disponibles, on peut distinguer The Courier Mail Server, qui est en réalité une suite complète de logiciels. Son serveur IMAP, simplement nommé Courier-IMAP, est relativement populaire pour une utilisation avec un MTA/MDA existant, comme ce que nous abordons dans ce numéro. The Courier Mail Server, dont la première version date de 1999, est un serveur de messagerie partiellement modulaire : certaines parties peuvent être installées de manière totalement indépendante du reste de la suite, c'est le cas du serveur IMAP. En réalité, c'est bien le serveur IMAP de Courier qui est la partie la plus populaire de l'ensemble de la suite, même si le projet dans son ensemble peut être utilisé de manière totalement autonome. C'est cet élément que nous allons utiliser dans ce tutoriel, afin de desservir les e-mails stockés au format Maildir stockés par un MTA/MDA tel que Postfix ou Exim.
Le protocole FTP est très utilisé lorsqu'il s'agit de mettre en ligne un site web ; on l'utilise également lorsque l'on veut télécharger des fichiers volumineux. De nombreux serveurs FTP existent sous Linux, intéressons-nous à vsFTPd, l'un des plus populaires. VsFTPd (very secure FTP daemon), créé en 2000, est un serveur FTP pensé pour être sécurisé, performant et stable. C'est notamment l'un des premiers logiciels serveurs à mettre en œuvre la séparation des privilèges, permettant de réduire les risques de piratage en ne donnant aux exécutables que les droits dont ils ont besoin (pas de démon en écoute fonctionnant en tant que root par exemple) – c'est aujourd'hui considéré comme une nécessité lorsque l'on développe un serveur. Il est développé par Chris Evans, chargé de la sécurité de Chrome chez Google.
Parmi les nombreux serveurs FTP libres existants, l'un des plus populaires – outre vsFTPd – est Pure-FTPd. Celui-ci se focalise sur l'efficacité et la facilité d'utilisation. Découvrons ce second « poids lourd » parmi les serveurs FTP... Basé à l'origine sur Troll-FTPd (qui fut développé par Arnt Gulbrandsen lorsqu'il travaillait chez Trolltech entre 1995 et 1999), Pure-FTPd est d'abord un ensemble de patches appliqués à celui-ci, à partir de 2001. Il évolue bien sûr maintenant de manière totalement indépendante, géré par son équipe propre et notamment son créateur, Frank Denis. Sa caractéristique la plus visible est de pouvoir être lancé facilement en ligne de commandes, sans s'appuyer sur des fichiers de configuration.
L'intérêt d'un réseau privé virtuel (VPN), c'est d'offrir une communication sécurisée entre deux sites distants, au travers d'Internet. OpenVPN est l'un des serveurs de VPN libres les plus populaires en raison de sa simplicité de configuration et d'utilisation.
Toute équipe de développement efficace utilise un outil de gestion de versions afin d'effectuer le suivi des développements, de développer plusieurs aspects en parallèle, etc. De nombreux logiciels existent pour servir cet objectif, le plus populaire aujourd'hui étant indéniablement Git.
Les interfaces web de consultation de courriers électroniques (en bref, les webmails) restent un moyen très populaire d'accéder à ses e-mails, sans avoir besoin d'installer un logiciel sur un ordinateur. Roundcube est aujourd'hui l'un des webmails open source les plus populaires. Roundcube, dont la première version stable est sortie en 2008, utilise de nombreuses technologies récentes comme AJAX, TinyMCE... Son objectif est d'obtenir une facilité d'utilisation proche des logiciels de bureau, notamment en minimisant les temps de chargement... Nous nous penchons ici sur l'installation par le biais du paquet Debian, bénéficiant ainsi du suivi de sécurité propre à la distribution. Notons toutefois que celui-ci est dans une version relativement ancienne (0.7.2, datant de mars 2012) ; ceux qui souhaitent profiter des dernières évolutions devront l'installer à partir des sources.
Parmi les méthodes de publication sur Internet, l'une des plus populaires est le blog (pour « weblog », journal sur le Web). De nombreux logiciels existent, de même que des services hébergés, WordPress étant l'un des plus populaires de ces logiciels.
Le wiki est l'outil le plus populaire pour créer des sites web participatifs. Il permet à tout un chacun de modifier une page en cliquant sur un simple bouton, souvent sans même devoir s'identifier. C'est comme cela que fonctionne la très populaire encyclopédie Wikipédia. D'ailleurs, c'est pour Wikipédia que MediaWiki a été créé : ce logiciel est aujourd'hui l'un des plus utilisés de son domaine.
Du point de vue des professionnels du commerce, ce que la démocratisation d'Internet a vraiment changé c'est la façon de vendre. Aujourd'hui, on peut trouver presque tout sur Internet : un professionnel a tout intérêt à vendre ses produits ou ses services via Internet. Différentes plateformes de commerce électronique existent, l'une des plus populaires étant PrestaShop...
S'il y a un usage que le numérique a révolutionné en profondeur, c'est bien la photographie : aujourd'hui, n'importe qui peut prendre des photos, que ce soit avec un téléphone à 100€ ou avec un appareil Reflex à 2000€ ; et aujourd'hui, chacun veut partager ses photos avec ses amis, sa famille, le monde entier... Parmi les logiciels de publication de galeries photos sur Internet, Piwigo est l'un des plus populaires...