Вы находитесь на странице: 1из 4

Asegurando el Servidor Apache 2.4 – 2da.

parte

Utilizando un certificado SSL

Un certificado SSL sirve para brindar seguridad al visitante de su página web, una manera de decirles a
sus clientes que el sitio es auténtico, real y confiable para ingresar datos personales. Las siglas SSL
responden a los términos en inglés (Secure Socket Layer), el cual es un protocolo de seguridad que
hace que sus datos viajen de manera íntegra y segura, es decir, la transmisión de los datos entre un
servidor y usuario web, y en retroalimentación, es totalmente cifrada o encriptada. El que los datos
viajen cifrados, nos referimos a que se emplean algoritmos matemáticos y un sistema de claves que
sólo son identificados entre la persona que navega y el servidor. Al tener un certificado SSL confiable,
nuestros datos están encriptados, en ese momento podemos asegurar que nadie puede leer su contenido.
Todo esto nos lleva a entender que la tecnología que brinda un certificado SSL es la transmisión segura
de información a través de internet, y así confirmar que los datos están libres de personas no deseadas.
Para poder utilizar un certificado SSL, en su página web, es de vital importancia que el servidor de
Internet que usted contrató, soporte SSL.

Estamos en la era de la información, el usuario o cliente necesita confiar en las transacciones realizadas
a través de internet, el certificado SSL nos asegura que los datos son enviados al servidor correcto. Un
certificado SSL es una tecnología que le brinda una gran solución de seguridad en línea, nos ayuda a
garantizarles a los clientes que el sitio que están visitando es seguro; desde una simple visita, realizar
compras o iniciar sesión.

Un certificado SSL implementa el modelo preferido de seguridad en web, contiene claves digitales que
protegen la integridad de sus datos al momento de enviar y recibir. Los servidores que corren SSL
crean una vía con un cifrado único para las sesiones privadas a través que Internet, la clave pública del
servidor está al alcance de cualquier persona. Es por eso que utilizan una clave pública y una clave
privada: La clave pública es para cifrar la información, la clave privada para descifrarla.

Al elegir un certificado SSL debe tomar cuenta los alcances deseados en su sitio web, la audiencia que
tendrá acceso y por último el tipo de sesión que el usuario realizará. En la actualidad la mayoría de las
aplicaciones web y servidores soportan un certificado SSL es por eso que le recomendamos analizar a
profundidad la finalidad de su sitio web y haga una excelente decisión en cuanto a certificado SSL se
refiere.

Secure Socket Layer (en español capa de conexión segura). Es un protocolo criptográfico (un conjunto
de reglas a seguir relacionadas a seguridad, aplicando criptografía) empleado para realizar conexiones
seguras entre un cliente (como lo es un navegador de Internet) y un servidor (como lo son las
computadoras con páginas web).

Este protocolo ha sido sucedido por TLS, que son las siglas en inglés de Transport Layer Security (en
español seguridad de la capa de transporte).
Versiones de TLS tienen un equivalente en SSL, por ejemplo TLS 1.2 corresponde a SSL 3.3; de ahí
que aún sea común que se refiera a este protocolo como SSL.

Cómo funciona una conexión con SSL, en pocas palabras

De forma básica, una conexión usando el protocolo SSL funciona de la siguiente forma:

El cliente y el servidor entran en un proceso de negociación, conocido como handshake (apretón de


manos). Este proceso sirve para que se establezca varios parámetros para realizar la conexión de forma
segura.

Una vez terminada la negociación, la conexión segura es establecida.

Usando llaves preestablecidas, se codifica y descodifica todo lo que sea enviado hasta que la conexión
se cierre.

Certificado SSL

Un certificado SSL es un certificado digital de seguridad que se utiliza por el protocolo SSL. Este
certificado es otorgado por una agencia independiente debidamente autorizada y es enviado por el
servidor de la página web segura. El navegador de internet recibe e interpreta el contenido de dicho
certificado y, al verificar su autenticidad, indica que se está realizando una conexión segura; cada
navegador de internet tiene diferentes formas de indicarlo, por ejemplo un candado cerrado.

Significado de HTTP

