En este artículo explicamos cómo realizar la instalación del certificado SSL y/o del certificado de la autoridad certificadora (CA) en nuestro servidor web Apache 2.4
Una vez hemos comprado el certificado SSL y se ha realizado el proceso de validación correspondiente por parte de la Autoridad Certificadora (CA) que lo emite, esta nos envía el certificado SSL ya validado. Se suele enviar en forma de unos ficheros adjuntos, o también como texto que debemos separar y colocar en los ficheros .crt adecuados siguiendo las instrucciones de nuestro proveedor.
Habilitamos el Módulo SSL
Redhat y derivados:
yum install mod_ssl.x86_64
Debian y derivados:
apt install openssl ssl-cert
a2enmod ssl
Suse
a2enmod ssl
«ssl» already present
Accedemos /etc/sysconfig/apache2 y modificamos la siguiente linea:
APACHE_SERVER_FLAGS=»SSL»
Reiniciamos el servicio
service apache2 reload
Editamos el fichero /etc/apache2/listen.conf y debe quedar de la siguiente manera:
<IfDefine SSL>
<IfDefine !NOSSL>
<IfModule mod_ssl.c>Listen 443
NameVirtualHost *:443</IfModule>
</IfDefine>
</IfDefine>
Comprobamos que hemos activado correctamente el modulo en nuestro servidor GNU/Linux
httpd -M
ssl_module (shared)
Creamos el directorio donde se alojara el certificado:
Redhat y derivados:
mkdir /etc/httpd/certs/
Suse, Debian y derivados:
mkdir /etc/apache2/certs/
Creamos el virtualhost con la configuración de SSL
Al configurar teneis que tener en cuenta en donde se encuentran las configuraciones dependiendo del sistema operativo:
Redhat y Derivados:
/etc/httpd/conf.d/
Suse, Debian y derivados:
/etc/apache2/conf.d/
VirtualHost:
<VirtualHost *:80>
ServerAdmin wadmin@red-orbita.com
DocumentRoot «/var/www/html/»
ServerName red-orbita.com
ServerAlias red-orbita.com
ErrorLog «/var/log/httpd/red-orbita.com-error_log»
CustomLog «/var/log/httpd/red-orbita.com-access_log» combined#Redireccionamos al puerto https
Redirect permanent / https://tpldes.madrilena.es/
<Directory «/var/www/html/»>
DirectoryIndex index.html index.php
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory></VirtualHost>
<VirtualHost _default_:443>
ServerAdmin wadmin@red-orbita.com
DocumentRoot «/var/www/html/»
ServerName red-orbita.com
ServerAlias red-orbita.com
ErrorLog «/var/log/httpd/red-orbita.com -ssl-error_log»
CustomLog «/var/log/httpd/red-orbita.com -ssl-access_log» combined
<Directory «/var/www/html/»>
DirectoryIndex index.html index.php
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
SSLProtocol ALL -SSLv2 -SSLv3
SSLHonorCipherOrder On
SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS
SSLCompression Off
SSLEngine on
SSLProxyEngine on
SSLProxyCheckPeerName off
SSLProxyCheckPeerCN off
SSLProxyProtocol +TLSv1SSLCertificateFile /etc/httpd/certs/red-orbita.com.crt
SSLCertificateKeyFile /etc/httpd/certs/red-orbita.com.key
</VirtualHost>
Un saludo
:wq!