Configure o agente do CloudWatch com o Linux com segurança aprimorada (SELinux) - Amazon CloudWatch

Configure o agente do CloudWatch com o Linux com segurança aprimorada (SELinux)

Se seu sistema tiver o Linux com segurança aprimorada (SELinux) habilitado, você deverá aplicar as políticas de segurança apropriadas para garantir que o agente do CloudWatch seja executado em um domínio confinado.

Pré-requisitos

Antes de configurar o SELinux para o agente, verifique os seguintes pré-requisitos:

Para concluir os pré-requisitos para usar o agente do CloudWatch com o SELinux
  1. Caso você ainda não tenha feito isso, instale os seguintes pacotes de desenvolvimento de políticas do SELinux:

    sudo yum update sudo yum install -y selinux-policy-devel policycoreutils-devel rpm-build git
  2. Execute o seguinte comando para verificar o status do SELinux do sistema:

    sestatus

    Resultado do exemplo:

    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

    Se você descobrir que o SELinux está desabilitado no momento, faça o seguinte:

    1. Abra o arquivo do SELinux ao inserir o seguinte comando:

      sudo vi /etc/selinux/config
    2. Defina o parâmetro SELINUX como permissive ou enforcing. Por exemplo:

      SELINUX=enforcing
    3. Salve o arquivo e reinicie o sistema para aplicar as alterações.

      sudo reboot
  3. Certifique-se de que o agente do CloudWatch esteja em execução como um serviço systemd. Isso é necessário para uso em um domínio SELinux confinado.

    sudo systemctl status amazon-cloudwatch-agent

    Se o agente estiver configurado corretamente, a saída deverá indicar que ele está active (running) e enabled na inicialização.

Configurar o SELinux para o agente

Depois que concluir os pré-requisitos, você poderá configurar o SELinux.

Para configurar o SELinux para o agente do CloudWatch
  1. Clone a política do SELinux para o agente do CloudWatch ao inserir o seguinte comando:

    git clone https://github.com/aws/amazon-cloudwatch-agent-selinux.git
  2. Navegue até o repositório clonado e, em seguida, atualize as permissões do script ao inserir os seguintes comandos:

    cd amazon-cloudwatch-agent-selinux chmod +x amazon_cloudwatch_agent.sh
  3. Use sudo para executar o script de instalação da política do SELinux ao inserir o comando a seguir. Durante a execução, o script solicita que você insira y ou n para permitir a reinicialização automática. Essa reinicialização garante que o agente faça a transição para o domínio SELinux correto.

    sudo ./amazon_cloudwatch_agent.sh
  4. Se o agente do CloudWatch ainda não tiver sido reiniciado, reinicie-o para garantir que ele faça a transição para o domínio SELinux correto:

    sudo systemctl restart amazon-cloudwatch-agent
  5. Verifique se o agente do CloudWatch está em execução no domínio confinado ao inserir o seguinte comando:

    ps -efZ | grep amazon-cloudwatch-agent

    Se o agente estiver confinado corretamente, a saída deverá indicar um domínio SELinux confinado em vez de unconfined_service_t.

    A seguir, é mostrado um exemplo de saída quando o agente está confinado corretamente.

    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

Depois que o SELinux for configurado, você poderá continuar com a configuração do agente para coletar métricas, logs e rastreamentos. Para obter mais informações, consulte Criar ou editar manualmente o arquivo de configuração do atendente do CloudWatch.