Tiro monedas al aire, pero hasta ahora nunca las pude agarrar.

Visitas: 3

Para crear un servidor https con NodeJS son los mismos pasos que al crear un servidor con http.
Hace unas semanas que estoy probando NodeJS y ahora me dio la curiosidad de probar cosas nuevas como por ejemplo colocar el sitio usando ssl.

Obs:

  • Uso Ubuntu 14.04.3 LTS de 64 bits.
  • Asumo que tienen instalado NodeJS y NPM.
  • Se necesita tener el certificado ssl para colocarlo en el servidor que vamos a crear.

Para crear el certificado tenemos que hacer lo siguiente:
sudo mkdir /var/www/html/servidorHTTPSNodeJS
cd /var/www/html/servidorHTTPSNodeJS
sudo mkdir ssl
sudo chown -R proyectosbeta:proyectosbeta /var/www/html/servidorHTTPSNodeJS
cd ssl
openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

Volvemos a la terminal y nos dirigimos donde se va a encontrar nuestro nuevo servidor https usando NodeJS. En mi caso seria la ruta /var/www/html/servidorHTTPSNodeJS:
cd /var/www/html/servidorHTTPSNodeJS
npm init

Se crea el archivo package.json como el siguiente:
{
  "name": "servidorHTTPSNodeJS",
  "version": "0.0.1",
  "description": "Prueba sobre https con NodeJS",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "Jose Alberto Gonzalez von Schmeling",
  "license": "BSD-2-Clause"
}

Volvemos a entrar a la terminal y tecleamos lo siguiente:
sudo npm install https
sudo npm install express

Ahora creamos index.js
var https = require('https');
var fs = require('fs');
var app = require('express')();
var options = {
key: fs.readFileSync('./ssl/server.key'),
cert: fs.readFileSync('./ssl/server.crt')
};

app.get(‘/’, function (req, res) {
      res.send(‘Hola Mundo!!! Estamos usando https.’);
});

https.createServer(options, app).listen(3000, function () {
      console.log(‘Iniciado!’);
});

Levantamos el servidor:
node index.js

Entramos a nuestro navegador favorito y escribimos en la barra de direcciones:
https://localhost:3000

Servidor https en NodeJS
Servidor https en NodeJS

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *