Certificado SSL en Servidor Web

En este post voy a detallar como crear un certificado SSL en Ubuntu Server, como enviarlo a una entidad certificadora y como configurar servidor virtual en Apache con el certificado firmado.

Lo primero que tenemos que hacer si no lo tenemos ya habilitado, es habilitar el módulo SSL en Ubuntu Server.  Esto se hace facilmente ejecutando en un terminal el siguiente comando:

Reinicia el servidor para que los cambios tengan efecto:

Ahora toca crear nuestro certificado digital. Para ello y valiéndonos de la estupenda herramienta openssl que viene instalada en Ubuntu Server, nos creamos nuestra clave RSA de 2048 Bit:

Ahora generamos la solicitud del certficado CSR para luego mandarla a una entidad certificadora:

Aquí hay que tener un poco de cuidado al cumplimentar los datos de la solicitud del certificado si luego lo queremos enviar a una entidad certificadora.

Aquí teneis un ejemplo:

Country name: ES (es el codigo del pais de dos dígitos)

State or province: Alicante (nombre completo)

Locality Name: Torrevieja (nombre completo)

Organization name: (el nombre de tu organización)

Organizational Unit name: (lo mismo que antes)

Common name: www.tuweb.com (Es el nombre de de tu web donde se va a instalar el certificado. Muy importante este campo para la validación de la entidad certificadora)

Email Address: Tu email (muy importante este campo para la validación de la entidad certificadora)

Una vez hecho esto tienes 2 posibilidades. Mandar el certificado que has creado a una entidad certificadora o firmarlo tu mismo. La ventaja de mandarlo a una entidad certificadora es que no sale la pantalla de aviso de conexion no verificada, que puede espantar a un visitante no experto:

2011-10-19-09-09-25-5809bb

Si no quieres gastar dinero puedes firmarlo tu mismo con el siguiente comando:

En mi caso busqué una entidad certificadora que fuese lo mas compatible posible con todos los navegadores web y que a la vez sea muy barata. Aquí hay de todo y de muchos precios y caracteristicas, las mas famosas son Verisign o Truste. En mi caso vi una super barata aquí por unos 5 euros al año que para lo que yo quiero me sobra:

http://www.dondominio.com/products/ssl/comodo-positive-ssl/

El proceso fue muy rápido y sencillo y el mismo dia me enviaron por email el certificado firmado y el certificado con la entidad intermediara. Es decir un fichero .crt y otro .ca-crt

Ahora ya solo queda copiar la clave y los certificados firmados a sus directorios correspondientes en el servidor y configurar un servidor virtual en Apache para que atienda las peticiones https y cifre las conexiones a la página.

Aquí tenes los comandos para copiar la clave y certificado en sus directorios corresponedientes del servidor y establecer los permisos en Ubuntu Server:

Aqui tenéis un ejemplo de configuración de servidor virtual en Apache:

Una vez reiniciado Apache puedes comprobar que el certificado esta configurado correctamente desde esta página:

http://www.sslshopper.com/ssl-checker.html

Otro punto importante es que si quieres tener multiples certificados SSL corriendo en un mismo servidor que atiende diferentes dominios con un única IP, se necesita añadir esta linea en el fichero de configuracion de Apache.

Es decir editas este fichero:

Y añadir esta linea:

Leave a Reply

%d bloggers like this: