https avec Node-RED
Il est temps de configurer Node-RED en https, ce qui permettra de chiffrer les échanges, d'assurer l'intégrité des données et d'authentifier le serveur Node-RED.
Configurer Node-RED en https
Création d'un certificat auto-signé
Le protocole TLS nécessite la demande de signature de certificat (CSR) à une autorité de certification. Pour des raisons pratiques nous ne ferons pas de demande et nous allons créer un certificat auto-signé.
Méthode :

Pour créer un certificat auto-signé il faut disposer d'outils logiciels, nous allons utiliser l'outil libre OpenSSL.
Dézipper l'archive suivante : openssl-v3 [zip] dans le dossier dézippé lancé launch.bat qui ouvre une console dans laquelle on va pouvoir taper des lignes de commande pour créer le certificat auto-signé.
Taper la ligne suivante qui permet de générer une paire de clés publique privée RSA[1] de 2048 bits et de stocker cette clé dans le fichier node-key.pem :
openssl genrsa -out node-key.pem 2048
Taper la commande dir pour voir si la clé a bien été générée puis taper la commande type node-key.pem pour voir le contenu du fichier node-key.pem.
Il faut maintenant créer le certificat numérique qui contiendra des informations sur l'identité du serveur :
Champ | Valeur | Remarque |
Country name [AU] | FR | |
State or Province | PACA | |
Locality Name | Toulon | |
Organisation Name | LycRouv | |
Organiszation Unit Name | Ciel | |
Common Name | <adresse_ip> | Remplacer <adresse_ip> par l'adresse de votre poste (ipconfig /all) |
Email Address | 0831616f@ac-nice.fr | |
Challenge password [] : | Laisser vide | |
An optional company name [] : | Laisser vide |
Taper la ligne de commande suivante pour créer une demande de certificat numérique (CSR) avec les informations du tableau précédent :
openssl req -new -sha256 -key node-key.pem -out node-csr.pem
Il ne reste plus qu'à signer le CSR avec la clé privée afin de créer le certificat au format X509 :
openssl x509 -req -in node-csr.pem -signkey node-key.pem -out node-cert.pem
Vérifier les informations de votre certificat puis faire une capture d'écran (commande + résultat sauf la valeur de la signature) :
openssl req -in node-csr.pem -noout -text
Paramétrage de Node-RED
Méthode :
Copier coller les fichiers node-key.pem et node-cert.pem dans le répertoire de node-RED. Décommenter le bloc suivant et remplacer le nom des fichiers privkey.pem et cert.pem par respectivement node-key.pem et node-cert.pem :
//https: { // key: require("fs").readFileSync('privkey.pem'), // cert: require("fs").readFileSync('cert.pem') //},Validation de la configuration https de Node-RED
Méthode :
Redémarrer Node-RED puis taper https://localhost:1880 dans la barre d'adresse du navigateur Edge
, vous devez obtenir une alerte de sécurité :
Alerte de sécurité https sur Edge

Q.9 Pourquoi a-t-on une alerte de sécurité ? Quelle condition du https n'est pas remplie (intégrité, confidentialité, authentification du serveur) ? Quel est l'intérêt d'avoir mis en place le https pour Node-RED ?
Conseil :
En cliquant sur l'icône à gauche de l'url vous pouvez avoir des informations :
sur le certificat que le navigateur à demander à Node-RED ;
sur la signification de l'alerte affichée.
Dans Edge
il est possible d'avoir plus de détails sur les caractéristiques de la connexion en appuyant sur F12 puis en ajoutant l'outil Sécurité à la barre d'activités.
À lire également : https://www.globalsign.com/fr/centre-information-ssl/dangers-certificats-auto-signes.
Méthode :
Faire la capture d'écran des informations générales du certificat obtenu par Edge.
Dans Edge
cliquer sur le bouton Avancé
puis cliquer sur Continuer vers localhost(non sécurisé) pour accéder à Node-RED. Essayer d'accéder au tableau de bord et observez que l'on a le même avertissement de sécurité.
Alerte « Non sécurisé » sous Edge

