Anda di halaman 1dari 13

UNIVERSIDAD AUTONOMA DE BAJA CALIFORNIA

Facultad de Ciencias Qumicas e Ingeniera

Administracin y Seguridad de Redes Reporte de Practica # 4 Instalacin de SSL en un servidor

Profesor: Luis Enrique Palafox Maestre


Alumno: De Rosas Nava Francisco

Saln # 205

Grupo # 591

Fecha de Entrega: 03/Mayo/2012

MARCO TEORICO
Introduccin
Secure Socket Layer es un sistema de protocolos de carcter general diseado en 1994 por la empresa Nestcape Communcations Corporation, y est basado en la aplicacin conjunta de Criptografa Simtrica, Criptografa Asimtrica (de llave pblica), certificados digitales y firmas digitales para conseguir un canal o medio seguro de comunicacin a travs de Internet. De los sistemas criptogrficos simtricos, motor principal de la encriptacin de datos transferidos en la comunicacin, se aprovecha la rapidez de operacin, mientras que los sistemas asimtricos se usan para el intercambio seguro de las claves simtricas, consiguiendo con ello resolver el problema de la Confidencialidad en la transmisin de datos.

Historia
Desarrollado por Netscape, SSL versin 3.0 se public en 1996, que ms tarde sirvi como base para desarrollar TLS versin 1.0, un estndar protocolo IETF definido por primera vez en el RFC 2246. Visa, MasterCard, American Express y muchas de las principales instituciones financieras han aprobado SSL para el comercio sobre Internet. SSL opera de una manera modular: sus autores lo disearon extensible, con soporte para compatibilidad hacia delante y hacia atrs, y negociacin entre las partes (peer-to-peer). Primeras claves dbiles Algunas primeras implementaciones de SSL podan usar claves simtricas con un mximo de slo 40bit debido a las restricciones del gobierno de los Estados Unidos sobre la exportacin de tecnologa criptogrfica. Dicho gobierno impuso una clave de 40-bit lo suficientemente pequea para ser rota por un ataque de fuerza bruta por las agencias de seguridad nacional que desearan leer el trfico cifrado, a la vez que representaban un obstculo para atacantes con menos medios. Una limitacin similar se aplic a Lotus Notes en versiones para la exportacin. Despus de varios aos de controversia pblica, una serie de pleitos, y el reconocimiento del gobierno de Estados Unidos de cambios en la disponibilidad en el mercado de 'mejores' productos criptogrficos producidos fuera del pas, las autoridades relajaron algunos aspectos de las restricciones de exportacin. La limitacin de claves de 40-bit en su mayora ha desaparecido. Las implementaciones modernas usan claves de 128-bit (o ms) para claves de cifrado simtricas.

Funcionamiento

Funcionamiento general

El protocolo SSL intercambia registros; opcionalmente, cada registro puede ser comprimido, cifrado y empaquetado con un cdigo de autenticacin del mensaje (MAC). Cada registro tiene un campo de content_type que especifica el protocolo de nivel superior que se est usando. Cuando se inicia la conexin, el nivel de registro encapsula otro protocolo, el protocolo handshake, que tiene el content_type 22. El cliente enva y recibe varias estructuras handshake: Enva un mensaje ClientHello especificando una lista de conjunto de cifrados, mtodos de compresin y la versin del protocolo SSL ms alta permitida. ste tambin enva bytes aleatorios que sern usados ms tarde (llamados Challenge de Cliente o Reto). Adems puede incluir el identificador de la sesin. Despus, recibe un registro ServerHello, en el que el servidor elige los parmetros de conexin a partir de las opciones ofertadas con anterioridad por el cliente. Cuando los parmetros de la conexin son conocidos, cliente y servidor intercambian certificados (dependiendo de las claves pblicas de cifrado seleccionadas). Estos certificados son actualmente X.509, pero hay tambin un borrador especificando el uso de certificados basados en OpenPGP. El servidor puede requerir un certificado al cliente, para que la conexin sea mutuamente autenticada. Cliente y servidor negocian una clave secreta (simtrica) comn llamada master secret, posiblemente usando el resultado de un intercambio Diffie-Hellman, o simplemente cifrando una clave secreta con una clave pblica que es descifrada con la clave privada de cada uno. Todos los datos de claves restantes son derivados a partir de este master secret (y los valores aleatorios generados en el cliente y el servidor), que son pasados a travs una funcin pseudoaleatoria cuidadosamente elegida.

Funcionamiento interno

