Comment installer Apache (HTTPD) sur Rhel & Centos Stream 9

Comment installer Apache (HTTPD) sur Rhel & Centos Stream 9

Apache est l'un des serveurs Web open source les plus populaires disponibles aujourd'hui, offrant un ensemble robuste de fonctionnalités et de hautes performances. Dans cet article, nous vous montrerons comment installer Apache sur Rhel & Centos Stream 9, puis le sécuriser pour une utilisation en production.

Conditions préalables

Avant de commencer, vous devrez avoir accès à un serveur exécutant Rhel & Centos Stream 9. Vous devez également avoir des privilèges racine ou sudo afin que vous puissiez installer des packages et apporter des modifications au système. De plus, vous devrez avoir une compréhension de base des commandes Linux et comment utiliser un éditeur de texte tel que Nano ou VIM.

Étape 1: Installation d'Apache

Pour installer Apache, vous devrez d'abord ajouter le référentiel EPEL à votre système. Cela peut être fait avec la commande suivante:

sudo dnf installer EPEL-libération  

Ensuite, vous pouvez installer Apache à l'aide de la commande suivante:

sudo dnf installer httpd  

Une fois l'installation terminée, vous pouvez démarrer Apache avec la commande suivante:

sudo systemctl start httpd  

Pour vous assurer qu'Apache démarre automatiquement au démarrage, exécutez la commande suivante:

sudo systemctl activer httpd  

Étape 2: test de l'installation

Pour tester l'installation, ouvrez un navigateur Web et accédez à 'http: // your-server-ip'. Vous devriez voir une page qui dit «Bienvenue sur votre serveur Web Apache». Cela confirme qu'Apache est opérationnel sur votre système.

Installation du serveur Web Apache (HTTPD)

Étape 3: sécuriser Apache

Maintenant qu'Apache est installé, il est temps de le sécuriser pour une utilisation en production. Voici quelques étapes clés à suivre:

  1. Mettre à jour Apache vers la dernière version
  2. Il est important de maintenir votre installation Apache à jour afin de profiter des correctifs de sécurité et d'autres améliorations. Vous pouvez mettre à jour Apache à l'aide de la commande suivante:

    Sudo DNF Update httpd  

  3. Désactiver la liste des répertoires
  4. Par défaut, Apache affichera une liste de répertoire si aucun fichier d'index n'est présent dans un répertoire. Cela peut représenter un risque de sécurité, il est donc préférable de désactiver la liste des répertoires. Vous pouvez le faire en ajoutant les lignes suivantes au fichier de configuration Apache situé à / etc / httpd / conf / httpd.conf:

    Options - Indexes
    123Options - Indexes

  5. Configurer un pare-feu
  6. Un pare-feu peut aider à protéger votre serveur contre l'accès non autorisé en bloquant le trafic entrant sur certains ports. Sur Rhel & Centos Stream 9, vous pouvez utiliser le service de pare-feu intégré, Firewalld, pour contrôler le trafic entrant. Pour autoriser le trafic à Apache, exécutez la commande suivante:

    Sudo Firewall-CMD - Permanent --Add-Service = HTTP  SUDO FIRWALL-CMD - Reload  

  7. Activer le cryptage SSL / TLS
  8. Afin de crypter les données transmises entre le serveur et les clients, vous devez activer le cryptage SSL / TLS. Cela peut être fait en obtenant un certificat SSL et en configurant Apache pour l'utiliser. Un certificat auto-signé peut être créé à l'aide de la commande suivante:

    Sudo OpenSSL REQ -X509 -Nodes -Days 365 -Newkey RSA: 2048 -Keyout / etc / SSL / Private / Apache.clé -out / etc / ssl / certs / apache.CRT  

    Ensuite, vous devez configurer Apache pour utiliser le certificat. Cela peut être fait en ajoutant les lignes suivantes au fichier de configuration Apache situé à / etc / httpd / conf / httpd.conf:

    DocumentRoot "/ var / www / html" ServerName votre nom de serveur Sslengine sur sslcertificatefile / etc / ssl / certs / apache.CRT SSLCertificateKeyFile / etc / SSL / Private / Apache.Les indices d'options clés suivent les liens de réduction
    1234567891011121314 DocumentRoot "/ var / www / html" ServerName votre nom de serveur Sslengine sur sslcertificatefile / etc / ssl / certs / apache.CRT SSLCertificateKeyFile / etc / SSL / Private / Apache.clé Index d'options suit Suivre Autoverride

    Redémarrez Apache après avoir apporté ces modifications en utilisant la commande suivante:

    sudo systemctl redémarrer httpd  

  9. Limiter l'accès aux fichiers sensibles
  10. Il est important de limiter l'accès aux fichiers sensibles tels que les fichiers de configuration et les journaux. Vous pouvez le faire en ajoutant les lignes suivantes au fichier de configuration Apache situé à / etc / httpd / conf / httpd.conf:

    Exiger tous les refus
    123 Exiger tous les refus

Conclusion

En suivant les étapes décrites dans cet article, vous avez réussi à installer et à sécuriser Apache sur Rhel & Centos Stream 9. Ce ne sont que quelques-unes des étapes de base pour sécuriser votre installation Apache, et vous devez toujours rester à jour sur les meilleures pratiques et développements de sécurité sur le terrain pour vous assurer que votre serveur reste sécurisé. De plus, il est important de surveiller régulièrement vos journaux Apache et de garder un œil sur tous les signes d'activité malveillante ou d'incidents de sécurité. Avec les bonnes précautions en place, vous pouvez vous assurer que votre serveur Apache fonctionne bien et en toute sécurité.