¿Cómo se instala un certificado SSL comodín Let's Encrypt en Amazon Lightsail?

Actualización más reciente: 20-10-2021

¿Cómo se instala un certificado SSL comodín para el sitio web en una instancia de Amazon Lightsail?

Descripción breve

La siguiente resolución contempla la instalación de un certificado SSL comodín Let's Encrypt para sitios web alojados en una instancia de Lightsail que no utiliza una pila de Bitnami. Algunos ejemplos de estos proyectos de instancia son Amazon Linux 2, Ubuntu, etc. Si tiene un proyecto de instancias diferente o quiere instalar un certificado estándar, consulte una de las siguientes opciones:

Certificados estándar Let's Encrypt

Para obtener información sobre la instalación de un certificado SSL estándar Let's Encrypt (no un comodín) en una instancia de Lightsail que no utiliza una pila de Bitnami, como Amazon Linux 2, Ubuntu, etc., consulte ¿Cómo se puede instalar un certificado SSL estándar Let's Encrypt en una instancia de Lightsail?

Para obtener información sobre la instalación de un certificado SSL estándar Let's Encrypt (no un comodín) en una instancia de Lightsail con una pila de Bitnami, como WordPress, LAMP, Magento, etc., consulte ¿Cómo se instala un certificado SSL estándar Let's Encrypt en una pila de Bitnami alojada en Amazon Lightsail?

Certificados comodín Let's Encrypt (por ejemplo, *.ejemplo.com)

Para obtener información sobre la instalación de un certificado Let's Encrypt comodín en una instancia de Lightsail con una pila de Bitnami, como WordPress, Lamp, Magento, MEAN, etc., consulte ¿Cómo se instala un certificado SSL Let's Encrypt comodín en una pila de Bitnami alojada en Amazon Lightsail?

Resolución

Los pasos que se siguen para instalar un certificado SSL comodín Let's Encrypt en la instancia de Lightsail dependen del proveedor de DNS que el dominio utilice. Para determinar qué método utilizar, verifique si el proveedor de DNS aparece en la lista de DNS de Cerbot en complementos de DNS. A continuación, seleccione el método adecuado para utilizar:

Método 1: utilice este método si el dominio utiliza uno de los proveedores de DNS que aparecen en la lista.

Método 2: utilice este método si el dominio no utiliza ninguno de los proveedores de DNS que aparecen en la lista.

Método 1

Requisitos previos y limitaciones

  • Los siguientes pasos se refieren a la instalación del certificado en el servidor. Debe completar manualmente pasos adicionales, como configurar el servidor web para que use el certificado y configurar la redirección HTTPS.
  • El dominio debe utilizar uno de los proveedores de DNS que figuran en la lista de DNS de Certbot.

Nota: Este método requiere la instalación de la herramienta Certbot antes de comenzar. Para obtener instrucciones sobre la instalación, consulte ¿Cómo se instala el paquete Certbot en la instancia de Lightsail para la instalación de Let's Encrypt?

En el siguiente ejemplo, el proveedor de DNS es Amazon Route 53. Para obtener instrucciones sobre otros proveedores de DNS compatibles, consulte Complementos de DNS.

1.    Cree un usuario de AWS Identify and Access Management (IAM) con acceso mediante programación. Para conocer los permisos mínimos que se deben asociar al usuario de IAM para que Certbot pueda completar el desafío de DNS, consulte certbot-dns-route-53.

2.    Ejecute los siguientes comandos en la instancia para abrir el archivo /root/.aws/credentials en el editor nano.

sudo mkdir /root/.aws
sudo nano /root/.aws/credentials

3.    Copie las siguientes líneas en el archivo. A continuación, guarde el archivo. Para ello, pulse ctrl+x, luego y y,después, INTRO.

En el siguiente comando, sustituya aws_access_key_id por el ID de la clave de acceso creada en el paso 1. Sustituya aws_secret_access_key por la clave de acceso secreta creada en el paso 1.

[default]
aws_access_key_id = AKIA************E
aws_secret_access_key = 1yop**************************l

4.    Cree un certificado Let's Encrypt en el servidor. Reemplace example.com por el nombre de dominio.

Si los dominios utilizan Amazon Route 53 como proveedor de DNS, ejecute el siguiente comando:

sudo certbot certonly --dns-route53 -d example.com -d *.example.com

