Comment installer et sécuriser Apache sur Debian11

Comment installer et sécuriser Apache sur Debian11

Le serveur Web Apache HTTP est l'un des serveurs Web largement utilisés, en particulier sur les distributions Linux, qui est une plate-forme multiples gratuite utilisée par un grand nombre de sites Web sur Internet. Apache Webserver utilise HTTP pour traiter la demande et divertir les informations Web. Apache a des tonnes de fonctionnalités utiles et ses fonctionnalités peuvent être améliorées avec des modules supplémentaires. Il permet également aux programmeurs de publier leur travail sur Internet.

Ainsi, dans cet article, nous discuterons de l'installation du serveur Web Apache et de la façon de le sécuriser après l'installation sur Debian 11.

Exigences

Avant l'installation, vous devez être connecté au système Debian avec accès à tous les privilèges sudo. Nous vous recommandons également de terminer la configuration du serveur initial sur les systèmes de Debian 11 nouvellement.

Étape 1 - Installation d'Apache sur Debian

La dernière version des packages Apache est disponible sous le référentiel Debian 11 par défaut. Afin que nous puissions l'installer directement à l'aide du gestionnaire de packages.

Après la connexion, ouvrez le terminal et mettez à jour le cache APT par la commande mentionnée ci-dessous:

Mise à jour Sudo Apt  

Après la mise à jour de APT Cache, installez maintenant l'APACHE2 sur votre Debian 11 Bullseye par la commande:

sudo apt install apache2  

Appuyez sur «Y» pour toute confirmation invitée par l'installateur.

Une fois le processus d'installation terminé. Vérifiez la version Apache installée en exécutant la commande suivante:

apache2 -v  
Sortie: Version du serveur: Apache / 2.4.48 (Debian) Serveur construit: 2021-08-12T11: 51: 47 

Une autre façon de vérifier l'installation d'Apache consiste à accéder à la page par défaut d'Apache2 à l'aide de l'adresse IP ou du nom d'hôte de votre serveur. Si vous ne connaissez pas votre nom d'hôte, exécutez d'abord la commande mentionnée ci-dessous:

nom d'hôte -i  
Vérifiez l'adresse IP du système local

Entrez le nom d'hôte ou l'adresse IP de votre serveur dans la barre URL du navigateur et appuyez sur Entrée, la page par défaut de Debian Apache2 s'ouvrira comme indiqué ci-dessous:

Page par défaut Apache sur Debian 11

Étape 2 - Gestion du service Apache

Après une installation réussie, le service Apache peut être géré à l'aide de commandes «SystemCTL», exécutez la commande mentionnée ci-dessous pour vérifier l'état du serveur:

Sudo Systemctl Status apache2.service  
Vérifiez l'état du service Apache sur Debian 11

Presse "Q" quitter. Peu de commandes pour gérer le service Apache dans Debian 11 sont:

Pour démarrer le serveur, utilisez la commande:

sudo systemctl start apache2.service  

De même, pour arrêter le service, remplacez-vous par un arrêt dans la commande ci-dessus:

sudo systemctl stop apache2.service  

Le service peut être redémarré en utilisant:

sudo systemctl redémarrer apache2.service  

Étape 3 - Configuration des paramètres du pare-feu

Si votre système dispose d'un pare-feu, vous devrez autoriser l'accès à certains ports Web afin que les utilisateurs externes puissent les utiliser. Exécutez la commande ci-dessous MENTIONEDS pour autoriser le port 80 (HTTP) et 443 (HTTPS) dans le terminal Debian:

sudo ufw autorise 80 / TCP  Sudo UFW Autoriser 443 / TCP  
Autoriser le port HTTP et HTTPS dans UFW

Vérifiez maintenant en vérifiant l'état:

Statut sudo ufw  

S'il n'est pas actif, pour permettre son utilisation:

sudo ufw activer  

Étape 4 - Création de l'hôte virtuel dans Apache

Dans Apache, les hôtes virtuels vous permettent d'exploiter de nombreux sites Web sur un seul serveur. Dans le serveur Web Apache, nous créerons un hôte virtuel. Pour l'accomplir, nous allons d'abord créer un site Web appelé Sample.com avec le bloc serveur qui est livré standard avec Apache.

Commençons par configurer le premier hôte virtuel de votre serveur Apache. Nous utiliserons le domaine de l'échantillon comme «échantillon.com », mais vous pouvez le nommer en fonction de votre préférence:

sudo mkdir -p / var / www / échantillon.com  

Changez maintenant les autorisations et le propriétaire par commande mentionnée ci-dessous:

Sudo Chown -r www-data: www-data / var / www / échantillon.com  sudo chmod -r 755 / var / www / échantillon.com  

Exécution de la commande mentionnée en dessous, pour tester notre testdomain.site d'informations, nous allons maintenant construire un exemple de page d'index. Pour accomplir ainsi, nous utiliserons l'éditeur Nano pour générer un fichier HTML qui ressemble à ceci:

sudo nano / var / www / échantillon.com / index.html  

Insérez le contenu mentionné ci-dessous dans la page d'index et appuyez sur Ctrl + O pour enregistrer le fichier un Ctrl + X pour quitter le fichier et retourner au terminal:

Bienvenue dans l'échantillon de page.com!

