Lanzador Productos Bitnami Documentaciónimaxe CLI Blog Contacto
Cache memcachedcachesasltlshardened

Memcached Hardened

Memcached endurecido y listo para producción: SASL obligatorio, firewall por defecto y actualizaciones de seguridad desatendidas.

Regiones
32 AWS
Última versión
v2.0
Memcached
1.6
Arquitectura
arm64
Lynis
100/100
SASL + TLS
de serie
Precio
0.008 USD/h · 60 USD/año
Nivel de detalle

Descripción #

Imaxe Hardened Memcached es una AMI de Memcached endurecida y lista para producción, pensada como sustituta directa de «Memcached packaged by Bitnami». Instala Memcached con los paquetes estándar de Ubuntu — apt, systemd y rutas FHS, sin árboles monolíticos en /opt ni supervisores propietarios — sobre la base endurecida de imaxe.

Dos diferencias de seguridad de fábrica frente al producto de Bitnami: la autenticación SASL viene activada (no deshabilitada), con una password única por instancia, y el tráfico de red va cifrado con TLS, con un certificado generado también en cada instancia. Como el único mecanismo SASL de memcached es PLAIN, sin TLS la password viajaría en claro — aquí no puede pasar.

El resto es la base endurecida de imaxe: 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 cache endurecida en producción.

La forma más rápida: el lanzador

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 cinco pasos:

PasoAcciónDóndeTiempo
1Suscríbete y lanza la AMI — cualquier instancia arm64 (Graviton); t4g.medium es la recomendada. Incluye 7 días de prueba gratuita.AWS Marketplace → EC2~2 min
2Abre el puerto 22 en el grupo de seguridad, restringido a tu IP o CIDR. El 11211 viene cerrado a propósito: ábrelo solo al CIDR de tu VPC si tu aplicación vive en otra máquina.Consola EC21 min
3Lee la credencial SASL — está en la consola del sistema (System Log de EC2) o, por SSH, con sudo imaxe memcached credentials. En el primer arranque la password es el instance-id.Consola EC2 o SSH1 min
4Conecta tu cliente con TLS + SASL: usuario memcached, la password de la instancia y el puerto 11211. El certificado es autofirmado: dile a tu cliente que confíe en /etc/memcached/tls/server.crt.Tu aplicación~1 min
5Listo — el tamaño de la cache ya está ajustado a la instancia. Explora el estado con imaxe memcached status.La instancia
Eso es todo

No hay asistente de configuración ni pasos posteriores obligatorios: la imagen sale endurecida y dimensionada 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

  • Memcached 1.6 de los paquetes oficiales de Ubuntu 26.04 LTS (resolute, arm64), gestionado con systemd — sin árboles en /opt ni scripts propietarios.
  • Base Ubuntu actualizada en cada build, con parches de seguridad automáticos (unattended-upgrades) activados.
  • Firewall ufw en denegación por defecto: solo 22 (SSH) y 11211 (memcached) permitidos localmente; el grupo de seguridad del Marketplace solo publica el 22.
  • 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, montajes con noexec,nosuid,nodev, /proc con hidepid=2.
  • Auditoría completa con auditd, integridad con AIDE y debsums, anti-malware con rkhunter y ClamAV, fail2ban integrado con ufw.

Especiales

  • SASL obligatorio de fábrica: usuario memcached con password única por instancia (el instance-id en el primer arranque), volcada a la consola del sistema EC2 — donde la busca quien viene de Bitnami. Nada se hornea en la AMI: cada instancia estrena credencial.
  • TLS de serie en el puerto 11211 (mínimo TLS 1.2): certificado autofirmado emitido en cada instancia — clave EC P-256, instance-id como CN, IPs y nombres de la instancia como SAN — antes de que arranque el servicio. Puedes instalar el tuyo.
  • Puerto 11212 en claro solo en loopback, para las herramientas del sistema (memcstat y compañía no hablan TLS). Sigue exigiendo SASL y no es accesible desde fuera.
  • UDP desactivado afirmativamente (-U 0): el protocolo UDP de memcached es el vector clásico de amplificación DDoS.
  • Tuning automático en cada arranque: imaxe memcached optimize recalcula memoria de cache, conexiones e hilos con la CPU y RAM reales — para la instancia, cambia el tipo, arranca, y la cache se redimensiona sola.
  • Gestión de usuarios SASL sin reinicios: imaxe memcached users add/rotate/delete — la base SASL se lee en cada autenticación y la cache no se vacía.
  • Herramienta imaxe incluida: una CLI para operar el servicio, las credenciales, el certificado y todo el hardening 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óduloQué haceDocumentación
