• Première étape
  • Matériel et accessoires ; GPIO
  • Projets
  • Logiciel
    • Serveur Web
  • Arduino & ESP8266
  • Automatisation de la maison
  • Sonstiges
    • News
Facebook Twitter YouTube
Tutorials for Raspberry Pi Tutorials for Raspberry Pi
  • Matériel et accessoires ; GPIO
  • Projets
  • Logiciel
  • Serveur Web
  • Première étape
  • Automatisation de la maison
  • Anglais
  • Allemand
Tutorials for Raspberry Pi Tutorials for Raspberry Pi
Home»Logiciel»Serveur Web»Création d’un certificat SSL Raspberry Pi gratuit avec Let’s Encrypt

Création d’un certificat SSL Raspberry Pi gratuit avec Let’s Encrypt

Facebook Twitter LinkedIn Tumblr Email Reddit
Raspberry Pi SSL TLS Lets Encrypt
Share
Facebook Twitter LinkedIn Email Tumblr Reddit Telegram WhatsApp

Une connexion via SSL/TLS protège le trafic de données en envoyant des paquets cryptés. Pour pouvoir établir une telle connexion, vous avez besoin d’un certificat d’un fournisseur digne de confiance, qui coûte généralement plus de 20 dollars par an. Grâce à l’initiative Let’s Encrypt, ces certificats SSL sont désormais accessibles à tous, gratuitement. Le grand avantage est que le certificateur est classé comme digne de confiance dans les navigateurs courants.

Dans cet article, je voudrais montrer comment utiliser les serveurs web Node.JS/Apache etc. Les applications (FTP, etc.) peuvent créer un certificat SSL Raspberry Pi.

 

Préparation

Pour pouvoir utiliser judicieusement un certificat SSL/TLS, un serveur web ou une application doit être installé sur le Raspberry Pi 3, pour lequel ou laquelle une connexion HTTP (S) doit être établie. Vous pouvez créer un serveur Node.JS.

En outre, je recommande vivement d’installer un serveur DNS dynamique si votre Raspberry Pi n’a pas d’adresse IP statique. Les fournisseurs d’accès Internet ne délivrent généralement une IP statique qu’aux ménages moyennant un supplément. Une adresse IP dynamique change au moins une fois par jour, c’est-à-dire qu’une autre adresse IP devrait être récupérée.
Ce problème peut être évité avec un service dDNS, car une connexion à un domaine (gratuit) est établie dès que l’adresse IP dynamique change. Vous pouvez donc appeler ce domaine au lieu de l’adresse IP qui change et le service dDNS s’occupe de tout le reste. En outre, votre domaine correct (si vous en avez un) peut également pointer vers ce « domaine intermédiaire » via des entrées DNS.

Si vous utilisez un serveur Apache, vous pouvez le terminer de la manière suivante. Pour terminer un serveur Node.JS, il suffit de détruire l’application (si nécessaire, terminez le processus d’arrière-plan).

sudo service apache2 stop

Assurez-vous également qu’en plus du port 80, le port 443 de votre routeur (recommandation : FRITZ ! Box) est également approuvé pour l’adresse IP interne du Raspberry Pi.

 

Création d’un certificat SSL Let’s Encrypt

Nous utilisons Git pour télécharger l’outil de création de certificats. Celui-ci est déjà inclus dans les versions les plus récentes de Raspbian. Si ce n’est pas sur votre système d’exploitation (par exemple une version Minimal Raspbian), vous pouvez simplement l’installer :

sudo apt-get install git

Nous chargeons ensuite les fichiers dans notre répertoire personnel et allons dans ce dossier :

cd ~
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt

Il vous faut à présent tous les domaines auxquels ce certificat doit s’appliquer. Si vous avez, par exemple, des sous-domaines ou si votre domaine est appelé avec et sans « www », vous pouvez tous les spécifier tout de suite. Dans mon exemple, je veux juste créer le certificat SSL pour mon domaine, que j’ai obtenu de NoIP. S’il y a plusieurs domaines, vous devez d’abord entrer le domaine principal.

La commande pour créer le certificat Let’s Encrypt est la suivante (remplacer domaines et mail) :

./letsencrypt-auto -d FIRST_DOMAIN -d SECOND_DOMAIN --redirect -m YOUR_MAIL

Le paramètre --redirect spécifie que les connexions HTTP normales sont automatiquement transférées vers HTTPS. L’adresse e-mail est nécessaire pour nous contacter ou si le certificat devait être restauré un jour.

Remarque : si vous utilisez un serveur Apache, vous pouvez également laisser l’outil effectuer tous les autres réglages en ajoutant le paramètre --apache.