Toutes nos félicitations! Votre échantillon.le serveur com a réussi!

12345678 Bienvenue dans l'échantillon de page.com!

Toutes nos félicitations! Votre échantillon.le serveur com a réussi!

En exécutant la commande mentionnée ci-dessous dans un terminal, nous créerons un fichier hôte virtuel, qui servira le contenu du serveur:

sudo nano / etc / apache2 / sites-disponible / échantillon.com.confli  

Un fichier texte sera ouvert, insérez le contenu suivant:

ServerAdmin Admin @ Exemple.COM ServerName Exemple.com servealias www.sampe.com documentroot / var / www / échantillon.com errorlog $ apache_log_dir / erreur.log Customlog $ apache_log_dir / access.journal combiné
12345678 ServerAdmin Admin @ Exemple.COM ServerName Exemple.com servealias www.sampe.com documentroot / var / www / échantillon.com errorlog $ apache_log_dir / erreur.log Customlog $ apache_log_dir / access.journal combiné

Presse Ctrl + o Pour enregistrer le fichier et Ctrl + x Pour quitter le fichier et revenir au terminal.

Étape 5 - Activation de la configuration du domaine

Exécutez la commande suivante pour activer le fichier hôte virtuel:

échantillon sud-a2ensite.com.confli  

Désactivez la configuration Apache par défaut en exécutant la commande mentionnée ci-dessous:

sudo a2dissite 000 déficientes.confli  

De nouvelles modifications à Apache sont applicables en exécutant la commande mentionnée ci-dessous:

sudo systemctl redémarrer apache2  

Étape 6 - Résoudre l'erreur de nom d'hôte

Maintenant, nous devons vérifier notre configuration pour toute erreur de syntaxe, pour la configuration de test Exécuter la commande mentionnée ci-dessous:

sudo apache2ctl configTest  
Impossible de résoudre le problème du hotname du système avec Apache

Cela entraînera une erreur mais ne vous inquiétez pas, nous résoudrons cela. Créer une nouvelle configuration «ServerName.conf ”et modifier dans un éditeur de texte:

sudo nano / etc / apache2 / conf-avaialable / servername.confli  

Insérez maintenant le contenu suivant dans le fichier:

Exemple de nom de serveur.com 

Appuyez sur Ctrl + O pour enregistrer le fichier et Ctrl + X pour quitter le fichier. Assurez-vous de modifier "Schantil.com »avec votre nom de domaine réel. Maintenant, pour activer le nom du serveur Conf, exécutez la commande mentionnée ci-dessous:

Sudo A2enConf ServerName  

Maintenant, exécutez à nouveau la commande ci-dessus pour tester la configuration:

sudo apache2ctl configTest  

Vous verrez que l'erreur du nom d'hôte est résolu maintenant.

Étape 7 - Comment sécuriser Apache2 sur Debian 11

Pour sécuriser le serveur Apache, modifiez le "sécurité.conf fichier, exécutez la commande mentionnée ci-dessous pour ouvrir le fichier:

sudo nano / etc / apache2 / conf-compatiable / Security.confli  

Insérez ou mettez à jour le contenu ci-dessous dans le fichier:

SERVERTOKENS PROD SERVERSIGNATURATURE OFF TRACEALABLE OFF TENDER TOUJOUR Transport-Security "MAX-Age = 31536000; incluent les en-tête de la base" Modifier toujours Set-Cookie ^ (.*) $ 1 $; httponly; sécurisé
12345678SERVERTOKENS PRODSERSERVERSIGNATURE OFFTRACIABLE DE DUFFEMBRE APPENDANT TOUJOURS X-Frame-Options SameoriginHeader toujours définir X-XSS-Protection: "1; Mode = Block" L'en-tête définit toujours le Type-Type-Type-Options "Nosniff" définir toujours Strict-Transport-Security " max-age = 31536000; incluse.*) $ 1 $; httponly; sécurisé

Enregistrez le fichier et fermez-le.

Définissez le protocole SSLCiphersuite et SSL à l'échelle du serveur pour utiliser des chiffres sécurisés pour servir le site Web en édition SSL.confli déposer:

sudo nano / etc / apache2 / mods-compatible / ssl.confli  

Insérez maintenant le contenu ci-dessous dans le fichier et appuyez sur Ctrl + O pour enregistrer le fichier et Ctrl + X pour quitter le fichier:

Sslprotocol -all + tlsv1.2 SSLCiphersuite High:!anull:!Md5
12Sslprotocol -all + tlsv1.2SSLCIPHERSuite High:!anull:!Md5

Exécutez maintenant la commande de rechargement d'Apache pour enregistrer la configuration:

sudo systemctl redémarrer apache2.service  

C'est ça. Vous avez réussi et sécurisé le serveur Apache.

Conclusion

Apache Web Server est un serveur open source utilisé par de nombreux sites Web sur Internet et permet aux développeurs de publier leur travail sur Internet. Ce serveur est disponible sur tous les systèmes d'exploitation, mais dans cet article, nous discutons de son installation sur la dernière version de Debian (Linux OS) et nous expliquons également comment le tester et la sécuriser après son installation réussie. Vous pourrez installer avec succès Apache2 sur Debian 11 Bullseye et configurer le serveur après avoir suivi ce guide.