Agregar SSL al servidor web CentOS

CentOS bien podría ser una de las mejores distribuciones de Linux para un entorno de servidor. Básicamente es una imitación de Red Hat Enterprise Linux sin el software propietario y el precio que se le atribuye. Con eso en mente, tiene mucho sentido configurar CentOS como su servidor web de referencia. Es confiable, estable, extensible y seguro.

Pero configurar un servidor web seguro no está completo sin la inclusión de SSL y certificados. Si desea ofrecer páginas web seguras, seguramente querrá que su audiencia pueda enviarlas a https en lugar de http. Entonces ... con CentOS, ¿cómo se hace eso? Te mostraré cómo.



Instalando todos los paquetes

Asumiré que ya tiene CentOS instalado, así como el servidor web Apache. Asegúrese de poder ir a la página web Apache predeterminada (o cualquier página web en su servidor web CentOS), antes de configurar SSL. Cuando tenga todo eso funcionando, necesitará instalar un par de paquetes. Esto se hace con los siguientes pasos:

  1. Abre una ventana de terminal.
  2. Su para el usuario root.
  3. Emita el comando yum instalar mod_ssl openssl.
  4. Deje que se complete la instalación.

Con SSL instalado y listo, es hora de crear sus certificados para su uso.

Creando su certificado

Ahora tendrá todo en su servidor para crear CA. Necesita generar una clave privada, una csr, una clave autofirmada y luego debe copiar estos archivos en la ubicación correcta. Esto se hace con los siguientes pasos.

  1. Abre una ventana de terminal.
  2. Su para el usuario root.
  3. Genere la clave privada con el comando openssl genrsa -out ca.key 1024.
  4. Genere el csr con el comando openssl req -new -key ca.key -out ca.csr.
  5. Genere la clave autofirmada con el comando openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt.
  6. Mueva la llave autofirmada con el comando cp ca.crt / etc / PKI / tls / ciertos.
  7. Mueva la clave privada con el comando cp ca.key /etc/pki/tls/private/ca.key.
  8. Mueva el csr con el comando cp ca.csr /etc/pki/tls/private/ca.csr.

Edite la configuración de Apache SSL

Abre el archivo /etc/httpd/conf.d/ssl.conf y busca la sección SSLCertificateFile. Asegúrese de que la línea diga:

SSLCertificateFile /etc/pki/tls/certs/ca.crt

Ahora busque el SSLCertificateKeyFile y asegúrese de que esa sección diga:

SSLCertificateKeyFile /etc/pki/tls/private/ca.key

Guarde ese archivo y estará listo para reiniciar Apache.

Reiniciar y probar

Antes de intentar probar la nueva función SSL de Apache, debe reiniciar el demonio. Para hacer esto, emita el comando /etc/rc.d/init.d/httpd reiniciar. Con suerte, no verá advertencias ni errores. De lo contrario, apunte su navegador a https: // DIRECCIÓN_A_SERVIDOR donde DIRECCIÓN_A_SERVIDOR es la dirección IP o el dominio. A continuación, debería ver una advertencia de su navegador sobre el certificado para el sitio. Si ve esta advertencia, felicitaciones, su servidor Apache ya está listo para conexiones seguras.

Sin embargo, recuerde que creó un certificado autofirmado. Para aprovechar al máximo SSL, es posible que desee comprar una CA de un nombre de confianza como Verisign (Por supuesto, hay muchos otros lugares donde puede comprar esos certificados).