Apache, conexión segura por HTTPS y Autoridad Certificadora propia.
El presente artículo muestra los pasos para agregar una capa de seguridad al convencional protocolo HTTP utilizando protocolos criptográficos SSL/TLS (Secure Sockets Layer / Transport Layer Security) para garantizar conexiones seguras en una red publica como lo es Internet.
En resumen, estos pasos tienen que ver con la creación de una Autoridad Certificadora (CA) propia, creación del certificado digital para el servidor y por supuesto, como firmar este certificado digital con nuestra propia Autoridad Certificadora. Por último, se muestra como crear los dominios virtuales para utilizar indistintamente en el servidor los protocolos HTTP y HTTPS.
A continuación publicamos los pasos para la distribución de Linux: CentOS v5.x
Instalar el modulo SSL para el servidor web Apache:
yum -y install mod_ssl
Crear y acceder a los directorios que alojarán las llaves y certificados digitales:
mkdir /etc/certificados_apache && cd /etc/certificados_apache
Cr eando la llave privada de la Autoridad Certificadora (CA):
openssl genrsa 2048 > ca-key.key
Creando el certificado digital de la Autoridad Certificadora (CA) válido por 3650 días (10 años):
openssl req -new -x509 -nodes -days 3650 \
-key ca-key.key -out ca-cert.crt
Creando la llave y el certificado digital del servidor, este último con una caducidad de 3650 días:
openssl req -newkey rsa:2048 -days 3650 \
-nodes -keyout server-key.key -out server-req.csr
Eliminar la frase con la que se ha generado la llave privada del servidor:
openssl rsa -in server-key.key -out server-key.pem
Añadi r al certificado del servidor la firma de nuestra Autoridad Certificadora (CA) con una valides de 3650 días:
openssl x509 -req -in server-req.csr -days 3650 \
-CA ca-cert.crt -CAkey ca-key.key -set_serial 01 -out server-cert.crt
Crear el siguiente fichero de configuración del servicio apache:
vi /etc/httpd/conf.d/samvar.com.conf
Y agregar el siguiente contenido (Personalizar los parámetros a vuestras necesidades):
NameVirtualHo st 192.168.1.7:80
<VirtualHost 192.168.1.7:80>
ServerAdmin administrador@samvar.com
DocumentRoot /var/www/html
ServerName www.samvar.com
ErrorLog logs/samvar.com-error_log
CustomLog logs/samvar.com-access_log common
</VirtualHost>
NameVirtualHost 192.168.1.7:443
<VirtualHost 192.168.1.7:443>
ServerAdmin administrador@samvar.com
DocumentRoot /var/www/html
ServerName www.samvar.com
SSLEngine on
SSLCertificateFile /etc/certificados_apache/server-cert.crt
S SLCertificateKeyFile /etc/certificados_apache/server-key.key
SS LCertificateChainFile /etc/certificados_apache/ca-cert.crt
Error Log logs/ssl_samvar.com-error_log
CustomLog logs/ssl_samvar.com-access_log common
</VirtualHost>
Guardar los cambios y tras lo cual es necesario reiniciar el servicio Apache:
service httpd restart
Ahora es posible hacer uso en el sitio de conexiones: http:// y https://
Puede encontrar más información en el siguiente sitio: http://www.samvar.es
Puede que te interese:
Sé el primero en Comentar Tu email no será visible para nadie.