memcachedEl módulo del producto: estado, credenciales, usuarios SASL, TLS y tuning automático del servicio.Ver docs →
osBase del sistema: actualizaciones desatendidas, locale, zona horaria, hostname y hora.Ver docs →
sshClaves autorizadas, host keys, sesiones activas y hardening de sshd desde un solo comando.Ver docs →
firewallEstado de ufw, bloqueo/desbloqueo de IPs y apertura o cierre de puertos.Ver docs →
auditEventos de auditd y reglas de auditoría CIS sin pelearte con auditctl.Ver docs →
aideIntegridad de ficheros (FIM) con AIDE.Ver docs →
rkhunterEscaneo del servidor en busca de rootkits.Ver docs →
clamavAntivirus ClamAV en runtime.Ver docs →
lynisAuditoría de hardening del sistema con informe accionable.Ver docs →
fail2banEstado de las jails, IPs baneadas, banear y desbanear a mano.Ver docs →
secretsGenera, lee y rota los secretos locales de la instancia — incluida la password SASL.Ver docs →
infoInventario de la AMI en /etc/imaxe/info.yaml, sin secretos.Ver docs →
global-alertsBus de alertas transversal de la instancia (SNS).docs en preparación

Dimensionamiento y costes #

La AMI corre en cualquier instancia arm64 (Graviton) de AWS y se autodimensiona: en cada arranque, imaxe memcached optimize asigna a la cache el 60 % de la RAM utilizable (tras reservar 512 MB para el SO y los agentes) y deriva hilos y conexiones del tamaño de la instancia. Elige el tipo por la cache que necesites: más RAM = más cache, sin tocar configuración. La instancia recomendada de partida es t4g.medium, que es también donde se ejecutan las builds y tests de esta imagen.

ConceptoPrecio
Suscripción por hora0,014 $/h por instancia
Suscripción anual99 $/año por instancia
Prueba gratuita7 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. Memcached es una cache en memoria: prioriza RAM sobre disco al elegir la instancia.

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.

VersiónÍndice hardeningTestsAvisosSugerenciasAuditoríaInforme
v2.0100/100241002026-08-15HTML · PDF ↓
v1.094/100244112026-08-05HTML · PDF ↓

El índice de hardening lo calcula Lynis a partir de los tests superados. Reejecutamos la auditoría en cada publicación y revisamos a mano cada aviso y sugerencia antes de subir la imagen al Marketplace; el detalle de los hallazgos abiertos está en el propio informe.

Versiones disponibles #

Versiones de esta AMI publicadas en AWS Marketplace:

VersiónMemcachedUbuntuArquitecturaEstadoPublicación
v2.01.626.04 LTS (resolute)arm64 activa2026-08
v1.01.624.04 LTS (noble)arm64 activa2026-08

Ciclo de vida

La v2.0 es la versión actual, activa y mantenida: los parches de seguridad de Ubuntu llegan solos a las instancias vía unattended-upgrades, y publicamos versiones nuevas de la AMI en el Marketplace con cadencia regular, cada una con su propia auditoría Lynis. Cuando salga una versión nueva aparecerá en esta tabla y en el changelog.

Cómo lanzar la AMI #

La AMI sigue el flujo estándar de lanzamiento de EC2 sobre instancias arm64 (Graviton). El grupo de seguridad del Marketplace solo publica un puerto:

TipoProtocoloPuertoOrigen
(*) SSHTCP22tus CIDR
Memcached (opcional)TCP11211solo el CIDR de tu VPC o el SG de tus clientes
No expongas la cache a Internet

