Par Timilehin Omolana

L'exécution de HTTPS localement est indispensable pour certains types de développement.

Des lecteurs comme vous aident à soutenir MUO. Lorsque vous effectuez un achat en utilisant des liens sur notre site, nous pouvons gagner une commission d'affiliation. En savoir plus.

Au cours du développement, vous souhaiterez peut-être configurer votre serveur Web pour établir des connexions sécurisées avec les navigateurs. Node.js en fait un processus simple, même dans un environnement de non-production, avec sa fonction intégrée https module.

En production, vous pouvez configurer votre application derrière un proxy inverse comme NGINX, qui sert généralement des certificats pour vous. Mais vous devrez peut-être encore tester votre application en utilisant https en développement.

Comment utiliser un certificat SSL dans une application Node.js ?

Comment utiliser un certificat SSL pour développer un serveur Node.js sécurisé

Vous pouvez facilement

créer un certificat SSL auto-signé sous Linux, et suivez les étapes ci-dessous pour configurer votre application Node afin qu'elle utilise https.

  1. Créez un fichier de point d'entrée de serveur, par exemple index.js.
  2. Importez le https et fs modules dans le fichier comme ceci: constante https = exiger('https');
    constante fs = exiger('fs')
  3. Définissez l'objet d'options pour le https serveur que vous êtes sur le point de créer. N'oubliez pas de remplacer my-server-key.pem et mon-serveur-cert.pem avec les chemins corrects de vos fichiers de clé privée et de certificat. constante options = {
    clé: fs.readFileSync("my-server-key.pem"),
    cert: fs.readFileSync("mon-serveur-cert.pem")
    }
    Pour utiliser un vrai certificat SSL, que vous pouvez obtenir gratuitement sur letencrypt.org, utilisez les options suivantes: constante options = {
    clé: fs.readFileSync("/path/to/private.key"),
    certificat: fs.readFileSync("/path/to/ssl_certificate.crt"),
    Californie: [
    fs.readFileSync("/path/to/ca_root_file.crt"),
    fs.readFileSync("/path/to/ca_bundle_certificate.crt")
    ]
    }
  4. Initialisez maintenant votre serveur à l'aide des options et configurez-le pour qu'il écoute sur le port 443. https.createServer (options, (req, res) => {
    res.writeHead(200);
    res.end("bonjour le monde");
    })
    .écouter(443);

Vous pouvez maintenant démarrer votre serveur dans le terminal en utilisant index de nœud.js. Lorsque vous testez la connexion en ouvrant https://localhost ou https://localhost: 443/ dans votre navigateur, vous devriez voir 'Bonjour le monde' affiché.

Votre navigateur peut également vous avertir d'une connexion non sécurisée lors de l'utilisation du certificat auto-signé. Ceci est normal car les certificats auto-signés sont généralement considérés comme non sécurisés par les navigateurs Web.

Vous pouvez obtenir l'erreur "Erreur: écoutez EACCES: autorisation refusée 0.0.0.0:443" lorsque vous essayez de démarrer votre serveur, cela est dû au fait que votre machine refuse l'accès de l'application au port 443, qui est le comportement par défaut de la plupart des appareils. Pour résoudre ce problème, exécutez le index de nœud.js commande en tant qu'utilisateur root sous Linux (sudo node index.js), ou ouvrez votre terminal en tant qu'administrateur sous Windows.

Utilisation de certificats SSL dans les applications Node.js

La plupart du temps, vous ne voudrez ajouter des certificats SSL que pendant la phase de développement. Les exigences de production nécessitent généralement l'installation d'outils de sécurité tels que des pare-feu et des proxys inverses de toute façon.

De cette manière, l'utilisation d'un certificat SSL pour votre application n'est plus nécessaire. Vous ne voudrez peut-être ajouter un certificat SSL en production que si votre application communique avec des services externes.

Abonnez-vous à notre newsletter

commentaires

PartagerTweeterPartagerPartagerPartager
droits d'auteur
E-mail
Partager
PartagerTweeterPartagerPartagerPartager
droits d'auteur
E-mail

Lien copié dans le presse-papiers

Rubriques connexes

  • La programmation
  • Développement web
  • SSL
  • Javascript

A propos de l'auteur

Timilehin Omolana(12 articles publiés)

Timilehin est un ingénieur logiciel et rédacteur technique qui aime explorer le monde des technologies côté serveur et des systèmes distribués.