@@CLIMA@@

Instalar certificado verisign con nginx

Jorge Martínez Mauricio

Si compramos un certificado de seguridad con Verisign y deseamos activarlo en nuestro servidor web nginx, seguimos los siguientes pasos:

1. Generamos el archivo con la frase de desafío: es necesario no olvidarnos de dicha frase dado que una vez comprado un certificado (cuesta unos 12 mil pesos por año) y si no nos acordamos de la misma, nos cobrarán 100 USD por cambiar el certificado.

openssl genrsa -des3 -out /etc/nginx/server.key 2048

2. (opcional) =mas= eliminamos la frase de desafío del archivo anterior para que nginx no nos solicite la contraseña cada vez que iniciamos (y para automatizar el proceso, de otra forma cada que reiniciemos o iniciemos el servicio deberá ser manual, ya que nos pedirá la frase de desafío.).

openssl rsa -in /etc/nginx/server.key -out /etc/nginx/server.key.insecure

3. Generamos  el archivo CSR que nos solicita verisign y que será enviado a ellos. Es importante no llenar el campo de correo electrónico y lo más importante, en Common Name debemos establecer el host visible donde estará el certificado. Si tenemos el dominio tar.mx y queremos que la página que tenga el certificado sea secure.tar.mx entonces pondremos este último. Solo podrá ser usado en un host, por lo que igual si nos equivocamos no podremos utilizar el certificado, o tendremos que pagar una multa por cambiarlo. No poner acentos ni tildes.

openssl req -new -key /etc/nginx/server.key -out server.csr

4. Enviamos el archivo .csr a nuestro proveedor (verisign o alguno local) y nos devolverá el certificado .CRT además de una liga para descargar el certificado intermedio.

5. Almacenamos nuestro certificado como server.crt (los nombres pueden ser como gusten).

6. Concatenamos el certificado intermedio (de verisign) con nuestro certificado que nos envió el proveedor:

cat /etc/nginx/certificadointermedio >> /etc/nginx/server.crt

7. Listo, configuramos en nginx para que lea dichos archivos, dentro de alguna sección de server:

ssl on;
ssl_certificate /etc/nginx/server.crt;
ssl_certificate_key /etc/nginx/server.key.insecure;

Eso es todo.

Fotos más vistas en 15 días