GNU/Linux >> Tutoriales Linux >  >> Linux

StartSSL Desconfiado (Terminado), ¡Migrar a LetsEncrypt!

CONFIANZA  es la palabra que nos viene a la mente cuando hablamos de Autoridad de Certificación. StartSSL, una autoridad de certificación que proporciona un certificado SSL gratuito con una validez de un año para uso no comercial. Una iniciativa que tenía como objetivo asegurar el tráfico de Internet ahora ha perdido la CONFIANZA:¡StartSSL desconfía! La CA perdió la confianza durante octubre de 2016; a continuación se muestra la declaración de Mozilla. Esté atento a la actualización a continuación con respecto a la terminación del servicio SSL de StartCom.

Mozilla ha descubierto que una Autoridad de Certificación (CA) llamada WoSign ha tenido una serie de fallas técnicas y de gestión. Lo más serio es que descubrimos que estaban actualizando los certificados SSL para evitar la fecha límite en que las CA dejarían de emitir certificados SSL SHA-1 antes del 1 de enero de 2016. Además, Mozilla descubrió que WoSign había adquirido la propiedad total de otra CA llamada StartCom y no pudo revelar esto, según lo exige la política de Mozilla.

Leer más.

Además, el comunicado de Google.

Google ha determinado que dos CA, WoSign y StartCom, no han mantenido los altos estándares esperados de las CA y Google Chrome ya no confiará en ellos

Leer más.

Tengo un certificado SSL emitido por StartSSL, ¿afectará esto a mi sitio web?

La respuesta es SI y NO .

, si su certificado se emitió después del 21 de octubre de 2016 a las 00:00:00 UTC. Porque los navegadores no confían en ellos.

No , si su certificado se emitió antes del 21 de octubre de 2016 a las 00:00:00 UTC. Los navegadores pueden seguir confiando siempre que cumplan con la política del navegador. Pero eso es arriesgado, porque nunca se sabe cuándo los navegadores dejarán de confiar en ellos también.

El certificado emitido por StartSSL está a punto de caducar y renovarlo resolverá el problema?

¡No! De hecho, este sitio estaba usando un certificado emitido por StartSSL y debía renovarse. Y en el momento en que traté de renovarlo, esto es lo que dijo StartSSL.

Se desconfió de StartSSL CA durante octubre de 2016 y seis meses después es abril de 2017. Por lo tanto, esperaba que la empresa hubiera realizado los cambios necesarios para cumplir con las políticas de CA y se solicitó una reconsideración a Google, Mozilla y Apple. Pero, lamentablemente, ese no fue el caso. Renové e instalé el nuevo certificado para solo ver la advertencia de seguridad del navegador.

¿Se volverá a confiar en los certificados StartSSL?

Esperemos que después de unos meses. Pero han pasado seis meses desde que se desconfió y los navegadores no confían en los certificados emitidos incluso después de 6 meses. ¿Han enviado la solicitud a Google, Mozilla y Apple para su reconsideración? Incluso el sitio web oficial de StartSSL no dice cuándo se volverá a confiar en la autoridad, pero siguen vendiendo certificados. Sin embargo, por ahora, no se recomienda usar StartSSL.

Actualización 2 de diciembre de 2017: ¡El servicio StartSSL de StartCom ha sido cancelado! A continuación se muestra el correo de StartCom con respecto a la terminación de su servicio.

Entonces, ¿cuál es la alternativa?

Alternativas para StartSSL

a) Puede comprar un certificado comercial de un proveedor de certificados de confianza.

(o)

b) Elija otro proveedor de certificados gratuito, como LetsEncrypt.

¿Cómo proteger su sitio web usando LetsEncrypt?

LetsEncrypt es una autoridad de certificación gratuita, automatizada y abierta que proporciona un certificado SSL con una validez de 90 días.

Instalar el certificado LetsEncrypt es bastante simple. Todo lo que necesita hacer es usar Certbot – un script que solicita automáticamente el certificado de LetsEncrypt y habilita HTTPS en su sitio web. Certbot es compatible con Apache, Ngnix y Haproxy.

Paso 1 :Descargar Certbot

# wget https://dl.eff.org/certbot-auto

Paso 2 :Establecer permiso de ejecución

# chmod a+x certbot-auto

Paso 3 :Consulte las diversas opciones admitidas por el script.

# ./certbot-auto -h

El script admite el complemento para servidores web como se muestra a continuación:

 --apache Use the Apache plugin for authentication & installation
 --standalone Run a standalone webserver for authentication
 --nginx Use the Nginx plugin for authentication & installation
 --webroot Place files in a server's webroot folder for authentication
 --manual Obtain certs interactively, or using shell script hooks

De forma predeterminada, el script obtendrá e instalará el certificado en su servidor web actual. En caso de que solo necesite obtener un certificado y no desee instalarlo en el servidor web, utilice certonly opción como se muestra a continuación:

