SSL est un protocole de cryptage des données dans une connexion TCP lors de leur déplacement sur le réseau. Il a été initialement développé pour protéger le trafic entre les navigateurs Web et les serveurs, mais peut être utilisé pour crypter tout type de flux de données qui serait normalement envoyé via le protocole TCP.

Le protocole SSL permet aux clients et aux serveurs de s'authentifier les uns aux autres, afin qu'un client puisse être sûr qu'il se connecte vraiment à l'hôte qu'il pense être. Cela se fait à l'aide de certificats émis par une autorité de certification reconnue par le client (afin qu'ils puissent être vérifiés) et associés à un nom d'hôte particulier. Sans certificats, un attaquant pourrait rediriger une connexion SSL vers son propre serveur et capturer des informations sensibles à partir d'un client qui pense qu'il parle au vrai serveur.

Toutes les données qui transitent sur Internet sans être cryptées peuvent être capturées et lues par un attaquant ayant accès à l'un des réseaux qu'il traverse. Même les données voyageant entre un système client et serveur sur un réseau local peuvent facilement être écoutées. Lorsque vous vous connectez à un serveur telnet, FTP ou POP3, votre mot de passe est envoyé sur le réseau et peut donc être capturé par un attaquant.

SSL peut être utilisé pour protéger les données dans ce type de situations, mais uniquement si le client et le serveur le prennent en charge. La plupart des navigateurs Web et des clients de messagerie peuvent établir des connexions HTTP, POP3 et IMAP cryptées SSL, mais tous les serveurs Web et POP3 ne peuvent pas les accepter. POP3 en particulier est difficile à protéger, car le serveur standard fourni avec la plupart des systèmes Unix ne prend pas du tout en charge SSL. Heureusement, il existe une solution: STunnel.

STunnel est un programme simple qui convertit une connexion non cryptée en une connexion cryptée SSL. Il est généralement configuré pour être exécuté à partir d'un super-serveur comme inetd ou xinetd, puis exécuter un autre programme comme le serveur POP3 qui ne prend pas en charge SSL. Cette conception lui permet de protéger tout serveur normalement exécuté depuis inetd, tel que les serveurs telnet, NNTP et IMAP.

Cependant, tous les serveurs ne peuvent pas être utilement protégés par chiffrement, car aucun client n'existe pour les utiliser en mode SSL. Par exemple, je n'ai jamais entendu parler d'un client telnet ou FTP pouvant utiliser SSL, car le package SSH commun permet déjà des connexions à distance et des transferts de fichiers cryptés.

Ce module Webmin facilite la configuration de services de super-serveur qui exécutent STunnel pour démarrer un programme serveur. Même si cela peut être fait manuellement à l'aide du module Services Internet, celui-ci est spécialement conçu pour installer et configurer STunnel. Il détecte automatiquement si vous avez installé inetd et / ou xinetd, lit leurs configurations pour vérifier les tunnels SSL existants et les ajoute lorsque vous créez un nouveau tunnel. Si les deux sont installés, de nouveaux tunnels SSL sont ajoutés à la configuration xinetd car c'est le supérieur des deux à mon avis.