GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar un certificado SSL en Apache para CentOS 7

Introducción

Los certificados SSL son pequeños archivos de datos que certifican la propiedad de una clave criptográfica pública. Las autoridades de certificación (CA) garantizan que la clave pertenece a una organización, servidor u otra entidad enumerada en el certificado.

Cuando un usuario, a través de su navegador, accede a un sitio web certificado, la información se cifra con una clave pública única. Los datos solo se pueden descifrar mediante el uso de una clave privada única. ubicado en el servidor anfitrión. Este alto nivel de cifrado evita intentos no autorizados de acceder a la información.

En este tutorial, aprenda cómo instalar un certificado SSL en CentOS 7.

Requisitos previos

  • Un usuario con sudo privilegios
  • Acceso a una línea de comando (Ctrl-Alt-T)
  • Una máquina CentOS 7
  • Un nombre de dominio válido con DNS apuntando al servidor

Cómo obtener un certificado SSL

Hay varias formas de obtener Certificados:

  1. Usando una autoridad de certificación automática y gratuita como el proyecto Let's Encrypt.
  2. Las autoridades de certificación comercial proporcionan certificados por una tarifa (Comodo, DigiCert, GoDaddy)
  3. Alternativamente, es posible crear un certificado autofirmado. Este tipo de certificado es útil para fines de prueba o para su uso en un entorno de desarrollo.

Si aún está considerando qué tipo de certificado necesita o qué CA elegir, hemos preparado una guía completa sobre certificados SSL, claves privadas y CSR para ayudarlo en el proceso.

Instalar certificado SSL con Let's Encrypt

Let's Encrypt es una autoridad de certificación gratuita, abierta y automatizada. Utiliza el certbot herramienta de software para administrar certificados automáticamente.

Certbot es una herramienta altamente automatizada. Asegúrese de que su instalación de Apache sea válida y de que tenga un host virtual configurado para su/s dominio/s. Primero debe leer nuestro tutorial sobre cómo instalar Apache en CentOS 7 si necesita ayuda para configurar su firewall y hosts virtuales.

Instalación de bots certificados

1. Use el terminal de comando para instalar el EPEL repositorio y yum-utils :

sudo yum –y install epel-release yum-utils

2. A continuación, instale un módulo compatible con SSL para Apache:

sudo yum -y install mod_ssl

En este ejemplo, la última versión del módulo ya está disponible.

3. Ahora podemos instalar certbot para Apache:

sudo yum –y install python-certbot-apache

4. Una vez que la instalación siga su curso, puede iniciar el proceso para obtener un certificado ingresando:

sudo certbot –apache –d yourdomain.com

Alternativamente, inicie certbot escribiendo:

sudo certbot

5. El cliente le solicita que proporcione una dirección de correo electrónico y que lea y acepte los Términos de los Servicios. Certbot luego enumera los dominios disponibles en su servidor. Active HTTPS para dominios específicos o para todos dejando el campo en blanco.

El siguiente mensaje le permite forzar todas las solicitudes para asegurar el acceso HTTPS.

Una vez que haya hecho sus elecciones, el mensaje en la terminal confirma que ha habilitado el cifrado para su dominio.

Renovación automática de certificados

Los certificados emitidos por Let's Encrypt tienen una validez de 90 días. El certbot renovar El comando comprueba los certificados instalados e intenta renovarlos si faltan menos de 30 días para que caduquen. Para automatizar este proceso, cree un trabajo cron para ejecutar el comando periódicamente.

Use su editor de texto preferido para definir con qué frecuencia ejecutar la renovación comando:

sudo crontab -e

Ingrese esta línea y guarde el crontab:

* */12 * * * /usr/bin/certbot renew >/dev/null 2>&1

Cómo instalar un certificado SSL con Comodo

1. El primer paso es enviar una Solicitud de firma de certificado a una Autoridad de Certificación. Nuestra guía detallada sobre cómo generar una solicitud de firma de certificado (CSR) con OpenSSL es un excelente recurso si necesita ayuda con este proceso.

2. Una vez que una CA certifique su solicitud, recibirá una copia de su certificado SSL. Ahora puede instalar el certificado en su servidor CentOS 7.

Este ejemplo muestra cómo instalar un certificado de un proveedor SSL pago, Comodo.

3. Una vez que Comodo verifique su solicitud de CSR, descargue los archivos SSL. Cópielos (ComodoRSACA.crt ) y el Certificado principal (sudominio.crt ), al directorio de su servidor Apache. La clave privada generado durante el proceso de CSR (Solicitud de firma de certificado) debe estar en el mismo servidor.

Configurar servidores virtuales para SSL

Después de haber certificado correctamente el dominio y colocado los archivos clave en el servidor, el siguiente paso será configurar los hosts virtuales para mostrar el certificado.

1. Acceda al archivo de configuración SSL:

sudo nano /etc/httpd/conf.d/ssl.conf

