Administración servidor web HTTPS (Apache2) en … · Administración servidor web HTTPS (Apache2)...
Transcript of Administración servidor web HTTPS (Apache2) en … · Administración servidor web HTTPS (Apache2)...
Administración servidor web HTTPS (Apache2) en Ubuntu Server: -- mod_ssl, default_ssl –
certificados digitales.
Comprobaremos que nos traduce las peticiones dns
Primero, debemos asegurarnos de que el módulo ssl.conf está en el directorio sites-
enable, activaremos también el módulo SSL con el comando a2enmod ssl
Tras esto deberemos ver qué sitios están habilitados. Para ello, mostraremos el
contenido del directorio sites-enabled (deshabilitaremos los sitios de prácticas
anteriores)
Ahora, deshabilitaremos la página default-ssl con el comando: a2dissite default-ssl
Después, reiniciaremos el servidor apache2.
A continuación, instalaremos openssl para la creación de certificados, con el comando
apt-get install openssl
Generaremos la llave para los certificados con el comando: openssl genrsa -des -out
cert-alumno.key 2048
openssl: comando.
genrsa: genera la llave.
-des3: Sistema de cifrado de la llave.
-out: parámetro que indica la salida en archivo.
cert-alumno.key: el nombre del archivo que contendrá la llave.
2048: tamaño en bits de la llave
Ahora crearemos la llave pública con la llave que creamos en el paso anterior, lo
haremos con el comando: openssl req -new -key cert-alumno.key -out cert-paginaA.csr
La sentencia introducida se puede traducir en:
openssl: comando
req: request para el certificado.
new: parámetro que indica nueva petición.
key: parámetro que indica la entrada mediante archivo.
cert-alumno.key: nombre del archivo creado anteriormente que contiene la llave.
out: parámetro que indica la salida en archivo.
cert-paginaA.csr: nombre del archivo que contendrá la información
Para crear el certificado de la autoridad certificadora deberemos de hacerlo con el
comando: openssl x509 -req -days 365 -in cert-paginaA.csr -signkey cer-alumno.key -
out certentidad.crt
La sentencia introducida se traduce en:
x509: aplica formato de llave pública.
req: request para el certificado.
days: vigencia del certificado.
in: indica la entrada de información mediante archivo especificado.
cert-paginaA.csr: nombre del archivo que contiene la clave pública.
singkey: indica la llave que firmará el certificado.
cer-alumno.key: nombre del archivo creado anteriormente que contiene la llave.
out: parámetro que indica la salida en archivo.
cert-entidad.crt: archivo que contendrá el certificado de la entidad .
Guardamos todos los certificados en una misma carpeta.
Crearemos la página que se abrirá cuando accedan con seguridad a nuestra Web en el
directorio /var/www/seguro/seguro.html
Copiamos el fichero default para hacer un mismo default seguro llamado default-seg
En default-seg, debemos especificar el host virtual, el puerto, el directorio, el
documento Index, el nombre del servidor, el directorio root y quitaremos la opción
Indexes para ganar seguridad.
También, debemos añadir al final las filas siguientes:
SSLEngine On
SSLCertificateFile RUTA.crt
SSLCertificateKeyFile Ruta.key
Habilitaremos entonces el sitio default-seg
Dejaremos el fichero default parecido a default-seg, eliminando los datos de las
prácticas anteriores.
Reiniciamos bind y apache. Nos pedirá la clave de los certificados al reiniciar.
Para ver los log de error añadimos estas 3 entradas en el archivo default-seg que hemos abilitado antes