El 11211 viene cerrado en el grupo de seguridad a propósito, igual que en el producto de Bitnami. Aun con TLS por medio, ábrelo solo a tu red privada — nunca 0.0.0.0/0. El firewall interno (ufw) ya lo permite, así que basta con la regla del grupo de seguridad. Para acceso puntual desde fuera, usa un túnel SSH: ssh -i clave.pem -L 11211:127.0.0.1:11211 ubuntu@<ip-publica> (el reenvío de puertos está permitido en esta AMI, a diferencia del resto de imágenes de imaxe). Dentro de la instancia, sudo imaxe memcached open-port --cidr <tu-red> y close-port controlan el firewall local.

Solo arm64

La v2.0 se publica para arquitectura arm64: elige una familia Graviton (t4g, m7g/m8g, c6gc8g, 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. Credencial de la cache: usuario SASL memcached con el instance-id como password inicial, visible en la consola del sistema EC2 o por SSH:

terminal
ssh -i mi-keypair.pem ubuntu@<ip-de-la-instancia>
sudo imaxe memcached credentials      # usuario, password y puerto
imaxe memcached tls show              # huella del certificado de esta 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

ServicioUnidad systemdPuertoQué hace
Memcachedmemcached.service11211La cache, con TLS (mín. 1.2) y SASL obligatorios
Memcached (loopback)memcached.service11212Escucha en claro solo en 127.0.0.1, para herramientas locales; SASL sigue siendo obligatorio
Preparación de instanciaimaxe-memcached-instance-setup.serviceAntes de memcached en cada arranque: certificado TLS, credencial SASL y tuning. Idempotente
OpenSSHssh.service22Acceso remoto endurecido (drop-in 99-imaxe-harden.conf)
ufwufw.serviceFirewall en denegación por defecto (permite 22 y 11211)
auditdauditd.serviceAuditoría del sistema (identidad, sudoers, sshd, logins)
fail2banfail2ban.serviceBaneo de fuerza bruta SSH vía ufw, leyendo el journal
AppArmorapparmor.serviceControl de acceso obligatorio, todos los perfiles en enforce
freshclamclamav-freshclam.serviceActualización de firmas de ClamAV, 24 veces al día
unattended-upgradesapt-daily-upgrade.timerParches de seguridad automáticos

El servicio memcached queda parado en el bake y arranca por primera vez ya en tu instancia: ni el certificado ni la credencial existen en la AMI. El testigo /etc/memcached/tls/.generated-for guarda el instance-id del certificado; al clonar la instancia, el id no coincide y el material se regenera solo.

Rutas clave

RutaQué es
/etc/memcached.confConfiguración del servicio; el bloque BEGIN/END imaxe memcached optimize lo reescribe el módulo en cada arranque
/etc/memcached/tls/Certificado y clave TLS de esta instancia (server.crt / server.key)
/etc/sasl2/memcached-sasldb2Base de usuarios SASL (gestión vía imaxe memcached users)
/etc/imaxe/secrets/memcached/passwordPassword SASL de la instancia (0600, root)
/etc/imaxe/memcached.ymlConfiguración del módulo memcached de imaxe
/etc/ssh/sshd_config.d/99-imaxe-harden.confHardening de sshd (drop-in, no toca el fichero principal)
/etc/sysctl.d/99-zz-imaxe-harden-kernel.confEndurecimiento del kernel vía sysctl
/var/log/sudo.logRegistro de todos los usos de sudo
/usr/local/bin/imaxeBinario de la CLI imaxe

Comandos útiles

TareaComando
Estado del servicio, escuchas, TLS, SASL y estadísticasimaxe memcached status
Credencial de esta instanciasudo imaxe memcached credentials
Rotar la password SASL (sin reinicio, no vacía la cache)sudo imaxe memcached users rotate
Usuarios SASL: alta / listado / bajasudo imaxe memcached users add app1
Certificado en uso (sujeto, SAN, caducidad, huella)imaxe memcached tls show
Regenerar el certificado (p. ej. tras cambiar de IP pública)sudo imaxe memcached tls renew –force
Ver el tuning recomendado para esta instanciaimaxe memcached optimize –show
Aplicar el tuning ahora (reinicia: vacía la cache)sudo imaxe memcached optimize
Logs del serviciojournalctl -u memcached
Logs de la preparación de instanciajournalctl -u imaxe-memcached-instance-setup

Comprobación local con las herramientas del sistema — libmemcached-tools no habla TLS, así que se usa el puerto en claro de loopback (--binary porque libmemcached solo hace SASL sobre el protocolo binario):

terminal
memcstat --binary --servers=127.0.0.1:11212 --username=memcached \
         --password=$(sudo imaxe memcached credentials --show-password --json | jq -r .password)

Para instalar tu propio certificado en lugar del autofirmado:

terminal
sudo install -m 0644 -o root -g root mi.crt /etc/memcached/tls/server.crt
sudo install -m 0640 -o root -g memcache mi.key /etc/memcached/tls/server.key
sudo rm -f /etc/memcached/tls/.generated-for   # sin testigo, el módulo no lo toca
sudo systemctl restart memcached

Cada subsistema del hardening tiene además su módulo en la CLI imaxe — ver módulos de imaxe.

Copias y actualizaciones #

  • Parches automáticos: unattended-upgrades aplica 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: no hay, por diseño. Memcached es una cache volátil: su contenido se pierde en cada reinicio y no debe contener el único ejemplar de ningún dato. No hay nada que respaldar ni restaurar.
Reiniciar vacía la cache

Cualquier systemctl restart memcached — incluido el que hace sudo imaxe memcached optimize al aplicar tuning — vacía la cache. Los cambios de usuarios y passwords SASL, en cambio, no requieren reinicio. Y si instalas o modificas software, regenera la línea base de AIDE (sudo aideinit o vía el módulo aide de imaxe).

Resolución de problemas #

Los problemas que concentran casi todos los tickets, con su causa habitual y la solución.

SíntomaCausa probableSolución
La instancia no llega a lanzarseTipo de instancia x86_64La AMI es arm64: usa una familia Graviton (t4g, c6gc8g, m7g…)
No conecto por SSHPuerto 22 cerrado en el grupo de seguridad, o IP fuera del CIDR permitidoRevisa el SG — ver cómo lanzar la AMI
Permission denied (publickey)La autenticación por contraseña está deshabilitadaConecta como ubuntu con la keypair del lanzamiento: ssh -i clave.pem ubuntu@<ip>
SSH deja de responder tras varios intentosfail2ban 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>
No llego al 11211 desde otra máquinaEl grupo de seguridad del Marketplace solo abre el 22Añade una regla de SG para 11211 restringida a tu CIDR — ufw ya lo permite
El cliente cierra el socket al conectarEl cliente no habla TLS, o no hace SASLUsa una librería con TLS + SASL (pymemcache con tls_context, php-memcached con OPT_USE_TLS…) y confía en /etc/memcached/tls/server.crt
memcstat no responde contra el 11211libmemcached-tools no está compilada con TLSUsa el puerto en claro de loopback: memcstat --binary --servers=127.0.0.1:11212 …
Autenticación falla tras clonar/reemplazar la instanciaLa credencial se regenera para el nuevo instance-idLee la nueva: sudo imaxe memcached credentials (o consola del sistema EC2)
La cache no aprovecha la RAM tras cambiar el tipo de instanciaEl tuning se aplica en el arranqueReinicia la instancia o ejecuta sudo imaxe memcached optimize

Preguntas frecuentes #

¿Dónde está la password de memcached?

En el primer arranque, el usuario SASL memcached se da de alta con el instance-id como password. Se vuelca a la consola del sistema EC2 (System Log) — donde la busca quien viene de Bitnami — y queda en /etc/imaxe/secrets/memcached/password. Por SSH: sudo imaxe memcached credentials.

¿Cómo cambio la password o añado usuarios?

sudo imaxe memcached users rotate genera una password aleatoria nueva; --stdin acepta una concreta sin pasar por el historial. users add / users delete gestionan más usuarios. Ninguna operación reinicia el servicio ni vacía la cache.

¿Por qué mi cliente no conecta si en Bitnami funcionaba?

Porque aquí SASL y TLS vienen activados de fábrica (en Bitnami, SASL viene deshabilitado). Tu cliente necesita soportar TLS + SASL y confiar en el certificado de la instancia. Es deliberado: el único mecanismo SASL de memcached es PLAIN, y sin TLS la password viajaría en claro.

¿Puedo abrir el 11211 a Internet?

Poder, puedes — pero no lo hagas. Restringe la regla del grupo de seguridad al CIDR de tu VPC o al SG de tus clientes, o usa un túnel SSH (-L) para accesos puntuales. Una cache pública es un objetivo clásico, incluso cifrada.

¿El certificado es autofirmado? ¿Puedo poner el mío?

Sí y sí. El de serie lo emite cada instancia para sí misma (CN = instance-id, SAN con sus IPs y nombres); su huella SHA-256 sale por la consola del sistema y por imaxe memcached tls show. Para usar el tuyo, copia crt/clave a /etc/memcached/tls/, borra el testigo .generated-for y reinicia — ver la imagen por dentro.

¿Cómo dimensiono la cache? ¿Y si me quedo corto?

No se dimensiona: en cada arranque el módulo asigna a la cache el 60 % de la RAM utilizable y deriva hilos y conexiones del tamaño de la instancia. Si necesitas más cache, para la instancia, cambia a un tipo con más RAM y arranca — el tuning se recalcula solo.

¿Funciona en instancias x86_64?

No. La v2.0 se publica para arm64 (AWS Graviton): familias t4g, c6gc8g, m6gm8g, r6gr8g, etc.

¿Qué incluye exactamente la suscripción?

La AMI endurecida, las versiones nuevas durante el ciclo de vida del producto y el soporte del equipo que la construye. Se paga por instancia: 0,014 $/h o 99 $/año, con 7 días de prueba gratuita.

Changelog #

Historial de la AMI. Las fechas corresponden a la publicación de cada versión en AWS Marketplace.

v2.0 2026-08-19Última

Base Ubuntu 26.04 y Lynis 100/100

La AMI se reconstruye sobre Ubuntu 26.04 LTS (resolute), arm64, y la auditoría Lynis alcanza el índice máximo.

Mejora Base actualizada de Ubuntu 24.04 LTS a 26.04 LTS (resolute); Memcached 1.6 sigue viniendo de los paquetes oficiales de Ubuntu. Publicada en las mismas 32 regiones de AWS.
Seguridad Auditoría Lynis 100/100 (241 tests, 0 avisos, 0 sugerencias): los hallazgos abiertos de la v1.0 quedan resueltos. Hardening completo de la base sin cambios: SASL + TLS de serie, ufw, SSH reforzado, AppArmor, auditd, AIDE, rkhunter, ClamAV y fail2ban.
v1.0 2026-08-14

Publicación inicial

Primera versión pública en AWS Marketplace, sobre Ubuntu 24.04 LTS arm64.

Nuevo AMI publicada en 32 regiones de AWS, arquitectura arm64 (Graviton), con Memcached 1.6 de los paquetes de Ubuntu.
Seguridad SASL activado de fábrica con credencial única por instancia y TLS obligatorio (mín. 1.2) en el puerto de red; UDP desactivado. Hardening completo de la base: ufw, SSH reforzado, AppArmor, auditd, AIDE, rkhunter, ClamAV y fail2ban. Auditoría Lynis 94/100.
Nuevo Tuning automático de la cache en cada arranque (imaxe memcached optimize) y herramienta imaxe con 13 módulos horneados en la imagen.
Soporte activo · lu–vi 9:00–18:00 CET

¿Necesitas ayuda con esta AMI?

Te responde el mismo equipo que construye la imagen — ingenieros de verdad, sin bots ni primer nivel.

< 4 hprimera respuesta laborable
ES / ENidiomas de soporte
Incluidoen el precio de la AMI