2. Edite el archivo de configuración para señalar los archivos correctos en su servidor.

Quite el comentario de las siguientes líneas en la sección e ingrese las rutas de archivo correctas:

  • Raíz del documento “/var/www/sudominio.com”
  • Nombre del servidor tudominio.com:443
  • Motor SSL en
  • Archivo de certificado SSL – La ruta de su archivo de certificado.
  • Archivo de clave de certificado SSL – La ruta de su archivo clave.
  • Archivo de cadena de certificados SSL – El archivo de certificado COMODO intermedio.

3. Después de realizar los cambios necesarios, salga del archivo (Ctrl+X) y presione y para guardar los cambios.

4. Pruebe su configuración de Apache antes de reiniciar. Asegúrese de que la sintaxis sea correcta escribiendo:

sudo apachectl configtest

5. Una vez que el sistema confirme que la sintaxis es correcta, reinicie Apache:

sudo systemctl restart httpd

Ya ha configurado su servidor Apache para usar el certificado SSL.

Cómo crear un certificado SSL autofirmado

Un certificado autofirmado es útil para realizar pruebas, en entornos de desarrollo y en una intranet.

1. Al igual que con Let's Encrypt, el mod_ssl El módulo Apache proporciona soporte para el cifrado SSL:

sudo yum –y install mod_ssl

2. Cree un nuevo directorio para almacenar la clave privada:

sudo mkdir /etc/ssl/privatekey

3. Restrinja el acceso a ese directorio solo al usuario raíz:

sudo chmod 700 /etc/ssl/privatekey

4. Genere un certificado autofirmado con este comando OpenSSL:

sudo openssl req -x509 -new -newkey rsa:2048  -nodes -days 365 -keyout /etc/ssl/privatekey/ yourdomain.key -out /etc/ssl/certs/yourdomain.csr

Esta es una descripción detallada de los elementos:

  • openssl – activa el software OpenSSL
  • requisito – indica que requerimos un CSR
  • -x509 – especifica el uso de la solicitud de firma X.509
  • -nueva -nueva clave – generar una nueva clave
  • rsa:2048 – generar una clave matemática RSA de 2048 bits
  • -nodos – sin DES, lo que significa que no cifra la clave privada en un archivo PKCS#12
  • días 365 número de días de validez del certificado
  • -keyout – indica el dominio para el que está generando una clave
  • -fuera – especifica el nombre del archivo que contiene la CSR

5. El sistema lanza un cuestionario para que usted complete.

Ingrese su información en los campos disponibles:

  • Nombre del país – use un código de país de 2 letras
  • Estado – el estado en el que está incorporado el propietario del dominio
  • Localidad – la ciudad donde está incorporado el propietario del dominio
  • Nombre de la organización – una entidad propietaria del dominio
  • Nombre de la unidad organizativa –el departamento o grupo de su organización que trabaja con certificados
  • Nombre común – más a menudo, el nombre de dominio completo (FQDN)
  • Dirección de correo electrónico – dirección de correo electrónico de contacto
  • Cambiar contraseña – defina una contraseña opcional para su par de claves

La imagen representa un cuestionario de ejemplo en CentOS 7.

6. Proceda a configurar el host virtual para mostrar el nuevo certificado. El proceso es idéntico a los pasos descritos en el Capítulo 2, Configuración de hosts virtuales para SSL.

7. Pruebe su configuración de Apache antes de reiniciar. Para asegurarse de que la sintaxis sea correcta, escriba:

sudo apachectl configtest

8. Una vez que el sistema confirme que la sintaxis es correcta, reinicie Apache:

sudo systemctl restart httpd

Ahora ha configurado su servidor Apache para usar su certificado SSL autofirmado y debería poder visitar su sitio con SSL habilitado.

¿Cómo comprobar si un certificado SSL es válido?

Para comprobar si un certificado SSL es válido, puede hacer públicos los servicios disponibles, como la prueba del servidor SSL. Confirme el estado de su certificado y verifique si todos los detalles son correctos.

Alternativamente, acceda a su sitio web usando https:// para ver si el certificado SSL está visible. El candado verde indica que la capa adicional de cifrado está presente.


Cent OS
  1. Cómo instalar ssl en RHEL 8 / CentOS 8

  2. Cómo instalar Apache Cassandra en CentOS 8

  3. Cómo instalar Apache en CentOS 7

  4. Cómo instalar Apache Kafka en CentOS 8

  5. CentOS / RHEL:Cómo habilitar SSL para Apache

Cómo instalar Apache CouchDB en CentOS 7

Cómo instalar Apache ServiceMix en CentOS 7

Cómo instalar Apache Cassandra en CentOS

Cómo instalar elgg en CentOS 8

Cómo instalar un certificado SSL gratuito para Apache en CentOS 8

Cómo instalar un certificado SSL gratuito para Nginx en CentOS 8