AWS S3
Cómo desplegar automáticamente certificados SSL en un bucket de AWS S3.
Descripción general
AutoSSL puede cargar automáticamente los archivos del certificado SSL en un bucket de Amazon S3. Cada certificado se archiva en una ruta versionada y también se actualiza en una ruta latest/, para que los consumidores posteriores (por ejemplo, Nginx, Caddy o scripts personalizados que obtienen certificados de S3) lo encuentren con facilidad.
Para gestionar y ejecutar este despliegue, consulte la sección Gestión de despliegues.
Parámetros de configuración
Al añadir o editar este destino de despliegue en la consola de AutoSSL, configure estos parámetros:
| Parámetro | Descripción | Ejemplo |
|---|---|---|
| Región | Región de AWS en la que se encuentra el bucket de S3. | us-east-1 |
| Nombre del bucket | Nombre del bucket de S3 en el que se cargarán los archivos del certificado. | my-ssl-certs |
| Prefijo de la clave de objeto | (Opcional) Prefijo para organizar los archivos del certificado en el bucket. Si se indica, los archivos se cargan bajo ese prefijo. La barra final es opcional. | certs/example.com/ |
Cómo funciona
Cuando AutoSSL despliega un certificado en un bucket de AWS S3 (por ejemplo, my-ssl-certs en us-east-1 con el prefijo certs/example.com/), realiza estos pasos:
-
Preparación del certificado:
- Divide la cadena completa del certificado en archivos PEM individuales:
cert.pem(certificado hoja),privkey.pem(clave privada, codificada en PKCS#8),chain.pem(cadena intermedia) yfullchain.pem(cadena completa). - Genera un archivo
README.mdcon los metadatos del certificado y un enlace a https://autossl.dev para la trazabilidad. - Lee la fecha
notBeforey la huella SHA1 del certificado para generar el nombre del directorio de archivo (formato:YYYY-MM-DD_<first 8 chars of SHA1>).
- Divide la cadena completa del certificado en archivos PEM individuales:
-
Carga de archivos:
- Carga los archivos del certificado (cuatro archivos PEM y README.md) en dos rutas del bucket:
- Ruta de archivo —
certs/example.com/2026-05-30_e5f6a7b8/cert.pem(yprivkey.pem,chain.pem,fullchain.pem,README.md). Esta ruta es única para cada emisión y nunca se sobrescribe. - Ruta latest —
certs/example.com/latest/cert.pem(yprivkey.pem,chain.pem,fullchain.pem,README.md). Esta ruta siempre refleja el certificado cargado más recientemente.
- Ruta de archivo —
- Carga los archivos del certificado (cuatro archivos PEM y README.md) en dos rutas del bucket:
La ruta latest/ permite que los servicios posteriores obtengan siempre el
certificado actual desde una clave de S3 fija. Los certificados anteriores
siguen disponibles en sus directorios de archivo versionados.
Ejemplo de estructura del bucket
Después de varias renovaciones, la estructura del bucket tendrá este aspecto:
certs/example.com/
├── 2026-03-01_a1b2c3d4/
│ ├── cert.pem
│ ├── privkey.pem
│ ├── chain.pem
│ ├── fullchain.pem
│ └── README.md
├── 2026-05-30_e5f6a7b8/
│ ├── cert.pem
│ ├── privkey.pem
│ ├── chain.pem
│ ├── fullchain.pem
│ └── README.md
└── latest/
├── cert.pem
├── privkey.pem
├── chain.pem
├── fullchain.pem
└── README.mdFormato de clave privada
privkey.pem está codificado en formato PKCS#8 (-----BEGIN PRIVATE KEY-----). Los servidores y las herramientas modernos (Nginx, Caddy, Traefik, OpenSSL 1.1+, etc.) admiten ampliamente este formato.
Si su entorno exige el formato PKCS#1 (por ejemplo, -----BEGIN RSA PRIVATE KEY----- para claves RSA), conviértalo en local antes de usarlo:
openssl rsa -in privkey.pem -out privkey-pkcs1.pemRequisitos de la clave de acceso
Para usar la API de AWS, este proveedor requiere una clave de acceso de AWS.
Permisos necesarios
La clave de acceso debe pertenecer a un usuario de IAM de AWS con permiso para cargar objetos en el bucket de S3 de destino.
Debe asociar al usuario una política de IAM con, al menos, esta acción sobre el prefijo del bucket de destino:
s3:PutObject
Ejemplo de política de IAM mínima:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::my-ssl-certs/certs/example.com/*"
}
]
}Para más información sobre los permisos de IAM, consulte la documentación de IAM de AWS.