Configurazione dell'agente CloudWatch con Linux con sicurezza avanzata (SELinux)
Se sul sistema è abilitato Linux con sicurezza avanzata (SELinux), è necessario applicare le policy di sicurezza appropriate per garantire che l'agente CloudWatch funzioni in un dominio confinato.
Prerequisiti
Prima di poter configurare SELinux per l'agente, verifica i seguenti prerequisiti:
Per soddisfare i prerequisiti per l'utilizzo dell'agente CloudWatch con SELinux
-
Se questa verifica non è ancora stata eseguita, installa i seguenti pacchetti di sviluppo di policy SELinux:
sudo yum update sudo yum install -y selinux-policy-devel policycoreutils-devel rpm-build git -
Esegui il comando seguente per verificare lo stato SELinux del tuo sistema:
sestatusOutput di esempio:
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: 33Se rilevi che SELinux è attualmente disabilitato, procedi come indicato di seguito:
-
Apri il file SELinux immettendo il seguente comando:
sudo vi /etc/selinux/config -
Imposta il parametro
SELINUXsupermissiveoenforcing. Per esempio:SELINUX=enforcing -
Salva il file e riavvia il sistema per applicare le modifiche.
sudo reboot
-
-
Verifica che l'agente CloudWatch sia in esecuzione come servizio
systemd. Questo è necessario per utilizzarlo all'interno di un dominio SELinux confinato.sudo systemctl status amazon-cloudwatch-agentSe l'agente è configurato correttamente, l'output dovrebbe indicare che è
active (running)eenabledall'avvio.
Configurazione di SELinux per l'agente
Dopo aver sodisfatto tutti i prerequisiti, puoi configurare SELinux.
Per configurare SELinux per l'agente CloudWatch
-
Clona la policy SELinux per l'agente CloudWatch immettendo il seguente comando:
git clone https://github.com/aws/amazon-cloudwatch-agent-selinux.git -
Passa al repository clonato e quindi aggiorna le autorizzazioni dello script immettendo i seguenti comandi:
cd amazon-cloudwatch-agent-selinux chmod +x amazon_cloudwatch_agent.sh -
Utilizza
sudoper eseguire lo script di installazione della policy SELinux immettendo il seguente comando. Durante l'esecuzione, lo script richiede di inserireyonper consentire il riavvio automatico. Questo riavvio assicura che l'agente passi al dominio SELinux corretto.sudo ./amazon_cloudwatch_agent.sh -
Se l'agente CloudWatch non è ancora stato riavviato, riavvialo per assicurarti che passi al dominio SELinux corretto:
sudo systemctl restart amazon-cloudwatch-agent -
Immetti il comando seguente per confermare che l'agente CloudWatch è in esecuzione nel dominio confinato:
ps -efZ | grep amazon-cloudwatch-agentSe l'agente è confinato correttamente, l'output dovrebbe indicare un dominio confinato con SELinux anziché
unconfined_service_t.Di seguito è riportato un esempio di output quando l'agente è confinato correttamente.
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
Dopo la configurazione di SELinux, è possibile procedere alla configurazione dell'agente per raccogliere metriche, log e tracce. Per ulteriori informazioni, consulta Creazione o modifica manuale del file di configurazione dell'agente CloudWatch.