Caractersticas
El cifrado protege los datos durante la transmisin Los servidores web y los navegadores web emplean el protocolo Secure Sockets Layer (SSL) para crear un canal con un cifrado nico para las comunicaciones privadas a travs de la Internet pblica. Los certificados SSL constan de una clave pblica y una clave privada. La clave pblica se utiliza para cifrar la informacin y la privada para descifrarla. Cuando un navegador web visita un dominio protegido, se establece un nivel de cifrado segn el tipo de certificado SSL, as como el navegador web cliente, el sistema operativo y las capacidades del servidor host. Por esta razn, certificados SSL incluyen varios niveles de cifrado, como por ejemplo "hasta 256 bits". Un cifrado potente, a 128 bits, puede calcular 288 veces ms combinaciones que un cifrado de 40 bits. Eso es ms de un billn por un billn de veces ms potente. A la velocidad de los ordenadores actuales, un pirata con tiempo, herramientas y motivacin para atacar utilizando la fuerza bruta necesitara un billn de aos para entrar en una sesin protegida por un certificado con SGC. Para que la mayora de los visitantes del sitio puedan utilizar un cifrado potente, elija un certificado SSL que permita como mnimo un cifrado de 128 bits para el 99,9% de los visitantes del sitio web. Las credenciales indican la identidad en Internet El uso de credenciales para indicar la identidad es muy frecuente: un permiso de conducir, un pasaporte, la insignia de una compaa. Los certificados SSL son las credenciales que se utilizan en el mundo de Internet, se emiten de manera nica para un determinado dominio y un servidor web, y las autentica el proveedor del certificado SSL. Cuando un navegador se conecta a un servidor, el servidor enva la informacin de identificacin al navegador. Para ver las credenciales de un sitio web:

Haga clic en el candado cerrado de la ventana del navegador. Haga clic en la marca de confianza. Busque la barra de direcciones verde*. *Slo certificados SSL con EV hacen que los navegadores web de alta seguridad muestren el nombre de su organizacin en una barra de direcciones verde.

La autenticacin inspira confianza en las credenciales. La confianza en una credencial depende de la confianza que se tenga en el emisor de las credenciales, ya que es el emisor quien avala la autenticidad de la credencial. Las autoridades de certificacin utilizan diversos mtodos de autenticacin para comprobar la informacin proporcionada por las organizaciones. Symantec, la autoridad de certificacin ms importante, es muy popular y se ha ganado la confianza de los proveedores de navegadores gracias a nuestros rigurosos mtodos de autenticacin y la elevada fiabilidad de nuestra infraestructura.

OBJETIVO
Implementar un servidor Web con seguridad SSL. Creacion de llave Creacion de certificado Creacion de certificado con la llave Permitir al usuario visualizar una alerta al querer ingresar al sitio

DESARROLLO DE LA PRCTICA
Para esta prctica se opto por utilizar el servidor Apache, por lo que el primer paso fue su instalacin dentro del sistema operativo Ubuntu.

Al finalizar la instalacin satisfactoria de Apache, se verifica de manera local que funcione correctamente utilizando la direccin 127.0.0.1 la cual equivale a local host. El navegador debe mostrar el mensaje de bienvenida al servidor.

Se habilita el modulo SSL mediante el comando a2enmod ssl.

Habilitamos la configuracin SSL por default la cual esta en el archivo default-ssl.

Reiniciamos el servidor Apache para activar los nuevos cambios.

Hasta este punto nuestro servidor SSL queda habilitado, para probarlo basta con entrar desde el navegador a la direccin https://127.0.0.1

Creacin de Llaves
Para la creacin de llaves primero debemos ir a la ruta /etc/apache2, una vez estando ah se crea la llave con el siguiente comando: sudo openssl genrsa -des3 -out server.key 1024

Una vez creada la llave, pasaremos a la creacin del certificado con la llave mediante el comando: sudo openssl req -new -key server.key -out server.csr

Durante el proceso de creacin del certificado con la llave, es necesario proporcionar los datos para la creacin del mismo (Ciudad, Estado, Organizacin, etc.). Es importante recordar la contrasea que capturemos.

Se firma el certificado mediante el siguiente comando utilizando la contrasea solicitada en el paso anterior. sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

Es necesario cambiar de carpeta el certificado y la llave creadas dentro de la carpeta SSL para que puedan ser usadas por el servidor.

Abrimos el archivo de configuracin default-ssl mediante el editor Vi, con los siguientes comandos: cd /etc/apache2/sites-available sudo vim default-ssl

Dentro del archivo default-ssl es necesario remplazar y habilitar las siguientes lneas: SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire SSLCertificateFile /etc/ssl/certs/server.crt SSLCertificateKeyFile /etc/ssl/private/server.key Para habilitar los cambios realizados volvemos a habilitar el archivo de configuracin default-ssl y reiniciamos el servidor Apache.

RESULTADOS
Finalmente probamos que nuestro procedimiento de creacion de certificado y llave haya sido correcto. Para esto desde nuestro navegador entramos a la direccin https://localhost

Como resultado obtenemos un sitio con navegacin segura mediante HTTPS, sin olvidar que anteriormente el sitio arroja un mensaje de alerta ya que el sitio no es seguro. Para poder accesar al sitio es necesario verificar el certificado (como se muestra en la imagen) para poder asegurar la procedencia del sitio al cual se quiere ingresar.

Anda mungkin juga menyukai