System Manager
📘 ¿Qué es AWS Systems Manager?
AWS Systems Manager es un servicio que te permite ver y controlar tu infraestructura en AWS (y on-premise) desde una interfaz unificada. Ayuda a automatizar tareas operativas como parches, ejecución de comandos, inventario y gestión de parámetros.
Es el centro de operaciones para la administración de servidores, ya sean instancias EC2, servidores híbridos o contenedores.
🧩 Principales funcionalidades
| Función | Descripción |
|---|---|
| Session Manager | Accede a instancias EC2 (SSH-less) desde el navegador o CLI |
| Run Command | Ejecuta scripts/comandos remotos sin conectarte a las instancias |
| Patch Manager | Automatiza el parcheo de sistemas operativos |
| Parameter Store | Almacena secretos y parámetros de configuración seguros |
| Inventory | Recoge información sobre instancias, paquetes, configuración |
| State Manager | Asegura que el estado de tus instancias esté en conformidad |
| Automation | Ejecuta flujos de trabajo repetitivos o playbooks |
| OpsCenter | Consolida eventos, alarmas e incidentes |
| Change Manager | Administra cambios operativos con aprobaciones |
| Fleet Manager | Vista centralizada de recursos (usuarios, discos, procesos, etc.) |
🔐 Requisitos para usar SSM
-
Las instancias EC2 deben:
-
Tener el SSM Agent instalado y en ejecución.
-
Estar en una VPC con salida a Internet o vía VPC Endpoint.
-
Tener un IAM Role adjunto con políticas de Systems Manager como:
-
AmazonSSMManagedInstanceCore -
(Opcional)
AmazonEC2RoleforSSM(para EC2 más antiguos)
-
-
🧳 Parameter Store
| Tipo de parámetro | Detalles |
|---|---|
| String | Parámetro plano |
| StringList | Lista de strings separados por comas |
| SecureString | Parámetro cifrado con KMS (ideal para contraseñas/secretos) |
Puedes usar versiones, etiquetas, historial y acceso restringido por IAM.
🚪 Session Manager
| Ventajas | Características |
|---|---|
| ✅ Acceso sin necesidad de SSH ni claves | ✔️ Auditado vía CloudTrail |
| ✅ Sin necesidad de abrir puertos | ✔️ Puedes grabar sesiones en S3 y CloudWatch Logs |
| ✅ Basado en IAM | ✔️ Se puede usar desde consola, CLI o consola web |
🛠️ Run Command
Permite ejecutar comandos remotos en instancias administradas (Linux o Windows):
-
Puedes agrupar por:
-
Tag
-
ID de instancia
-
Nombre de recurso
-
-
Ejemplos:
-
Reiniciar servicios
-
Instalar software
-
Cambiar configuración del sistema
-
♻️ Patch Manager
Automatiza el proceso de aplicar parches de seguridad y actualizaciones:
-
Soporta: Amazon Linux, Ubuntu, Red Hat, CentOS, SUSE, Windows
-
Puedes definir:
-
Políticas de mantenimiento
-
Horarios y ciclos
-
Aprobaciones previas
-
-
Se integra con Maintenance Windows
📋 Inventory y State Manager
| Servicio | Función |
|---|---|
| Inventory | Recolecta detalles como software, procesos, red, registros |
| State Manager | Aplica y mantiene configuraciones deseadas (similar a Ansible/Puppet) |
⚙️ Automation y Change Manager
| Servicio | Descripción |
|---|---|
| Automation | Ejecuta flujos de trabajo (actualizar AMIs, reiniciar instancias, etc.) |
| Change Manager | Proceso de aprobación y control de cambios operativos en producción |
💰 Precios
| Servicio | Costo |
|---|---|
| Session Manager | Gratis |
| Run Command | Gratis |
| Patch Manager | Gratis |
| Parameter Store | Gratis hasta cierto uso; SecureString cuesta si usas KMS personalizado |
| Automation | Gratis para 100 pasos por cuenta/mes |
| Advanced Inventory | Tiene coste si habilitas recopilación avanzada |
Puedes usar la edición avanzada de SSM para más funcionalidades con precio adicional.
🔐 Seguridad y cumplimiento
-
Uso de IAM Policies para controlar el acceso granular a comandos y sesiones.
-
Auditabilidad completa vía AWS CloudTrail.
-
Logs cifrados y grabaciones de sesión en S3 o CloudWatch Logs.
-
Parámetros cifrados con AWS KMS.
-
Control de acceso por condiciones, etiquetas, tipo de parámetro, etc.
🧠 Preguntas tipo certificación
-
¿Cómo accedes a una instancia EC2 sin usar SSH?
- ✅ Session Manager
-
¿Dónde almacenas secretos como claves API de forma segura?
- ✅ Parameter Store con SecureString
-
¿Qué servicio puedes usar para automatizar la instalación de software en cientos de instancias?
- ✅ Run Command
-
¿Cuál es la diferencia entre State Manager y Automation?
-
State Manager mantiene configuraciones
-
Automation ejecuta flujos o tareas bajo demanda
-
-
¿Qué necesitas en una instancia para ser “Managed Instance”?
- SSM Agent, permisos IAM y acceso a endpoints SSM
🧪 Buenas prácticas
-
Cifra parámetros sensibles con KMS.
-
Usa etiquetas para agrupar instancias y ejecutar Run Commands en lote.
-
Programa parches automáticos con Patch Manager + Maintenance Windows.
-
Usa Session Manager en lugar de abrir el puerto 22 (SSH).
-
Graba las sesiones y logs en S3 para auditoría.
-
Aplica configuraciones obligatorias con State Manager (NTP, antivirus, users, etc.).