# ./certbot-auto --apache certonly

Pruebas y simulacros:  Las siguientes opciones se pueden usar para solicitar un certificado de prueba y realizar un ensayo para probar renovaciones de certificados.

 --test-cert         Obtain a test cert from a staging server
 --dry-run          Test "renew" or "certonly" without saving any certs to disk

Certbot no admite varios hosts virtuales en un solo archivo de configuración

El certbot script necesita que todos sus dominios estén configurados en un archivo de configuración de hosts virtuales separado. Por ejemplo, configuré VirtualHosts para todos mis dominios (incluido el dominio principal y los subdominios) en httpd.conf archivo:un único archivo que contiene varios hosts virtuales. En este caso, el certbot script pudo obtener el certificado para todos los dominios, pero no pudo autenticarse para instalarlo en el servidor web. Según este hilo, el comportamiento fue intencional para evitar errores al instalar certificados. Entonces, si tiene varios hosts virtuales configurados en un solo archivo, debe dividirlo en diferentes archivos de hosts virtuales antes de ejecutar certbot-auto comando.

Obtener certificado de LetsEncrypt e instalar

# ./certbot-auto
 Obtaining a new certificate
 Performing the following challenges:
 tls-sni-01 challenge for domaina.com
 tls-sni-01 challenge for sub.domainb.com
 Waiting for verification...
 Cleaning up challenges
 Generating key (2048 bits): /etc/letsencrypt/keys/0000_key-certbot.pem
 Creating CSR: /etc/letsencrypt/csr/0000_csr-certbot.pem
 Deploying Certificate for domaina.com to VirtualHost /etc/httpd/conf.d/domaina-com.conf
 Deploying Certificate for domainb.com to VirtualHost /etc/httpd/conf.d/domainb-com.conf

¿Dónde se almacenan los certificados?

Todos los certificados activos se almacenarán en /etc/letsencrypt/live/ . Consulte también otros directorios en /etc/letsencrypt .

[letsencrypt] # ls
accounts archive csr keys live options-ssl-apache.conf renewal

¿Cuál es la validez de los Certificados emitidos por LetsEncrypt?

Usa openssl comando para verificar la validez del certificado como se muestra a continuación:

# openssl x509 -startdate -enddate -in /etc/letsencrypt/live/domaina.com/cert.pem
notBefore=May 4 09:29:00 2017 GMT
notAfter=Aug 2 09:29:00 2017 GMT

Renovar Certificados

Dado que el certificado emitido por Let's Encrypt caducará en 90 días, debe renovar el certificado automáticamente antes de que caduque. El 'renovar La opción ‘ le permitirá renovar los certificados y –ejecutar en seco La opción lo ayudará a simular el proceso de renovación.

$./certbot-auto renew

Simular renovación de certificado:

$./certbot-auto renew --dry-run
-------------------------------------------------------------------------------
Processing /etc/letsencrypt/renewal/domaina.com.conf
-------------------------------------------------------------------------------
Cert not due for renewal, but simulating renewal for dry run
Renewing an existing certificate
Performing the following challenges:
tls-sni-01 challenge for domaina.com
Waiting for verification...
Cleaning up challenges
Generating key (2048 bits), not saving to file
Creating CSR: not saving to file
-------------------------------------------------------------------------------
new certificate deployed with reload of apache server; fullchain is
/etc/letsencrypt/live/domaina.com/fullchain.pem
-------------------------------------------------------------------------------
** DRY RUN: simulating 'certbot renew' close to cert expiry
** (The test certificates below have not been saved.)
Congratulations, all renewals succeeded. The following certs have been renewed:
/etc/letsencrypt/live/domaina.com/fullchain.pem (success)
** DRY RUN: simulating 'certbot renew' close to cert expiry
** (The test certificates above have not been saved.)
IMPORTANT NOTES:
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.

Configurar el trabajo de Cron para la renovación automática de certificados

# crontab -e

Y agregue las siguientes líneas:

0 0 * * * /usr/bin/certbot-auto renew
30 13 * * * /usr/bin/certbot-auto renew

Nota :Recuerde establecer la ruta correcta a certbot-auto script y asegúrese de cron se ejecuta dos veces al día. Bueno, el certbot-auto no hará nada a menos que el certificado deba renovarse.


Linux
  1. Configuración de Letsencrypt en ISPConfig 3.1

  2. Cómo configurar WSO2 con el certificado Let's Encrypt

  3. ¿Qué es un Certificado SSL?

  4. Instalar un certificado SSL

  5. Comprar o renovar un certificado SSL

Creación de un certificado SSL autofirmado

Autoridad de certificación con OpenSSL

Cómo instalar LetsEncrypt SSL con Nginx en CentOS 6

Cómo instalar LetsEncrypt con Nginx en Ubuntu 15.04

Herramienta de comprobación de SSL

Cómo migrar CentOS 8 a CentOS Stream