Descripción #
Imaxe Hardened Ubuntu 22.04 LTS es una AMI lista para producción y endurecida, pensada para organizaciones que necesitan mantener sus flotas de Ubuntu 22 funcionando de forma segura mucho más allá de la ventana de mantenimiento estándar. Monitorizamos los avisos de seguridad, aplicamos los parches críticos y publicamos AMIs actualizadas con cadencia regular, para que tus cargas sigan protegidas sin una migración de sistema operativo disruptiva.
La imagen sale de fábrica con el sistema endurecido: firewall en denegación por defecto, SSH reforzado, AppArmor en modo enforce, auditoría con auditd, integridad de ficheros con AIDE, detección de rootkits con rkhunter, antivirus ClamAV y protección de fuerza bruta con fail2ban. Todo verificado en cada publicación con una auditoría Lynis cuyo informe completo puedes leer más abajo.
Guía rápida: en marcha en 5 minutos #
Todo lo que necesitas para pasar de cero a una instancia endurecida en producción.
No hace falta pelearse con la consola de AWS. El lanzador de imaxe es un formulario guiado que te pregunta lo imprescindible — región, tipo de instancia, red y acceso SSH — y genera una plantilla de CloudFormation que despliega la AMI ya configurada. Te evita los errores típicos del lanzamiento manual (arquitectura equivocada, grupo de seguridad abierto de más, keypair sin asignar) y deja la pila entera bajo tu control en tu propia cuenta.
Si prefieres hacerlo a mano, el camino largo son cuatro pasos:
| Paso | Acción | Dónde | Tiempo |
|---|---|---|---|
| 1 | Suscríbete y lanza la AMI — cualquier instancia arm64 (Graviton), p. ej. t4g.small para empezar. Incluye 7 días de prueba gratuita. | AWS Marketplace → EC2 | ~2 min |
| 2 | Abre el puerto 22 en el grupo de seguridad, restringido a tu IP o CIDR. | Consola EC2 | 1 min |
| 3 | Conéctate por SSH — ssh ubuntu@<ip-de-la-instancia> con la keypair elegida al lanzar. | Tu terminal | 1 min |
| 4 | Listo — el hardening ya está activo. Explora el estado con la herramienta imaxe incluida. | La instancia | — |
No hay asistente de configuración ni pasos posteriores obligatorios: la imagen sale endurecida de fábrica. El resto de esta página es opcional. Si algo falla, ve directo a resolución de problemas.
Características #
Todo lo que incluye la imagen, agrupado por lo que es estándar y lo que es nuestro.
General
- Base Ubuntu 22.04 LTS (jammy, arm64) actualizada en cada build, con parches de seguridad automáticos (
unattended-upgrades) activados. - Firewall
ufwen denegación por defecto: solo el puerto 22 abierto de fábrica. - SSH endurecido: sin root, sin contraseñas, solo clave pública, criptografía moderna (ed25519, chacha20-poly1305, kex post-cuántico sntrup761x25519).
- AppArmor con perfiles extra instalados y todos en modo enforce.
- Kernel endurecido vía sysctl (ptrace restringido, BPF sin privilegios deshabilitado, protecciones de enlaces y FIFOs, ASLR completo).
- Montajes reforzados:
/tmp,/var/tmpy/dev/shmconnoexec,nosuid,nodev;/procconhidepid=2. - Auditoría completa con
auditd(identidad, sudoers, sshd, logins) y contabilidad consysstat. - PAM con política de contraseñas robusta (mínimo 14 caracteres) y bloqueo de cuenta con
faillocktras 5 fallos.
Especiales
- Extended Lifecycle Support: seguimos publicando AMIs parcheadas de Ubuntu 22.04 cuando el mantenimiento estándar se agota — soporte hasta 2032.
- Integridad de ficheros (AIDE): base de datos horneada en el build, lista para detectar cambios desde el primer arranque.
- Anti-malware de serie: rkhunter con línea base propia y ClamAV con firmas horneadas y actualización automática (24 comprobaciones al día).
- fail2ban integrado con ufw: 5 intentos SSH fallidos en 10 minutos = 1 hora de baneo, leyendo directamente el journal.
- Verificación de integridad de paquetes con debsums, en cron.
- Herramienta
imaxeincluida: una CLI para operar el hardening, el firewall, la auditoría y el resto de módulos sin editar ficheros a mano. - Auditoría Lynis en cada publicación, con el informe completo publicado en esta página.
Módulos de imaxe
Módulos de la herramienta imaxe horneados en esta AMI, con su documentación:
| Módulo | Qué hace | Documentación |
|---|---|---|
| os | Base del sistema: actualizaciones desatendidas, locale, zona horaria, hostname y hora. | Ver docs → |
| ssh | Claves autorizadas, host keys, sesiones activas y hardening de sshd desde un solo comando. | Ver docs → |
| firewall | Estado de ufw, bloqueo/desbloqueo de IPs y apertura o cierre de puertos. | Ver docs → |
| audit | Eventos de auditd y reglas de auditoría CIS sin pelearte con auditctl. | Ver docs → |
| aide | Integridad de ficheros (FIM) con AIDE. | Ver docs → |
| rkhunter | Escaneo del servidor en busca de rootkits. | Ver docs → |
| clamav | Antivirus ClamAV en runtime. | Ver docs → |
| lynis | Auditoría de hardening del sistema con informe accionable. | Ver docs → |
| fail2ban | Estado de las jails, IPs baneadas, banear y desbanear a mano. | Ver docs → |
| secrets | Genera, lee y rota los secretos locales de la instancia. | Ver docs → |
| info | Inventario de la AMI en /etc/imaxe/info.yaml, sin secretos. | Ver docs → |
| global-alerts | Bus de alertas transversal de la instancia (SNS). | docs en preparación |
Dimensionamiento y costes #
Es una imagen base de sistema operativo: corre en cualquier instancia arm64 (Graviton) de AWS, de t4g.nano a metal — elige el tamaño según tu carga, no según la AMI. Las builds y tests de esta imagen se ejecutan en t4g.medium.
| Concepto | Precio |
|---|---|
| Suscripción por hora | 0,008 $/h por instancia |
| Suscripción anual | 60 $/año por instancia |
| Prueba gratuita | 7 días |
Al precio de la suscripción se suma el coste normal de AWS (instancia EC2, disco EBS y tráfico), que pagas directamente a AWS según tu tarifa. El disco de la imagen es de 8 GB, ampliable al lanzar.
Reportes Lynis #
Resultado de la auditoría de endurecimiento Lynis de cada versión publicada: índice de hardening, avisos y sugerencias, con el informe completo línea a línea.
El índice de hardening lo calcula Lynis a partir de los tests superados. Reejecutamos la auditoría en cada publicación; los avisos abiertos se resuelven antes de subir la imagen al Marketplace.
Versiones disponibles #
Versiones de esta AMI publicadas en AWS Marketplace:
| Versión | Ubuntu | Arquitectura | Estado | Publicación |
|---|---|---|---|---|
| v1.0 | 22.04 LTS (jammy) | arm64 | ✓ activa | 2026-07 |
Ciclo de vida
La razón de ser de este producto, de un vistazo: cuando el soporte estándar de Canonical para Ubuntu 22.04 termina, nuestro mantenimiento continúa.
Cómo lanzar la AMI #
La AMI sigue el flujo estándar de lanzamiento de EC2 sobre instancias arm64 (Graviton). El grupo de seguridad solo necesita un puerto:
| Tipo | Protocolo | Puerto | Origen |
|---|---|---|---|
| (*) SSH | TCP | 22 | tus CIDR |
Restringe SSH a tus propios CIDR o a un bastión — nunca 0.0.0.0/0. El firewall interno de la imagen también deniega todo excepto el 22, así que cualquier puerto adicional que necesites hay que abrirlo en los dos sitios: el grupo de seguridad y ufw.
La v1.0 se publica para arquitectura arm64: elige una familia Graviton (t4g, m7g/m8g, c7g/c8g, r7g/r8g…). No arranca en instancias x86_64.
Una vez en marcha — SSH: usuario ubuntu con la keypair elegida al lanzar. No hay usuario root accesible ni autenticación por contraseña.
ssh -i mi-keypair.pem ubuntu@<ip-de-la-instancia>La imagen por dentro # experto
Todo lo que corre dentro de la AMI, dónde vive cada cosa y los comandos que usarás en el día a día.
Servicios y puertos
| Servicio | Unidad systemd | Puerto | Qué hace |
|---|---|---|---|
| OpenSSH | ssh.service | 22 | Acceso remoto endurecido (drop-in 99-imaxe-harden.conf) |
| ufw | ufw.service | — | Firewall en denegación por defecto |
| auditd | auditd.service | — | Auditoría del sistema (identidad, sudoers, sshd, logins) |
| fail2ban | fail2ban.service | — | Baneo de fuerza bruta SSH vía ufw, leyendo el journal |
| AppArmor | apparmor.service | — | Control de acceso obligatorio, todos los perfiles en enforce |
| freshclam | clamav-freshclam.service | — | Actualización de firmas de ClamAV, 24 veces al día |
| unattended-upgrades | apt-daily-upgrade.timer | — | Parches de seguridad automáticos |
| sysstat | sysstat.service | — | Contabilidad de procesos y rendimiento |
El demonio residente clamd viene desactivado en la imagen base para no consumir 1–2 GB de RAM: el escaneo es bajo demanda con clamscan, con las firmas siempre al día.
Rutas clave
| Ruta | Qué es |
|---|---|
| /etc/ssh/sshd_config.d/99-imaxe-harden.conf | Hardening de sshd (drop-in, no toca el fichero principal) |
| /etc/sysctl.d/99-zz-imaxe-harden-kernel.conf | Endurecimiento del kernel vía sysctl |
| /var/log/sudo.log | Registro de todos los usos de sudo |
| /var/log/audit/ | Eventos de auditd |
| /etc/imaxe/ y /var/lib/imaxe/ | Configuración y estado de la herramienta imaxe |
| /usr/local/bin/imaxe | Binario de la CLI imaxe |
Comandos útiles
| Tarea | Comando |
|---|---|
| Estado del firewall | sudo ufw status verbose |
| IPs baneadas por fail2ban | sudo fail2ban-client status sshd |
| Comprobación de integridad de ficheros | sudo aide –check |
| Escaneo de rootkits | sudo rkhunter –check |
| Escaneo antivirus bajo demanda | sudo clamscan -r /ruta |
| Auditoría Lynis local | sudo lynis audit system |
| Inventario y módulos de la AMI | imaxe |
Cada uno de estos subsistemas tiene su módulo en la CLI imaxe, con una interfaz más cómoda que el comando de origen — ver módulos de imaxe.
Copias y actualizaciones #
- Parches automáticos:
unattended-upgradesaplica las actualizaciones de seguridad de Ubuntu a diario, sin intervención. - Firmas antivirus: freshclam actualiza la base de ClamAV 24 veces al día.
- AMIs nuevas: publicamos versiones actualizadas de la imagen en el Marketplace con cadencia regular; cada versión pasa su propia auditoría Lynis antes de publicarse.
- Copias de seguridad: la imagen no impone ningún sistema propio — usa snapshots de EBS o tu herramienta habitual.
La base de datos de AIDE se hornea en el build. Si instalas o modificas software, regenera la línea base (sudo aideinit o vía el módulo aide de imaxe) para que la comprobación de integridad no marque tus propios cambios.
Resolución de problemas #
Los problemas que concentran casi todos los tickets, con su causa habitual y la solución.
| Síntoma | Causa probable | Solución |
|---|---|---|
| La instancia no llega a lanzarse | Tipo de instancia x86_64 | La AMI es arm64: usa una familia Graviton (t4g, m7g, c7g…) |
| No conecto por SSH | Puerto 22 cerrado en el grupo de seguridad, o IP fuera del CIDR permitido | Revisa el SG — ver cómo lanzar la AMI |
Permission denied (publickey) | La autenticación por contraseña está deshabilitada | Conecta como ubuntu con la keypair del lanzamiento: ssh -i clave.pem ubuntu@<ip> |
| SSH deja de responder tras varios intentos | fail2ban ha baneado tu IP (5 fallos en 10 min = 1 h) | Espera una hora o, desde otra IP: sudo fail2ban-client set sshd unbanip <ip> |
| Un servicio nuevo no es accesible | El firewall interno deniega todo excepto el 22 | Abre el puerto en ufw y en el grupo de seguridad |
| Un binario no se ejecuta en /tmp | /tmp está montado con noexec (hardening) | Ejecuta desde otra ruta o ajusta el montaje si asumes el riesgo |
Preguntas frecuentes #
¿Qué incluye exactamente la suscripción?
La AMI endurecida, las versiones nuevas con parches durante todo el ciclo de vida extendido (hasta 2032) y el soporte del equipo que la construye. Se paga por instancia: 0,008 $/h o 60 $/año, con 7 días de prueba gratuita.
¿Funciona en instancias x86_64?
No. La v1.0 se publica para arm64 (AWS Graviton): familias t4g, m6g–m8g, c6g–c8g, r6g–r8g, etc.
¿Puedo entrar como root o con contraseña?
No: el login de root y la autenticación por contraseña están deshabilitados por hardening. Entra como ubuntu con tu keypair y usa sudo (queda registrado en /var/log/sudo.log).
¿El hardening puede romper mi aplicación?
En la mayoría de los casos no, pero hay que conocer dos límites: /tmp, /var/tmp y /dev/shm están montados con noexec, y los compiladores están restringidos a root. Si tu aplicación necesita algo de eso, ajústalo conscientemente.
¿Cómo actualizo a una versión nueva de la AMI?
Los parches de seguridad llegan solos vía unattended-upgrades. Para saltar a una versión nueva de la imagen, lanza instancias con la AMI nueva y retira las antiguas — el patrón habitual de AMIs inmutables (funciona igual en Auto Scaling).
¿Por qué seguir en Ubuntu 22.04 en vez de migrar a 24.04?
Migrar de versión de SO es un proyecto con riesgo. Este producto existe para que no tengas que hacerlo con prisa: mantenemos 22.04 parcheado y auditado hasta 2032, y tú migras cuando te convenga.
Changelog #
Historial de la AMI. Las fechas corresponden a la publicación de cada versión en AWS Marketplace.
Publicación inicial
Primera versión pública en AWS Marketplace, sobre Ubuntu 22.04 LTS arm64.
imaxe incluida con 12 módulos de operación horneados en la imagen.¿Necesitas ayuda con esta AMI?
Te responde el mismo equipo que construye la imagen — ingenieros de verdad, sin bots ni primer nivel.