Cuando tu sitio web realiza transacciones con tarjetas de crédito o maneja información privada de las personas es muy importante tener un certificado SSL para así poder brindarles seguridad a los usuarios.
Para esto tenemos que instalar dicho certificado, depende el servidor y de la empresa certificadora, los pasos a seguir para instalarlo podrían cambiar, en esta ocasión hablaremos de la empresa certificadora digicert en un servidor Apache.
En el caso del servicio proporcionado por digicert, los pasos a seguir son los siguientes.
- Paso 1:
Descargar los archivos de certificado (.crt) desde la página y colocarlos en el directorio del servidor a certificar, hay que hacer que estos archivos solo puedan ser leídos por el root.
- Paso 2:
Buscar el archivo de configuración apache ya que pueden variar, por lo común, estos se encuentran en /etc/httpd y el archivo con nombre httpd.conf.
En ocasiones los bloques del VH (virtual host) se encontraran en el archivo de configuración anterior, en caso contrario se encontrara en un archivo vhosts.d, o de lo contrario en la carpeta sitios con un archivo llamado ssl.conf.
- Paso 3:
Si necesitamos que el sitio sea accesible desde conexión segura o no (https o HTTP) se necesitara un servidor de cada tipo. Para configurar el no seguro seguiremos la configuración del paso siguiente.
Si solo se necesita hacerlo de forma segura, solo configuramos el host existente (sin crear uno más) de la siguiente forma como se dice en el paso 4.
- Paso 4:
Este es un ejemplo de configuración de host virtual para SSL, las partes más oscuras son aquellas que hay que agregar para que tome efecto la configuración SSL.
<VirtualHost 192.168.0.1:443>
DocumentRoot /var/www/html2
ServerName su.dominio.com
SSLEngine on
SSLCertificateFile /ruta/a/su_dominio.crt
SSLCertificateKeyFile /ruta/a/su_dominio.key
SSLCertificateChainFile /ruta/a/DigiCertCA.crt
</VirtualHost>
Tenemos que ajustar los nombres para que coincidan con los de los certificados.
- Paso 5:
En la configuración Apache siempre es mejor ver que errores hay antes de reiniciar el servidor, para esto realizamos el siguiente comando.
1 |
apachectl configtest |
- Paso 6:
Reiniciamos Apache, utilizando como una opción los comandos ctl
1 2 3 |
apachectl stop apachectl start |
Si Apache no se inicia con SSL, se puede utilizar el siguiente comando
1 |
apachectl sartssl |
Más detalles e información en los siguientes links: 😀