Avec de plus en plus d'utilisateurs adoptant les technologies de cloud computing, le déploiement d'applications et de services Web sur le Web ne cesse d'augmenter. Ces applications Web sont généralement exposées à des vulnérabilités de sécurité en fonction des paramètres du pare-feu et des technologies de serveur Web utilisées pour les exécuter. Bien qu'un problème de pare-feu soit facile à résoudre, on ne peut pas en dire autant d'un serveur Web compromis.
Ce guide d'article reconnaît Hiawatha en tant que serveur Web réputé et nous guidera donc à travers son installation et sa configuration sur Ubuntu 20.04 et plus tard.
Fonctionnalités du serveur Web Hiawatha
La nature petite et légère de Hiawatha le dote des fonctionnalités de serveur Web modernes suivantes :
- Utilise TLS intégré pour limiter le temps d'exécution CGI et interdire les clients qui se comportent mal afin de faire face aux attaques DoS (Denial of Service), Cross-Site Request Forgery (CSRF/XSRF) et Cross-site Scripting (XSS).
- Authentification HTTP de base et Digest.
- Utilise l'outil de surveillance Hiawatha pour vérifier les activités du serveur Web telles que les attaques cumulatives, les erreurs, les demandes des clients et l'utilisation de la bande passante.
- Prise en charge de la réécriture d'URL, SSL et TLS, proxy inverse, prise en charge d'IPv6 et CGI/FastCGI
Il convient également de noter que l'attribut petit et léger de Hiawatha le rend idéal pour les systèmes embarqués ou le matériel plus ancien et que vous n'avez donc pas à vous soucier de l'acquisition de certaines spécifications de performances matérielles modernisées.
Installation du serveur Web Hiawatha dans Ubuntu
Tout d'abord, assurez-vous que votre Ubuntu le système est à jour.
$ sudo apt update $ sudo apt upgrade
Ensuite, vous devez installer quelques dépendances suivantes pour compiler et installer le Hiawatha serveur Web à partir de la source.
$ sudo apt install build-essential dpkg-dev cmake libxml2-dev libxslt1-dev zlib1g-dev

Une fois installé, vous devez télécharger l'archive source du serveur Web Hiawatha à l'aide de la commande wget suivante et la compiler à l'aide des commandes suivantes.
$ wget https://www.hiawatha-webserver.org/files/hiawatha-11.1.tar.gz $ tar -xzf hiawatha-11.1.tar.gz $ cd hiawatha-11.1 $ mkdir build && cd build $ cmake .. $ sudo make install/strip

Après l'installation, vous devez démarrer et vérifier que l'installation de Hiawatha a été un succès, exécutez la commande suivante.
$ sudo /usr/local/sbin/hiawatha $ hiawatha -k
La commande (hiawatha -k)
pointe vers le répertoire de configuration principal de votre installation Hiawatha (/usr/local/etc/hiawatha )

Enfin, testez l'installation de Hiawatha en vous rendant sur l'URL suivante de votre navigateur web.
http://localhost OR http://Server-IP

Créer un hôte virtuel dans le serveur Web Hiawatha
Pour la prise en charge de l'hôte virtuel, par lequel vous souhaitez héberger un certain nombre de sites Web, ouvrez le Hiawatha fichier de configuration principal.
$ sudo nano /usr/local/etc/hiawatha/hiawatha.conf
Ajoutez la configuration suivante à ce fichier :
VirtualHost { Hostname = linuxshelltips.lan.network WebsiteRoot = /usr/local/var/www/site_one StartFile = index.html AccessLogfile = /usr/local/var/www/site_one/log/access.log ErrorLogfile = /usr/local/var/www/site_one/log/error.log }

Créer le site_one et journal répertoires et un index.html fichier à l'intérieur (site_one ).
$ sudo mkdir /usr/local/var/www/site_one $ sudo mkdir /usr/local/var/www/site_one/log/ $ echo 'Serving Website Using Hiawatha Web Server' | sudo tee -a /usr/local/var/www/site_one/index.html
Ensuite, arrêtez et redémarrez le serveur Web Hiawatha.
$ cat /usr/local/var/run/hiawatha.pid $ sudo kill -15 PID $ sudo /usr/local/sbin/hiawatha

Enfin, accédez au nom d'hôte de votre VirtualHost depuis un navigateur Web :
http://linuxshelltips.lan.network

Hiawata est un ajout intéressant à votre CV/portefeuille de serveur Web en raison de son empreinte légère et sécurisée.