Geekflare est soutenu par notre public. Nous pouvons gagner des commissions d'affiliation en achetant des liens sur ce site.
Partager sur:

Comment installer Apache et Secure avec Let's Encrypt Certificate ?

Installer-Apache-et-sécuriser-avec-Lets-Encrypt-Certificate
Scanner de sécurité des applications Web Invicti – la seule solution qui offre une vérification automatique des vulnérabilités avec Proof-Based Scanning™.

Apprenons à installer le serveur HTTP Apache et à le sécuriser avec le certificat Let's Encrypt.

Introduction

Apache est l'un des serveurs Web HTTP les plus utilisés. Configurer Apache et le sécuriser avec un certificat SSL est la première étape que vous devez effectuer pour vos applications Web.

Dans ce didacticiel, vous apprendrez à configurer Apache pour votre site Web sur Ubuntu et CentOS. J'ai testé ça sur VM DigitalOcean.

À des fins de démonstration. Je vais utiliser le nom de domaine de test test.sanakil.xyz, lequel est suralimenté par Cloudflare.

N'oubliez pas de remplacer le test.sanakil.xyz domaine avec votre domaine réel. 📢

DNS Record Creation

Connectez-vous à Cloudflare ou à votre registraire de domaine (sinon Cloudflare) et créez un Un enregistrement pour faire pointer le domaine vers l'adresse IP de la VM cloud.

Connectez-vous à votre serveur cloud via SSH.

Installing Apache(Ubuntu)

Pour mettre à jour les packages disponibles

sudo apt-get update

Installez Apache

sudo apt-get install apache2

Autorisez les ports 80 et 443 dans votre pare-feu pour le serveur HTTP.

sudo ufw allow 'Apache Full'

Vérifiez que votre apache installé fonctionne correctement

sudo systemctl status apache2

Installing Apache(CentOS)

Mettez à jour les packages disponibles.

sudo yum update

Installez Apache

sudo yum install httpd

Ajoutez les ports 80 et 443 dans le pare-feu pour accéder à l'application Web.

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

Démarrez Apache et vérifiez l'état de fonctionnement

sudo systemctl start httpd
sudo systemctl status httpd

Create VirtualHost for the website

Un hôte virtuel peut être créé de deux manières en fonction du type d'application Web / de site Web que nous servons.

Supposons que l'application dispose déjà d'un serveur Web tel que Node exécuté sur un port. Nous pouvons utiliser un proxy pour le servir dans apache. Ou si l'application ne sert que les fichiers comme des sites statiques. Nous pouvons spécifier le chemin de l'application à servir dans apache.

Créez un fichier hôte virtuel dans apache - le fichier de configuration peut avoir n'importe quel nom. Mais le garder avec le nom de domaine que nous allons servir l'application Web sera mieux pour une identification facile.

Configuration supplémentaire pour CentOS

Dans CentOS (SELinux), tout n'est pas activé par défaut comme Ubuntu.

Nous devons créer compatible avec les sites et sites disponibles dossiers dans apache.

compatible avec les sites - dit à Apache de servir le visiteur avec les fichiers de configuration qu'il contient

sites disponibles - stocker les fichiers de configuration de l'hôte virtuel

sudo mkdir /etc/httpd/sites-available /etc/httpd/sites-enabled

Dites maintenant à l'apache de lire le fichier conf dans le dossier des sites activés.

sudo vi /etc/httpd/conf/httpd.conf

Ajoutez la ligne ci-dessous à la fin du fichier

