Configuración del agente de CloudWatch con Linux con seguridad mejorada (SELinux) - Amazon CloudWatch

Configuración del agente de CloudWatch con Linux con seguridad mejorada (SELinux)

Si su sistema tiene habilitado Linux con seguridad mejorada (SELinux), debe aplicar las políticas de seguridad adecuadas para garantizar que el agente de CloudWatch se ejecute en un dominio confinado.

Requisitos previos

Antes de poder configurar SELinux para el agente, compruebe los siguientes requisitos previos:

Cómo completar los requisitos previos para usar el agente de CloudWatch con SELinux
  1. Si aún no lo ha hecho, instale los siguientes paquetes de desarrollo de políticas de SELinux:

    sudo yum update sudo yum install -y selinux-policy-devel policycoreutils-devel rpm-build git
  2. Ejecute el siguiente comando para comprobar el estado de SELinux de su sistema:

    sestatus

    Ejemplo de salida:

    SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: permissive Mode from config file: permissive Policy MLS status: enabled Policy deny_unknown status: allowed Memory protection checking: actual (secure) Max kernel policy version: 33

    Si encuentra que SELinux está actualmente deshabilitado, haga lo siguiente:

    1. Abra el archivo SELinux introduciendo el siguiente comando:

      sudo vi /etc/selinux/config
    2. Establezca el parámetro SELINUX en permissive o enforcing. Por ejemplo:

      SELINUX=enforcing
    3. Guarde el archivo y reinicie el sistema para aplicar los cambios.

      sudo reboot
  3. Asegúrese de que el agente de CloudWatch se esté ejecutando como un servicio de systemd. Esto es necesario para usarlo dentro de un dominio SELinux confinado.

    sudo systemctl status amazon-cloudwatch-agent

    Si el agente está configurado correctamente, la salida debería indicar que está active (running) y enabled al iniciarse.

Configuración de SELinux para el agente

Después de completar los requisitos previos, puede configurar SELinux.

Configuración de SELinux para el agente de CloudWatch
  1. Clone la política de SELinux para el agente de CloudWatch introduciendo el siguiente comando:

    git clone https://github.com/aws/amazon-cloudwatch-agent-selinux.git
  2. Navegue hasta el repositorio clonado y, a continuación, actualice los permisos del script introduciendo los siguientes comandos:

    cd amazon-cloudwatch-agent-selinux chmod +x amazon_cloudwatch_agent.sh
  3. Utilice sudo para ejecutar el script de instalación de la política de SELinux introduciendo el siguiente comando. Durante la ejecución, el script le pide que introduzca y o n para permitir el reinicio automático. Este reinicio garantiza que el agente pase al dominio SELinux correcto.

    sudo ./amazon_cloudwatch_agent.sh
  4. Si el agente de CloudWatch aún no se ha reiniciado, reinícielo para asegurarse de que pasa al dominio SELinux correcto:

    sudo systemctl restart amazon-cloudwatch-agent
  5. Verifique que el agente de CloudWatch se está ejecutando en el dominio confinado el ingresar el siguiente comando:

    ps -efZ | grep amazon-cloudwatch-agent

    Si el agente está confinado correctamente, la salida debería indicar un dominio confinado a SELinux en lugar de unconfined_service_t.

    A continuación se muestra un ejemplo de salida cuando el agente está confinado correctamente.

    system_u:system_r:confined_t:s0 root 1234 1 0 12:00 ? 00:00:10 /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent

Una vez configurado SELinux, puede continuar con la configuración del agente para recopilar métricas, registros y rastros. Para obtener más información, consulte Cree o edite de forma manual el archivo de configuración del agente de CloudWatch.