Después de que el certificado SSL se genere correctamente, recibirá el mensaje “Certificado recibido con éxito”. También se proporcionan las ubicaciones de los archivos de certificados y claves. Guarde estas ubicaciones de los archivos en un bloc de notas para utilizarlas en el paso 6.

5.    Configure la renovación automática de certificados.

Si el paquete Certbot se instala mediante snapd, la renovación se configura automáticamente en systemd timers o cronjobs.

Si la distribución del sistema operativo es Amazon Linux 2 o FreeBSD, el paquete Certbot no se instala mediante snapd. En este caso, debe configurar la renovación manualmente mediante la ejecución del siguiente comando:

echo "30 0,12 * * * root python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew" | sudo tee -a /etc/crontab > /dev/null

6.    Únicamente se ha completado la instalación y la configuración de renovación del certificado. Todavía debe configurar el servidor web para utilizar este certificado y configurar la redirección HTTPS. Esta configuración varía y depende de la configuración del servidor web que tengas en tu instancia. Consulte la documentación del servicio web para obtener instrucciones sobre cómo completar estos pasos.

Método 2

Requisitos previos y limitaciones

  • Los siguientes pasos se refieren a la instalación del certificado en el servidor. Debe completar manualmente pasos adicionales, como configurar el servidor web para que use el certificado y configurar la redirección HTTPS.
  • Este método no admite la renovación automática del certificado.

Nota: Este método requiere la instalación de la herramienta Certbot antes de comenzar. Para obtener instrucciones sobre la instalación, consulte ¿Cómo se instala el paquete Certbot en la instancia de Lightsail para la instalación de Let's Encrypt?

1.    Este método exige agregar registros TXT en el proveedor de DNS del dominio. Es posible que este proceso dure algún tiempo, por lo que es una práctica recomendada ejecutar los comandos en la pantalla GNU de Linux para evitar que se agote el tiempo de espera de la sesión. Para iniciar una sesión de pantalla, ingrese el siguiente comando:

screen -S letsencrypt

2.    Ingrese el siguiente comando para iniciar Certbot en modo interactivo. Este comando indica a Certbot que utilice un método de autorización manual con desafíos de DNS para verificar la propiedad del dominio. Reemplace example.com por el nombre de dominio.

sudo certbot certonly --manual --preferred-challenges dns -d example.com -d *.example.com

3.    Recibirá un mensaje para verificar que es el propietario del dominio especificado, donde se le pedirá que agregue registros TXT a los registros DNS del dominio. Let's Encrypt proporciona uno o varios registros TXT que debe usar para la verificación.

4.    Cuando vea un registro TXT en la pantalla, primero agregue el registro proporcionado en el DNS del dominio. NO PULSE INTRO hasta que confirme que el registro TXT se propaga a DNS de Internet. Además, NO PULSE CTRL+D, ya que terminará la sesión de pantalla actual.

5.    Para confirmar que el registro TXT se ha propagado al DNS de Internet, búsquelo en Búsqueda de texto de DNS. Ingrese el siguiente texto en el cuadro de texto y elija Búsqueda de TXT para ejecutar la verificación. Asegúrese de reemplazar example.com por el dominio.

_acme-challenge.example.com

6.    Si los registros TXT se han propagado al DNS de Internet, verá el valor del registro TXT en la página. Ahora puede volver a la pantalla y pulsar INTRO.

Nota: Si lo sacan de shell, utilice el comando screen -r SESSIONID para volver a entrar. Obtenga el ID de sesión mediante la ejecución del comando screen -ls.

7.    Si se le solicita por parte de Certbot que agregue otro registro TXT, vuelva a completar los pasos 4 -7.

8.    Después de que el certificado SSL se genere correctamente, recibirá el mensaje “Certificado recibido con éxito”. También se proporcionan las ubicaciones de los archivos de certificados y claves. Guarde estas ubicaciones de los archivos en un bloc de notas para utilizarlas en el siguiente paso.

9.    Únicamente se ha completado la instalación y la configuración de renovación del certificado. Todavía debe configurar el servidor web para utilizar este certificado y configurar la redirección HTTPS. Esta configuración varía y depende de la configuración del servidor web que tengas en tu instancia. Consulte la documentación del servicio web para obtener instrucciones sobre cómo completar estos pasos.


¿Le resultó útil este artículo?


¿Necesita asistencia técnica o con la facturación?