Saltar al contenido

¿Cómo puedo configurar los servidores locales para que usen credenciales temporales con SSM Agent y el agente unificado de CloudWatch?

4 minutos de lectura
0

Tengo instalado un entorno híbrido con servidores locales que utilizan AWS Systems Manager Agent (SSM Agent) y el agente unificado de Amazon CloudWatch. Quiero configurar mis servidores locales para que usen únicamente credenciales temporales.

Solución

Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de problemas de AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.

El agente unificado de CloudWatch utiliza las credenciales de AWS Identity and Access Management (IAM) que se especifican en un archivo de configuración para supervisar y administrar el rendimiento. Sin embargo, para mejorar la seguridad, el agente puede rotar las credenciales en lugar de almacenarlas en archivos locales. SSM Agent permite que tu host local asuma un rol de IAM y el agente de CloudWatch usa esta función para publicar métricas y registros en CloudWatch.

Configuración de los servidores locales para que usen solo credenciales temporales

Sigue estos pasos:

  1. Integra el host local con AWS System Manager. Para obtener más información, consulta Administración de nodos en entornos híbridos y multinube con Systems Manager.

  2. Adjunta la política CloudWatchAgentServerPolicy al rol de servicio de IAM. Para obtener instrucciones, consulta Uso de la consola de administración de AWS para crear un rol de servicio de IAM para activaciones híbridas de Systems Manager.

  3. Instala o actualiza la AWS CLI.

  4. Ejecuta el siguiente comando get-caller-identity para comprobar que el rol de IAM está asociado a tu host local:

    aws sts get-caller-identity

    Resultado de ejemplo:

    {
        "UserId": "AROAJXQ3RVCBOTUDZ2AWM:mi-070c8d5758243078f",
        "Account": "123456789012",
        "Arn": "arn:aws:sts::444455556666:assumed-role/SSMServiceRole/mi-070c8d5758243078f"
    }
  5. Confirma que has instalado correctamente el agente de CloudWatch unificado.

  6. Modifica el archivo common-config.toml para que apunte a las credenciales que generó SSM Agent. Para obtener instrucciones, consulta Modificación de la configuración común y el perfil con nombre para el agente de CloudWatch.
    Nota: SSM Agent actualiza las credenciales cada 30 minutos.
    Para Linux, la ruta del archivo common.config.toml de ejemplo:

    /opt/aws/amazon-cloudwatch-agent/etc/common-config.toml

    Resultado de ejemplo:

    [credentials]
      shared_credential_profile = "default"
      shared_credential_file = "/root/.aws/credentials"

    Para Windows, la ruta del archivo common-config.toml de ejemplo:

    $Env:ProgramData\Amazon\AmazonCloudWatchAgent\common-config.toml

    Resultado de ejemplo:

    [credentials]  shared_credential_profile = "default"
      shared_credential_file = "C:\\Windows\\System32\\config\\systemprofile\\.aws\\credentials"
  7. Configura tu región de AWS en el archivo de credenciales shared_credential_file compartido al que hace referencia SSM Agent:

    cat /root/.aws/config
     [default]
    region = eu-west-1

    Nota: Sustituye eu-west-1 por tu región.

  8. En el caso de los hosts de Linux, configura los permisos del agente de CloudWatch para permitir que el agente de CloudWatch unificado lea el archivo de credenciales de SSM Agent. El agente unificado de CloudWatch se ejecuta como usuario raíz de forma predeterminada. Si configuras el agente de CloudWatch para que se ejecute como un usuario sin privilegios con el parámetro run_as_user, concede a este usuario acceso al archivo de credenciales. Para obtener instrucciones, consulta Ejecución del agente de CloudWatch como otro usuario.
    Importante: En el caso de los hosts de Windows, omite este paso. Ambos agentes se ejecutan como usuarios del SISTEMA.

  9. Abre Servicios en tu servidor Windows y, a continuación, selecciona Propiedades del agente de Amazon CloudWatch para configurar el inicio del servicio del agente de CloudWatch.
    En Propiedades, selecciona la lista desplegable Tipo de inicio y, a continuación, elige Automático (inicio retrasado).
    Nota: El tipo de inicio automático (inicio retrasado) inicia automáticamente el servicio del agente de CloudWatch después del servicio de SSM Agent.

Información relacionada

Descarga del agente de CloudWatch en un servidor local

¿Cómo puedo instalar y configurar el agente unificado de CloudWatch para enviar métricas y registros de mi instancia de EC2 en CloudWatch?