IncludeOptional sites-enabled/*.conf

Configure Apache to serve files

  • Créez un dossier pour diffuser votre application Web
sudo mkdir -p /var/www/test.sanakil.xyz/webapp
sudo vi /var/www/test.sanakil.xyz/webapp/index.html
  • Collez l'extrait de code HTML ci-dessous pour le test
<!DOCTYPE html>
<html lang="en">
<head>
<title>Apache webapp</title>
</head>
<body>
<h1>My Apache webapp is working in test.sanakil.xyz</h1>
</body>
</html>
  • Créez un dossier pour générer et stocker des journaux
sudo mkdir -p /var/www/test.sanakil.xyz/log
sudo touch /var/www/test.sanakil.xyz/request.log
sudo touch /var/www/test.sanakil.xyz/log/error.log
Configuration de l'hôte virtuel
  • Ouvrez le fichier conf (Ubuntu)
sudo vi /etc/apache2/sites-available/test.sanakil.xyz.conf
  • Ouvrez le fichier conf (CentOS)
sudo vi /etc/httpd/sites-available/test.sankil.xyz.conf
  • Collez l'extrait de configuration ci-dessous en modifiant votre-nom-de-domaine
<VirtualHost *:80>
ServerName test.sanakil.xyz
ServerAlias test.sanaki.xyz
DocumentRoot /var/www/test.sanakil.xyz/webapp
ErrorLog /var/www/test.sankil.xyz/log/error.log
CustomLog /var/www/test.sanakil.xyz/log/requests.log combined
</VirtualHost>
  • Donnez l'autorisation requise pour votre dossier.
sudo chown -R $USER:$USER /var/www/test.sanakil.xyz
sudo chmod -R 755 /var/www/test.sanakil.xyz
Activez votre fichier de configuration d'hôte virtuel dans Apache (Ubuntu)
sudo a2ensite test.sanakil.xyz.conf

Désactivez le fichier de configuration par défaut pour des raisons de sécurité

sudo a2dissite 000-default.conf

Redémarrez apache pour que les modifications prennent effet.

sudo systemctl restart apache2

Activez votre fichier de configuration d'hôte virtuel dans Apache (CentOS)

Créer un lien symbolique pour Apache

sudo ln -s /etc/httpd/sites-available/test.sanakil.xyz.conf 
/etc/httpd/sites-enabled/test.sanakil.xyz.conf

Redémarrez apache pour que les modifications prennent effet.

sudo systemctl restart httpd

Enabling HTTPS

L'activation de HTTPS dans le serveur Web Apache dans Ubuntu a été facilitée en utilisant certbot et Encryptons. 

Chiffrons est une organisation à but non lucratif qui a fourni gratuitement un certificat SSL pour des millions de sites Web.

Certbot est un logiciel qui configurera automatiquement HTTPS pour notre site Web à l'aide de Let's encrypt.

Ajouter et installer certbot pour apache (Ubuntu)

sudo add-apt-repository ppa:certbot/certbot
sudo apt install python-certbot-apache

Ajouter et installer certbot pour apache (CentOS)

sudo yum install epel-release
sudo yum install certbot python2-certbot-apache mod_ssl

Obtenez un certificat SSL

sudo certbot --apache -d your-domain-name

Si toute la vérification est effectuée par certbot sans aucun problème.

Il demandera une redirection HTTPS. Sélectionnez l'option 2 et entrez.

C'est tout.

Si tout fonctionne correctement, https://test.sanakil.xyz affichera une page d'index HTML de base que nous avons créée.

Conclusion

J'espère que cela vous donne une idée de l'installation et de la mise en œuvre d'un certificat SSL sur Apache.

Ensuite, découvrez comment implémenter un certificat dans Nginx.

Merci à nos commanditaires
Plus de bonnes lectures sur Apache HTTP
Alimentez votre entreprise
Certains des outils et services pour aider votre entreprise à se développer.
  • Invicti utilise Proof-Based Scanning™ pour vérifier automatiquement les vulnérabilités identifiées et générer des résultats exploitables en quelques heures seulement.
    Essayez Invicti
  • Web scraping, proxy résidentiel, proxy manager, web unlocker, moteur de recherche et tout ce dont vous avez besoin pour collecter des données Web.
    Essayez Brightdata
  • Semrush est une solution de marketing numérique tout-en-un avec plus de 50 outils de référencement, de médias sociaux et de marketing de contenu.
    Essayez Semrush
  • Intruder est un scanner de vulnérabilités en ligne qui détecte les failles de cybersécurité de votre infrastructure, afin d'éviter des violations de données coûteuses.
    Essayez Intruder