Door Timilehin Omolana

Het lokaal uitvoeren van HTTPS is een must voor bepaalde soorten ontwikkeling.

Lezers zoals jij steunen MUO. Wanneer u een aankoop doet via links op onze site, kunnen we een aangesloten commissie verdienen. Lees verder.

Tijdens de ontwikkeling wilt u misschien uw webserver instellen om veilige verbindingen met browsers tot stand te brengen. Node.js maakt dit een eenvoudig proces, zelfs in een niet-productieomgeving, met zijn ingebouwde https moduul.

In productie zou u uw applicatie kunnen opzetten achter een reverse proxy zoals NGINX, die meestal certificaten voor u levert. Maar mogelijk moet u uw toepassing nog steeds testen met behulp van https in ontwikkeling.

Hoe kun je een SSL-certificaat gebruiken in een Node.js-applicatie?

Een SSL-certificaat gebruiken om een ​​veilige Node.js-server te ontwikkelen

Je kunt gemakkelijk maak een zelfondertekend SSL-certificaat in Linuxen volg de onderstaande stappen om uw Node-toepassing te configureren om te gebruiken https.

instagram viewer
  1. Maak een server-toegangspuntbestand, bijvoorbeeld index.js.
  2. Importeer de https En fs modules in het bestand als volgt: const https= vereisen('https');
    const f = vereisen('fs')
  3. Definieer het optieobject voor het https server die u gaat maken. Vergeet niet te vervangen mijn-serversleutel.pem En mijn-server-cert.pem met de juiste paden van uw persoonlijke sleutel en certificaatbestanden. const opties = {
    sleutel: fs.readFileSync("mijn-server-sleutel.pem"),
    cert: fs.readFileSync("mijn-server-cert.pem")
    }
    Om een ​​echt SSL-certificaat te gebruiken, dat u gratis kunt krijgen bij letsencrypt.org, gebruik de volgende opties: const opties = {
    toets: fs.readFileSync("/path/to/private.key"),
    cert: fs.readFileSync("/path/naar/ssl_certificate.crt"),
    ongeveer: [
    fs.readFileSync("/path/naar/ca_root_file.crt"),
    fs.readFileSync("/path/naar/ca_bundle_certificate.crt")
    ]
    }
  4. Initialiseer nu uw server met behulp van de opties en stel deze in om te luisteren op poort 443. https.createServer (opties, (req, res) => {
    res.writeHead(200);
    res.end("hallo wereld");
    })
    .luisteren(443);

U kunt nu uw server in de terminal starten met behulp van knooppunt index.js. Wanneer u de verbinding test door te openen https://localhost of https://localhost: 443/ in uw browser, zou u moeten zien 'Hallo Wereld' weergegeven.

Uw browser kan u ook waarschuwen voor een onveilige verbinding wanneer u het zelfondertekende certificaat gebruikt. Dit is normaal aangezien zelfondertekende certificaten over het algemeen als onveilig worden beschouwd door webbrowsers.

Mogelijk krijgt u de fout "Fout: luister EACCES: toestemming geweigerd 0.0.0.0:443" wanneer u uw server probeert te starten, komt dit doordat uw machine de toepassing toegang tot poort 443 weigert, wat het standaardgedrag is op de meeste apparaten. Om dit op te lossen, voert u het knooppunt index.js commando als de rootgebruiker in Linux (sudo node index.js), of open uw terminal als beheerder in Windows.

SSL-certificaten gebruiken in Node.js-toepassingen

Meestal wil je SSL-certificaten pas tijdens de ontwikkelingsfase toevoegen. Productie-eisen vereisen meestal sowieso de installatie van beveiligingstools zoals firewalls en reverse proxy's.

Op deze manier is het gebruik van een SSL-certificaat voor uw applicatie niet meer nodig. Mogelijk wilt u alleen een SSL-certificaat in productie toevoegen als uw applicatie communiceert met externe services.

Abonneer op onze nieuwsbrief

Opmerkingen

DeelTweetenDeelDeelDeel
auteursrechten
E-mail
Deel
DeelTweetenDeelDeelDeel
auteursrechten
E-mail

Link gekopieerd naar klembord

Gerelateerde onderwerpen

  • Programmeren
  • Webontwikkeling
  • SSL
  • javascript

Over de auteur

Timilehin Omolana(12 artikelen gepubliceerd)

Timilehin is een software-ingenieur en technisch schrijver die graag de wereld van server-side technologieën en gedistribueerde systemen verkent.