Il vous sera maintenant demandé de lire et d’accepter les conditions d’utilisation.

Avec l’option certonly vous pouvez également spécifier que seuls les certificats doivent être créés. Dans le dossier « /etc/letsencrypt/live/ » il y a un nouveau dossier avec le nom de notre domaine principal. Il y a quatre fichiers clés qui sont nécessaires.  Selon l’application, l’installation des certificats SSL est quelque peu différente. Dans Node.JS le certificat doit être par exemple chargé par le code. Vous pouvez découvrir ici comment fonctionne la configuration manuelle pour Apache2.

À ce sujet : Si vous avez besoin d’aide ou si vous voulez voir tous les autres paramètres de l’outil, vous pouvez le faire facilement avec ./letsencrypt-auto --help all

 

Renouvellement du certificat SSL

Tous les certificats Let’s Encrypt ont une durée de vie de 3 mois. Après cette période, ils expirent et doivent être renouvelés. Le renouvellement du certificat SSL de Raspberry Pi est très facile (n’oubliez pas de l’ajuster) :

./letsencrypt-auto -d FIRST_DOMAIN -d SECOND_DOMAIN --redirect -m YOUR_MAIL --agree-tos --renew-by-default

Ici, c’est le paramètre --renew-by-default

qui est déterminant. Les autres paramètres (supplémentaires) sont identiques à ceux que nous avons spécifiés lors de leur création.

Or, il se trouve qu’en fonctionnement continu, on ne veut pas forcément penser à mettre à jour le certificat tous les 3 mois. Il existe donc une petite astuce : si le Raspberry Pi est (presque) toujours en fonctionnement de toute façon, nous pouvons mettre à jour le certificat plus tôt, par exemple tous les mois. Pour exécuter cette opération automatiquement, nous utilisons Cron:

sudo crontab -e

À la fin de ce fichier, nous ajoutons la ligne suivante (adaptée comme ci-dessus) :

Shell
1
0 1 2 * * /home/pi/letsencrypt/letsencrypt-auto -d FIRST_DOMAIN -d SECOND_DOMAIN --redirect -m YOUR_MAIL --agree-tos --renew-by-default

Ceci lancera l’outil le 1er de chaque mois à 02:00 et renouvellera notre certificat SSL Raspberry Pi.

 

Test du certificat SSL de Raspberry Pi

Si le service DNS dynamique est en cours d’exécution et que votre serveur web est redémarré (sudo /etc/init.d/apache2 start) vous pouvez maintenant tester dans le navigateur si votre certificat a été reconnu. Pour ce faire, il suffit d’ouvrir le domaine avec https : // au début. Avec apache2 en particulier, il est important que le fichier /etc/apache2/ports.conf ne comporte qu’une seule entrée qui utilise le port 443 (commentez toutes les autres) :

<IfModule mod_ssl.c>
      Listen 443
</IfModule>

Le certificat devrait à présent s’afficher dans le navigateur :

Raspberry Pi SSL Certificate from Let's Encrypt

 

De nombreux autres détails peuvent également être trouvés dans la documentation officielle de Let’s Encrypt.

Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
Previous ArticleTop 12 Advanced Robot Kits For Adults – Full Overview
Next Article Construisez votre propre boussole Raspberry Pi (HMC5883L)

Related Posts

Comment configurer serveur Web Raspberry Pi Node.js et contrôler GPIOs

Communication sans fil entre les Raspberry Pi via le courtier/client MQTT

Comment configurer caméra de sécurité Raspberry Pi Livestream

Comment configurer un serveur FTP Raspberry Pi – Installation du serveur Web

Leave A Reply Cancel Reply

Mesure de la température avec un capteur de température Raspberry Pi (1-Wire)

Raspberry Pi: Mesurez l’humidité et la température avec DHT11/DHT22

Comment utiliser les photorésistances (luminosité/capteur de lumière) avec un Raspberry Pi?

Comment établir une connexion Raspberry Pi à distance de bureau

Circuit lumineux Raspberry Pi avec GPIO partie 2

Apprendre à programmer sur le Raspberry Pi – Partie 1 : Introduction

ABONNEZ-VOUS MAINTENANT
Et recevez de nouveaux tutoriels dans votre boîte de réception.
Cliquez ici pour soumettre!

Merci!

Nous vous contacterons bientôt.

Tutorials for Raspberry Pi
Facebook Twitter YouTube
  • Politique de confidentialité
  • Conditions de service & Politique sur les cookies

Type above and press Enter to search. Press Esc to cancel.