Carpetas seguras con certificados
Una página o web segura es aquella que emplea el protocolo https en lugar de emplear http. Con ello nos aseguramos de que la información viaja encriptada y sólo podrá ser descifrada por el emisor del certificado.
1.- Generación del certificado
Al instalar apache2 se instala también el módulo ssl, tan sólo debemos generar el certificado para nuestro servidor y activar el módulo ssl.
Podremos emplear el cerficado que por defecto viene con apache2 autofirmado o generar uno nuevo.
En mi caso voy a generar uno nuevo empleando el common name websegura.mczones.es ya que es el dominio cuya información quiero encriptar. Para ello ejecutaré el comando:
En mi caso voy a generar uno nuevo empleando el common name websegura.mczones.es ya que es el dominio cuya información quiero encriptar. Para ello ejecutaré el comando:
make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/ssl/certs/websegura.pem
probablemente preguntará -en caso de no haber configurado el fichero ssh.cnf previamente- algunos datos sobre el país, servidor,...
2.- Configurando el servidor para emplear certificados
<IfModule mod_ssl.c>
Listen 443
</IfModule>
En mi caso voy a emplear el sitio creado previamente websegura.mczones.es por lo que emplearé su fichero de configuración /etc/apache2/sites-available/websegura, en el fichero habilitaremos SSL, le diremos que debe escuchar en el puerto 443 y configuraremos la ruta hacia el certificado así como el resto de parámetros. Dicho fichero en mi caso contendrá (en rojo la parte modificada):
<VirtualHost *:443>ServerAdmin webmaster@localhostServerName websegura.mczones.esServerAlias websegura.esDirectoryIndex index.htmlDocumentRoot /var/www/websegura<Directory />Options FollowSymLinksAllowOverride None</Directory><Directory /var/www/websegura>Options Indexes FollowSymLinks MultiViewsAllowOverride NoneOrder allow,denyallow from allSSLRequireSSL</Directory><Location />AuthBasicProvider ldapAuthType BasicAuthzLDAPAuthoritative OnAuthName "Identificacion websegura.mczones.es"AuthLDAPURL "ldap://127.0.0.1:389/ou=usuarios,dc=mczones,dc=es?uid?one"AuthLDAPBindDN "cn=admin,dc=mczones,dc=es"AuthLDAPBindPassword "ldapadmin"Require valid-userSSLRequireSSL #obligamos al uso de https</Location># SSL Engine Switch:# Enable/Disable SSL for this virtual host.SSLEngine onSSLCertificateFile /etc/ssl/certs/websegura.pem<FilesMatch "\.(cgi|shtml|phtml|php)$">SSLOptions +StdEnvVars</FilesMatch><Directory /usr/lib/cgi-bin>SSLOptions +StdEnvVars</Directory>BrowserMatch ".*MSIE.*" \nokeepalive ssl-unclean-shutdown \downgrade-1.0 force-response-1.0</VirtualHost>
Habilitamos el módulo ssl del servidor apache:
a2enmod ssl
Habilitamos el sitio websegura:
a2ensite websegura
Habilitamos el sitio websegura:
a2ensite websegura
Reiniciamos el servidor apache:
/etc/init.d/apache2 restart
Recordar que debemos tener acceso al equipo websegura.mczones.es, debe estar incluido en el fichero de DNS o bien en el fichero /etc/hosts.
Recordar que debemos tener acceso al equipo websegura.mczones.es, debe estar incluido en el fichero de DNS o bien en el fichero /etc/hosts.
3.- Probando el acceso
Para usar este sitio hemos añadido ya una línea al servidor de DNS o al fichero hosts indicando la ip de websegura.mczones.es y nos conectamos desde un navegador web a la dirección: https://websegura.mczones.es, nos aparecerá una ventana advirtiéndonos de que el certificado no está emitido por una entidad certificadora – CA – de confianza:
Cuando entremos ahora en la página nos pedirá nuevamente la clave, pero empleando el protocolo https, con lo que los datos viajarán encriptados:
No hay comentarios:
Publicar un comentario