HTTP son las siglas en inglés de HiperText Transfer Protocol (en español, protocolo de transferencia de
hipertexto). Es un protocolo de red (un protocolo se puede definir como un conjunto de reglas a seguir)
para publicar páginas de web o HTML. HTTP es la base sobre la cual está fundamentado Internet, o la
WWW.

Cómo funciona el protocolo HTTP

El protocolo HTTP funciona a través de solicitudes y respuestas entre un cliente (por ejemplo un
navegador de Internet) y un servidor (por ejemplo la computadora donde residen páginas web).

A una secuencia de estas solicitudes se le conoce como sesión de HTTP.

La información que el navegador de Internet está presentando en un momento dado, se identifica en la


llamada "barra de navegación", que comienza con http y se le conoce como URI (más conocido como
URL).

Sesiones seguras HTTPS

Cuando un URI comienza con HTTPS en lugar de HTTP, significa que el navegador está usando un
esquema seguro para proteger la información que está siendo transferida. Este esquema HTTPS es el
que toda transacción comercial en Internet debe de usar. A este esquema se le conoce como SSL.
Pasos para implementar un certificado SSL en el servidor Apache 2.4

Paso 1. Crearemos 2 directorios dentro del DocumentRoot de apache, en nuestro caso /var/www
#mkdir sitio_seguro
#mkdir sitio_inseguro

Lo siguiente será crear un index en cada uno estos directorios nombrándolo index.html

Paso 2. Activaremos el modulo SSL de apache, para tal efecto usaremos el siguiente comandos

#a2enmod ssl

al usar este comando, el servidor apache nos indicará cuál es la ruta que nos dará los parametros para
crear nuestro certificado autofirmado.

Paso 3, creando nuestro certificado auto firmado, es necesario crear una carpeta dentro de la ruta de
configuracion de apache llamada ssl, (/etc/apache2/ssl), nos valdremos del comando make-ssl-cert
usando los parametros contenidos en el archivo /usr/share/ssl-cert/ssleay.cnf, para obtener información
de este certificado podemos ir al siguiente enlace:
http://home.comcast.net/~fjhirsch/Papers/wwwj/article.html

#make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/certificado.pem

Se nos abrirá un asistente al cuál debemos contestar algunas preguntas para validar nuestro certificado,
al terminar la ejecución del asistente se nos creará un archivo llamado “certificado.pem” y un ln (enlace
simbolico) al mismo.

Como recordaremos en el manual anterior en el directorio /etc/apache/sites-available existe un archivo


llamado 000-default.conf, en este directorio crearemos un nuevo archivo de configuración al cual se
integrará nuestro certificado ssl, en este caso se ha creado el archivo www.litat.local.conf con el
siguiente contenido

<VirtualHost *:443>
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/certificado.pem
DocumentRoot /var/www/sitio_seguro/
ServerName www.litat.local

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
RewriteRule .* – [F]
</IfModule>

</VirtualHost>

En estas líneas se puede observar que ya hemos llamado a la nueva ruta /var/www/sitio_seguro y
también la asociación del certificado de seguridad, esto quiere decir que este virtual host
www.litat.local funcionará haciendo uso del certificado seguro, también se aprecia que hemos
conservado las políticas de mod_rewrite.

Cabe destacar que se debe de realizar una verificación en el archivo ports.conf para corroborar que
nuestro servidor pueda escuchar peticiones en el puerto 443 y también en el puerto 80.

Una vez editado el archivo de nuestro virtual host, activaremos el sitio con los siguientes comandos

#a2ensite www.litat.local
#service apache2 restart

Si todo ha salido bien podemos realizar una prueba desde un navegador ingresando con la siguiente
ruta

https://<ip_servidor>/ ## automáticamente nos llevara al sitio seguro, y nos pedirá que confirmemos el
certificado para ingresar

y si usamos http://<ip_servidor> ## automáticamente nos llevara al sitio inseguro

Recordemos que la seguridad de apache es un mundo y que será implementada al nivel del proyecto
que estemos asegurando.

Pablo Yela

Las fuentes de este manual son:

http://aprenderinternet.about.com/
https://www.certsuperior.com/QueesunCertificadoSSL.aspx
http://informaticacoslada.com/blog/apache-2-4-con-conexion-cifrada-ssl/

Вам также может понравиться