Los clientes de SSL.com ahora pueden usar el popular protocolo ACME para solicitar y revocar SSL /TLS Certificados.
ACME (Entorno de gestión de certificados automatizado) es un protocolo estándar para la validación de dominio automatizada e instalación de certificados X.509, documentado en IETFRFC 8555. Como un estándar bien documentado con muchos de código abierto implementaciones de clientes, ACME ofrece una forma sencilla de aprovisionar sitios web o Dispositivos de IoT como módems y enrutadores con certificados digitales de confianza pública o privada y mantenga estos certificados actualizados con el tiempo.
Esta guía le mostrará cómo:
- Busque y recupere las credenciales que necesitará para solicitar certificados con ACME.
- Utilice Certbot para solicitar SSL /TLS certificados a través del HTTP-01 y DNS-01 métodos de desafío.
- Revocar certificados con Certbot.
Puede utilizar muchos otros clientes ACME, incluidos Administrador de certificados de Kubernetes, con el servicio ACME de SSL.com.
acme4j El cliente ahora puede usar los servicios ACME de SSL.com en este repositorio: https://github.com/SSLcom/acme4j
Consulte la documentación de su proveedor de software para obtener instrucciones para otros clientes que no sean Certbot ACME.
Instalar Certbot
Esta guía asume que está trabajando en una computadora que tiene Certbot instalado. Certbot es una herramienta gratuita y de código abierto, desarrollada por Electronic Frontier Foundation (EFF), que puede utilizar para solicitar o revocar SSL /TLS certificados de SSL.com a través del protocolo ACME. Certbot se puede ejecutar en una variedad de plataformas, incluidas Linux, macOS y Windows.
- Si tiene snapd instalado, puede utilizar este comando para la instalación:
sudo snap install - certbot clásico
- If
/snap/bin/
no esta en tuPATH
, también necesitará agregarlo o ejecutar un comando como este:sudo ln -s / snap / bin / certbot / usr / bin / certbot
Si necesita más información sobre la instalación de Certbot en su sistema, consulte la EFF documentación.
Recuperar credenciales ACME
Antes de utilizar ACME para solicitar un certificado, deberá recuperar su Clave de cuenta y Clave HMAC desde su cuenta SSL.com.
- Inicie sesión en su cuenta de SSL.com. Si ya ha iniciado sesión, vaya a la Compras .
- Haz Clic credenciales de la API, ubicado debajo desarrolladores e integración.
- Necesitarás tu Cuenta / clave ACME y Clave HMAC para solicitar certificados. Haga clic en el icono del portapapeles () junto a cada tecla para copiar el valor al portapapeles.
- También puede copiar un comando de Certbot precargado con su dirección de correo electrónico, clave Cuenta / ACME y clave HMAC haciendo clic en el icono del portapapeles () cerca de comando cli, Por debajo Certbot ACME. Este comando preformateado solicitará un certificado a través del método de desafío HTTP-01.
Solicite manualmente un SSL /TLS Certificado
Ahora que ha recuperado sus credenciales, puede solicitar un certificado a través del certbot
mando. Certbot admite dos métodos de validación de dominio (DV): HTTP-01 y DNS-01.
Método de desafío HTTP-01
HTTP-01 es el método de desafío más utilizado con ACME y Certbot. Cuando solicita un certificado de esta manera, Certbot generará un token que puede usar para crear un archivo de acceso público en su sitio web. El servidor ACME de SSL.com verificará el archivo a través de HTTP y emitirá un certificado firmado si es correcto.
Requisitos: El método HTTP-01 requiere que tenga acceso a su servidor web y que el sitio esté disponible a través del puerto 80
a través de HTTP. También necesitarás sudo
privilegios en la computadora.
Para recuperar manualmente un certificado, use el siguiente comando. Reemplace los valores TODOS EN MAYÚSCULAS con sus valores reales. (Como se señaló anteriormente, también puede copiar y pegar un comando certbot que hace esto desde su cuenta del portal):
sudo certbot certonly --manual --server https://acme.ssl.com/sslcom-dv-ecc --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com -- aceptar-tos --no-eff-email --email DIRECCIÓN DE CORREO ELECTRÓNICO --eab-hmac-key CLAVE-HMAC --eab-kid CLAVE-CUENTA -d NOMBRE.DOMINIO
Desglosando el comando:
sudo certbot
corre elcertbot
comando con privilegios de superusuario.certonly
solicita recuperar un certificado, pero no instalarlo.--manual
especifica que se ejecute Certbot de forma interactiva.--server https://acme.ssl.com/sslcom-dv-ecc
especifica el servidor ACME de SSL.com.--config-dir /etc/ssl-com
(opcional) establece el directorio de configuración.--logs-dir /var/log/ssl-com
(opcional) establece el directorio para los registros.--agree-tos
(opcional) acepta el acuerdo de suscriptor de ACME. Puede omitir esto si desea estar de acuerdo de forma interactiva.--no-eff-email
(opcional) indica que no desea compartir su dirección de correo electrónico con la EFF. Si omite esto, se le pedirá la opción de compartir su dirección de correo electrónico.--email EMAIL-ADDRESS
proporciona una dirección de correo electrónico de registro. Puede especificar varias direcciones, separadas por comas.--eab-hmac-key HMAC-KEY
especifica su clave HMAC.--eab-kid ACCOUNT-KEY
especifica la clave de su cuenta.-d DOMAIN.NAME
especifica el nombre de dominio que cubrirá el certificado. Tenga en cuenta que puede utilizar el-d DOMAIN.NAME
opción varias veces en su comando para agregar nombres de dominio a su certificado. Certbot le pedirá que cree un archivo de desafío para cada nombre de dominio solicitado. Consulte la sección sobre tipos de certificados y facturación a continuación para ver cómo se asignan las diferentes combinaciones de nombres de dominio a Tipos de certificado SSL.com y su precio correspondiente.
- Cambie el
--server
valor en el comando parahttps://acme.ssl.com/sslcom-dv-rsa
. - Añadir el archivo
--key-type rsa
al comando.
certbot
comando, la información de la cuenta ACME se almacenará en su computadora en el directorio de configuración (/etc/ssl-com
en el comando que se muestra arriba. En futuras ejecuciones de certbot, puede omitir el --eab-hmac-key
y --eab-kid
opciones porque certbot las ignorará en favor de la información de la cuenta almacenada localmente.
Si necesita asociar sus pedidos de certificados ACME para la computadora con una cuenta de SSL.com diferente, debe eliminar esta información de cuenta de su computadora con el comando sudo rm -r /etc/ssl-com/accounts/acme.ssl.com
(o, si omitió el opcional --config-dir
opción, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com
).
Cuando ejecute el comando anterior, debería recibir instrucciones para crear un archivo de validación:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Cree un archivo que contenga solo estos datos: cr1rsRTImVz_s7HHk7biTQ. 9mOlJPgZ8D97HojOHnhD6hYeZZOPDUDNMxchFUNJQvI Y hágalo disponible en su servidor web en esta URL: http://DOMAIN.NAME/.well-known/acme-challenge/cr1rsRTImVz_s7HHk7biTQ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Presione Enter para continuar
Cree el archivo y guárdelo en una ubicación en su servidor web donde se pueda acceder a través de HTTP a través del puerto 80
en la URL que se muestra, luego presione Enter
.
-
) personaje. En este caso, es posible que deba especificar el directorio al crear su archivo para evitar que el shell interprete el guión (p. Ej. vim ./-r1rsRTImVz_s7HHk7biTQ
).Si toda su información es correcta, debería recibir un mensaje de confirmación que muestre las ubicaciones de su cadena de certificados y clave privada:
NOTAS IMPORTANTES: - ¡Felicitaciones! Su certificado y cadena se han guardado en: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem Su archivo de claves se ha guardado en: /etc/ssl-com/live/DOMAIN.NAME/privkey.pem Su cert expirará el 2021-10-05. Para obtener una versión nueva o modificada de este certificado en el futuro, simplemente ejecute certbot nuevamente. Para renovar * todos * sus certificados de forma no interactiva, ejecute "certbot renew"
Ahora puede configurar su servidor web para acceder al nuevo certificado y clave privada.
Método de desafío DNS-01
El DNS-01 El método de desafío es más complicado de usar que HTTP-01, pero puede ser más conveniente para usar en múltiples servidores web. En este método, Certbot proporcionará un token que utilizará para crear un registro TXT de DNS con el nombre de dominio que protegerá el certificado.
Requisitos: El método DNS-01 requiere que tenga la capacidad de crear registros DNS para el nombre de dominio de su sitio web.
El siguiente comando solicitará un certificado para DOMAIN.NAME a través del método de desafío DNS-01:
sudo certbot certonly --manual --server https://acme.ssl.com/sslcom-dv-rsa --agree-tos --no-eff-email --email EMAIL-ADDRESS --eab-hmac-key HMAC-KEY --eab-kid ACCOUNT-KEY --preferred-challenges dns -d DOMAIN.NAME
-d DOMAIN.NAME
opción varias veces en su comando para agregar nombres de dominio a su certificado. Certbot le pedirá que cree un registro TXT de DNS independiente para cada nombre de dominio solicitado. No tiene que esperar a que se propague cada registro TXT antes de presionar Enter
hasta llegar al desafío final. Consulte la sección sobre tipos de certificados y facturación a continuación para ver cómo se asignan las diferentes combinaciones de nombres de dominio a Tipos de certificado SSL.com y su precio correspondiente. certbot
comando, la información de la cuenta ACME se almacenará en su computadora en el directorio de configuración (/etc/ssl-com
en el comando que se muestra arriba. En futuras ejecuciones de certbot, puede omitir el --eab-hmac-key
y --eab-kid
opciones porque certbot las ignorará en favor de la información de la cuenta almacenada localmente.
Si necesita asociar sus pedidos de certificados ACME para la computadora con una cuenta de SSL.com diferente, debe eliminar esta información de cuenta de su computadora con el comando sudo rm -r /etc/ssl-com/accounts/acme.ssl.com
(o, si omitió el opcional --config-dir
opción, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com
).
Este comando es el mismo que el de la sección HTTP-01, pero agrega el --preferred-challenges dns
opción. Cuando ejecute el comando, recibirá instrucciones para crear un registro DNS:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please deploy a DNS TXT record under the name _acme-challenge.DOMAIN.NAME with the following value: -87YKoj3sQZB4rVCMZTiifl9QJKYm2eYYymAkpE0zBo Before continuing, verify the record is deployed. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Press Enter to Continue
Cree el registro TXT de DNS y espere a que se propague. (whatsmydns.net es una herramienta conveniente para verificar la propagación de DNS). Tenga en cuenta que el carácter de subrayado (_) al principio del nombre del registro es Requisitos. Cuando el registro se haya propagado por todo el mundo, presione Enter
.
*.example.com
) deberá solicitar el nombre de dominio base por separado si también desea protegerlo (por ejemplo -d *.example.com -d example.com
). En tal caso, necesitará crear two Registros TXT con el mismo nombre (_acme-challenge.example.com
). Si toda su información es correcta, debería recibir un mensaje de confirmación que muestre las ubicaciones de su cadena de certificados y clave privada:
IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem Your key file has been saved at: /etc/ssl-com/live/DOMAIN.NAME/privkey.pem Your cert will expire on 2021-10-05. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew"
Ahora puede configurar su servidor web para acceder al nuevo certificado y clave privada.
Renovación de certificado (manual)
Para los certificados emitidos manualmente (como se describe en esta guía), la renovación del certificado se logra simplemente repitiendo el comando utilizado para solicitar el certificado. Certbot proporciona un renew
subcomando, pero producirá un error en un intento de usarlo con certificados solicitados con el --manual
opción:
sudo certbot renew --force-renewal Guardando el registro de depuración en /var/log/ssl-com/letsencrypt.log - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Procesando /etc/ssl-com/renewal/DOMAIN.NAME - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - No se pudo elegir el complemento adecuado: el complemento manual no funciona; puede haber problemas con su configuración existente. El error fue: PluginError ('Se debe proporcionar un script de autenticación con --manual-auth-hook cuando se usa el complemento manual de forma no interactiva',) Intentando renovar el certificado (DOMAIN.NAME) desde / etc / ssl-com / renewal / DOMAIN.NAME.conf produjo un error inesperado: el complemento manual no funciona; puede haber problemas con su configuración existente. El error fue: PluginError ('Se debe proporcionar un script de autenticación con --manual-auth-hook cuando se usa el complemento manual de forma no interactiva',). Salto a la comba. Todos los intentos de renovación fallaron. Los siguientes certificados no se pudieron renovar: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem (falla) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Todos los intentos de renovación fallaron. Los siguientes certificados no se pudieron renovar: /etc/ssl-com/live/DOMAIN.NAME/fullchain.pem (falla) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 falla (s) de renovación, 0 falla (s) de análisis
Revocación de certificado
Revocar un certificado con certbot revoke
. Reemplace la ruta del certificado en TODAS LAS MAYÚSCULAS con sus valores reales (por ejemplo, /etc/ssl-com/live/example.com/cert.pem
). Si no especificó un personalizado --config-dir
y --logs-dir
al solicitar el certificado original, omita estas opciones.
sudo certbot revoke --server https://acme.ssl.com/sslcom-dv-rsa --cert-path /PATH/TO/cert.pem --config-dir / etc / ssl-com --logs-dir / var / log / ssl-com
Se le preguntará si también desea eliminar el certificado revocado:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ¿Desea eliminar los certificados que acaba de revocar, junto con todas las versiones anteriores y posteriores del certificado? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y) es (recomendado) / (N ) o: Y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Eliminados todos los archivos relacionados con el certificado NOMBRE DE DOMINIO. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Unable to register an account with ACME server. Error returned by the ACME server: Something went wrong. We apologize for the inconvenience.
Intente lo siguiente para resolver el error:
a) Especifique la ruta de la clave privada del certificado para firmar la solicitud de revocación.
Ejemplo:
--key-path /PATH/TO/privkey.pem
b) Si usó un directorio personalizado, especifique el directorio que usó cuando emitió el certificado:
--config-dir
Tipos de certificados y facturación
Todo SSL /TLS Los certificados emitidos a través de ACME por SSL.com son certificados de un año. El tipo de certificado SSL.com que recibirá (y se le facturará) depende del número y tipo de nombres de dominio solicitados:
- Básico SSL: Un nombre de dominio o un nombre de dominio más
www
subdominio (p. ej.example.com
ywww.example.com
).- Tenga en cuenta que si desea proteger tanto el nombre de dominio base como
www
, debe incluir ambos en su comando Certbot (p. ej.-d example.com -d www.example.com
).
- Tenga en cuenta que si desea proteger tanto el nombre de dominio base como
- SSL comodín: Un nombre de dominio comodín o un nombre de dominio comodín más el nombre de dominio base (p. Ej.
*.example.com
yexample.com
). - SSL Premium: Nombre de dominio base y de uno a tres subdominios sin comodines. (Excepción: como se indicó anteriormente, dominio base más
www
subdominio [y ningún otro] se facturará como SSL básico). Por ejemplo:
example.com
yinfo.example.com
example.com
,www.example.com
yinfo.example.com
example.com
,www.example.com
,info.example.com
ystore.example.com
- Multi-Dominio UCC / SAN SSL: Cualquier otra combinación de nombres de dominio. Por ejemplo:
- Nombre de dominio base y más de tres subdominios
- Dos o más nombres de dominio comodín y / o no subdominio
Participantes en SSL.com's Programa de revendedores y compras por volumen se facturará a la tarifa con descuento asociada con su nivel de precios.
Para más información
Puede hacer mucho más con el protocolo ACME (con o sin Certbot). Consulte los siguientes recursos para obtener mucha más información:
- ¿Qué es el protocolo ACME?
- ACME SSL /TLS Automatización con Apache y Nginx
- SSL /TLS Automatización para el IoT con ACME
- Documentación de Certbot
- Página de manual de Certbot
¿Necesita más ayuda con su cuenta SSL.com?
- Su cuenta de SSL.com: envío de una CSR
- ¿Falló la prueba previa?
- Su cuenta SSL.com - Validaciones
- Su cuenta de SSL.com - Pedidos
- API de SWS de SSL.com - Introducción
- Su cuenta de SSL.com - Dominios
- HSM en la nube compatibles para firma de documentos y firma de código EV