от Тимилехин Омолана

Изпълнението на HTTPS локално е задължително за определени видове разработки.

Читатели като вас помагат в подкрепа на MUO. Когато правите покупка чрез връзки на нашия сайт, ние може да спечелим комисионна за партньор. Прочетете още.

По време на разработката може да поискате да настроите вашия уеб сървър, за да установява сигурни връзки с браузъри. Node.js прави това лесен процес, дори в непроизводствена среда, с вградените си https модул.

В производството може да настроите приложението си зад обратен прокси като NGINX, който обикновено обслужва сертификати вместо вас. Но все пак може да се наложи да тествате приложението си, като използвате https в развитие.

Как можете да използвате SSL сертификат в Node.js приложение?

Как да използвате SSL сертификат за разработване на защитен Node.js сървър

Можете лесно създайте самоподписан SSL сертификат в Linuxи следвайте стъпките по-долу, за да конфигурирате вашето приложение Node за използване https.

instagram viewer
  1. Създайте файл с входна точка на сървъра, например index.js.
  2. Импортирайте https и fs модули във файла по следния начин: конст https = изискват('https');
    конст fs = изискват('fs')
  3. Дефинирайте обекта с опции за https сървър, който ще създадете. Не забравяйте да замените my-server-key.pem и my-server-cert.pem с правилните пътища на вашия личен ключ и файлове със сертификати. конст опции = {
    ключ: fs.readFileSync("my-server-key.pem"),
    сертификат: fs.readFileSync("my-server-cert.pem")
    }
    За да използвате истински SSL сертификат, който можете да получите безплатно на letsencrypt.org, използвайте следните опции: конст опции = {
    ключ: fs.readFileSync("/path/към/private.key"),
    сертификат: fs.readFileSync("/path/към/ssl_certificate.crt"),
    около: [
    fs.readFileSync("/path/към/ca_root_file.crt"),
    fs.readFileSync("/path/към/ca_bundle_certificate.crt")
    ]
    }
  4. Сега инициализирайте вашия сървър с помощта на опциите и го настройте да слуша на порт 443. https.createServer (опции, (req, res) => {
    res.writeHead(200);
    res.end("здравей свят");
    })
    .слушам(443);

Вече можете да стартирате вашия сървър в терминала, като използвате възел index.js. Когато тествате връзката чрез отваряне https://localhost или https://localhost: 443/ във вашия браузър, трябва да видите 'Здравей свят' Показва.

Вашият браузър може също да ви предупреди за несигурна връзка, когато използвате самоподписания сертификат. Това е нормално, тъй като самоподписаните сертификати обикновено се считат за несигурни от уеб браузърите.

Може да получите грешката „Грешка: слушане на EACCES: разрешението е отказано 0.0.0.0:443“ когато се опитате да стартирате вашия сървър, това се дължи на това, че вашата машина отказва достъп на приложението до порт 443, което е поведението по подразбиране в повечето устройства. За да коригирате това, стартирайте възел index.js команда като root потребител в Linux (sudo възел index.js), или отворете вашия терминал като администратор в Windows.

Използване на SSL сертификати в Node.js приложения

През повечето време ще искате да добавите SSL сертификати само по време на фазата на разработка. Производствените изисквания обикновено изискват инсталирането на инструменти за сигурност като защитни стени и обратни проксита.

По този начин използването на SSL сертификат за вашето приложение вече не е необходимо. Може да искате да добавите SSL сертификат само в производството, ако приложението ви комуникира с външни услуги.

Абонирайте се за нашия бюлетин

Коментари

ДялTweetДялДялДял
Авторско право
електронна поща
Дял
ДялTweetДялДялДял
Авторско право
електронна поща

Връзката е копирана в клипборда

Свързани теми

  • Програмиране
  • Уеб разработка
  • SSL
  • JavaScript

За автора

Тимилехин Омолана(12 публикувани статии)

Timilehin е софтуерен инженер и технически писател, който обича да изследва света на сървърните технологии и разпределените системи.