You are on page 1of 11

UNIVERSIDAD MICHOACANA DE SAN NICOLÁS DE HIDALGO

FACULTAD DE INGENIERÍA ELÉCTRICA


Martinez Gomez Gil
Leon loeza Felipe Alejandro.
Macias Pantoja Alejandro Adrian
Francisco Tello Antonio.

MANUAL DE INSTALACIÓN DEL SERVIDOR HTTPS.


Página |2

INTRODUCCIÓN.

HTTP Protocolo de Trasferencia de Hipertexto (Hypertext Transfer Protocol); Es un protocolo de capa de aplicación
para la trasmisión de documentos hipermedia, como HTML. Fue diseñado para la comunicación entre los navegadores
y servidores web [1].
HTTPS es la versión segura del protocolo http, utiliza un cifrado basado en la Secure Socket Layer (SSL), permitiendo
con esto crear un canal de trasferencia cifrado más seguro que el empleado por HTTP [2].
SSL Capa de Conexiones Seguras (Secure Sockets Layer). Es un protocolo que hace uso de certificados digitales
para establecer comunicaciones seguras a través de internet. Actualmente ha sido sustituido por TLS (Transport
Layer Security) el cual está basado en SSL, existiendo buena compatibilidad entre ambos [3]. Es utilizado
ampliamente en bancos, tiendas en línea y cualquier tipo de servicios que requiera el envío de datos sensibles (datos
personales, contraseñas, etc.
OpenSSL es una librería que se halla en todos los servidores Linux con código abierto. OpenSSL sirve para cifrar los
datos que se trasmiten desde el servidor o al servidor con el fin de que si una cadena de datos fuese interceptada,
dificultaría la lectura del contenido de la misma [4].
Página |3

PROCEDIMIENTO

Para este manual se utiliza la distribución Ubuntu 14.04 LTS de Linux.

INSTALACIÓN DE HTTP:

Para la instalación del servidor http se procede a teclear el comando sudo apt-get install apache2
(véase figura 1).

Figura1. Ejecución del comando en consola del comando sudo apt-get install apache2.

Una vez que la instalación se realizó con éxito, se realiza la verificación en el navegador de su preferencia, accediendo a la
página http://localhost o 127.0.0.1 (véase la figura 2).

En ocasiones es necesario reiniciar el servidor empleando el comando sudo server apache2 restart.

Una vez que el servidor se ha instalado correctamente, modificaremos el archivo index.html ubicado en la carpeta
/var/www/html/. A modo de ejemplo se crea una página sencilla (véase la figura 12),

INSTALACIÓN DE CERTIFICADOS SSL

Se recomienda crear una carpeta ssl en el directorio /etc/apache2/, la cual servirá para almacenar tanto la llave como el
certificado.
sudo mkdir /etc/apache2/ssl

Una vez creada la carpeta se procede a generar la llave (véase figura 3), al generar la llave se pedirá una contraseña:
sudo openssl genrsa –des3 –out llave.key

Se procede a crear el certificado (véase figura 4), al realizar la petición de creación de certificado se pedirán algunos datos,
tales como país, nombre de la organización y demás (en la tabla 1 se muestra a detalle los distintos atributos que son
solicitados al momento de crear el certificado) [5].
sudo openssl req -new -key llave.key -out miCertificado.csr
Página |4

Posteriormente se realiza la creación de un certificado auto firmado, asociado a la llave y el certificado antes creados (véase
figura 5), al realizar dicha petición, se pedirá la clave antes ingresada al crear la llave (véase la tabla 2 para mayor
especificación del significado de los parámetros empleados en la creación del certificado auto firmado).
sudo openssl x509 -req -days 365 -in miCertificado.csr -signkey
llave.key -out CertificadoFirmado.crt

Posteriormente procedemos a copiar el Certificado auto firmado “CertificadoFirmado.crt” a la carpeta /etc/ssl/certs/ y la


llave “llave.key” a la carpeta /etc/ssl/private/ (véase figura 6):
sudo cp CertificaFirmado.crt /etc/ssl/certs/
sudo cp llave.key /etc/ssl/private/

Se procede a modificar el archivo default-ssl ubicado en /etc/apache2/sites-available/, se debe comentar las líneas del
archivo donde se realiza la referencia a los certificados que se encuentran predeterminados (véase figura 7). Una vez
comentados los certificados predeterminados se procede a agregar las nuevas referencias (véase figura 8).

Una vez modificado el archivo default-ssl se procede a activar el modulo ssl [5] y reiniciamos el servidor (véase figura 9), al
reiniciar el servidor nos pedirá la clave que hemos introducido al crear la llave en pasos anteriores. Por ultimo basta con acceder
al navegador de su preferencia (véase figura 10), en cual podremos observar los parámetros que contiene el certificado de
seguridad. Una vez que agregamos el certificado podremos acceder al contenido del servidor (véase figura 11).
sudo a2ensite default-ssl
sudo service apache2 restart

Tabla 1. Muestra los parámetros que son obligatorios para la configuración del certificado [6].
Parámetros Significado
Country Name (2 letter Código de país en formato ISO de dos letras
code)
State or Province Name Estado o provincia
(full name)
Locality Name Localidad o ciudad
Organization Name Nombre de la Organización
Organitationl Unit Name Sector de la organizacion
Common Name Nombre del dominio o FDQN. Muy importante hay una diferencia entre www.nanotutoriales.com
a nanotutoriales.com sin www. Si registras tu certificado a una de estas opciones, no
funcionara para el otro.
Email Address Dirección de correo de contacto.
Página |5

Tabla 2. Significado de los parámetros empleados al crear el certificado auto firmado [5].
Parámetro Significado
openssl Se trata de la herramienta de línea de comandos básica proporcionada por OpenSSL
para crear y administrar certificados, llaves, solicitudes de firma, etc.
req Esto especifica un sub comando para la solicitud de certifícate signing request x.509
(CRC). X.509 es un estándar de infraestructura de clave pública que SSL se añade por su
clave y certificado administrado. Dado que estamos queriendo crear un nuevo certificado
x.509.
X509 Esta opción especifica que queremos hacer un archivo de certificado auto firmado en
lugar de generar una solicitud de certificado.
nodes Esta opción le dice a OpenSSL que no queremos asegurar nuestro archivo de clave con
una contraseña Tener un archivo con clave protegida por contraseña haría que Apache
se inicie automáticamente, ya que habría que introducir la contraseña cada vez que se
reinicie el servidor.
days 365 Esto especifica que el certificado que estamos creando será válida por un año.
out Esta opción da nombre al archivo de salida para el certificado que estamos generando.

Figura 2. Comprobando que se ha instalado correctamente el servidor http, realizando la prueba en empleando el
navegador Firefox en este caso.
Página |6

Figura 3. Generación de la llave en consola

Figura 4.Creacion del certificado, asociando la llave ‘llave.key’. Proporcionando los datos de la organización.

Figura 5. Creación del certificado auto firmado, partir del certificado y la llave creados en los pasos previos.
Página |7

Figura 6. Copiando certificado auto firmado y el archivo llave a los directorios /etc/ssl/certs/ , /etc/ssl/private/
respectivamente.

Figura 7. Comentamos las líneas que referencian los certificados por defecto. Las líneas a comentar son las que se
encentran resaltadas en color naranja.
Página |8

Figura 8. Agregación de las referencias para el nuevo certificado auto firmado con su respectiva llave. Por lo regular
se acostumbra escribir dichas referencias debajo de “SSLEngine on”, tal como se muestra en las líneas resaltadas en
color naranja.
Página |9

Figura 9. Activación del servicio ssl y reiniciando el servidor apache.

Figura 10. Visualización del certificado


P á g i n a | 10

Figura 11. Resultado una vez agregado el certificado de seguridad.

Figura 12. Código html empleado para crear la página de ejemplo.


P á g i n a | 11

REFERENCIAS.

[1] locolauty97, Sergio González Collado, Ferrmolina,raecillacastellana, migdonio1, Erto, teoli (23 de agosto de
2017)HTTP [online].(Consulta 8 de diciembre del 2017) Disponible en:
https://developer.mozilla.org/es/docs/Web/HTTP

[2] William Herrera (13 de abril de 2011) Que es el protocolo HTTPS, como funciona y para qué sirve [online] (Consulta
8 de diciembre del 2017). Disponible en: https://webadictos.com/2011/04/13/que-es-el-protocolo-https-y-como-
funciona/

[3] Dante Odín Ramírez López, Carmina Cecilia Espinosa Madrigal (3 de mayo de 2017). EL CIFRADO WEB (SSL/TLS)
[online]. (consulta 8 de diciembre del 2017). Disponible en: https://revista.seguridad.unam.mx/numero-10/el-cifrado-
web-ssltls

[4]Oscar Egea Hernández (22 de mayo del 2014) Que es OPENSSL [online]. (Consulta 8 de diciembre del 2017)
.Disponible en: http://www.inforsistemas.com/blog/que-es-openssl/

[5] HDCO (8 de noviembre del 2016) Crear Certificado SSL En Apache Para Ubuntu [online]. (Consulta 8 de diciembre
del 2017) Disponible en http://blog.hostdime.com.co/como-crear-un-certificado-ssl-en-apache-para-ubuntu-14-04/

[6]Hugo Gilmar Erazo (28 de noviembre del 2013) Como crear un certificado SSL de firma propia con OpenSSL y Apache
HTTP SERVER [online](consulta 8 de diciembre del 2017) Disponible en: https://www.nanotutoriales.com/como-crear-
un-certificado-ssl-de-firma-propia-con-openssl-y-apache-http-server

You might also like