Conexiones seguras mediante HTTPS en Apache

Anuncio
ADMINISTRACIÓN DE SERVICIOS DE INTERNET (IFCT0509)
Práctica
Conexiones seguras mediante HTTPS en Apache
OBJETIVOS



Identificación de las conexiones seguras mediante HTTP (HTTP + SSL/TLS).
Explicar el concepto, características y funcionalidad de los certificados de
servidores seguros.
Describir los pasos a seguir para instalar certificados digitales en el servidor
Apache.
Crear certificados de servidor y de usuario en instalarlos en el sistema.
Descripción
Generación de un certificado auto-firmado en Apache.
Generación de un certificado auto-firmado en Apache
Para poder generar un certificado auto firmado con Apache, necesitamos un paquete de
utilidades Open Source llamado OpenSSL. El proyecto OpenSSL en una colaboración de una
comunidad de código abierto que desarrolla SSL, TLS y un conjunto de librerías criptográficas. La
versión que instalamos de Apache ya viene incluido OpenSSL, pero si no, podemos descargarnos
una versión en:
http://slproweb.com/products/Win32OpenSSL.html
Vamos a seguir los pasos para generar un certificado en Apache para implementar SSL en nuestro
servidor web.
1. Necesitamos generar una clave privada para montar nuestra entidad de certificación
privada, en entornos de producción es muy importante hacer copia de seguridad de esta
calve, pues la necesitaremos en caso de tener que recuperar la entidad de certificación.
Para ello abrimos una consola CMD, y desde el directorio bin de Apache, ejecutamos el
siguiente comando:
ADMINISTRACIÓN DE SERVICIOS DE INTERNET / Ezequiel Llarena Borges
1
ADMINISTRACIÓN DE SERVICIOS DE INTERNET (IFCT0509)
2. Podemos comprobar qué ha generado el comando anterior abriendo el fichero generado
y vemos el contenido de la clave privada encriptada.
Generación de Clave Privada para CA
3. Ahora hacemos una solicitud para que genere nuestro certificado auto firmado con la
calve privada que anteriormente hemos generado. Como vemos, hay que contestara unas
preguntas para general el certificado entre la que destaca en nombre FQDN del servidor
que hará uso del certificado, hay que tener muy claro esto, pues si no coincide el nombre
con la dirección que haremos referencia dará un error. Como ejemplo, podríamos poner
www.mywebserver.com
ADMINISTRACIÓN DE SERVICIOS DE INTERNET / Ezequiel Llarena Borges
2
ADMINISTRACIÓN DE SERVICIOS DE INTERNET (IFCT0509)
Práctica
4. Por último generamos el certificado con la petición anterior y lo firmamos con la clave
privada generada al principio.
openSSL> x509 –req –days 30 –in MyTest.csr –signkey server.key –out
mytest.crt
5. Ahora tenemos que cambiar el formato de la clave privada que hemos estado utilizando
para firmar los certificados a .pem
openSSL> rsa –in server.key –out server.pem
ADMINISTRACIÓN DE SERVICIOS DE INTERNET / Ezequiel Llarena Borges
3
Descargar