Configurer l’agent CloudWatch avec Security-Enhanced Linux (SELinux)
Si votre système utilise Security-Enhanced Linux (SELinux), vous devez appliquer les politiques de sécurité appropriées afin que l’agent CloudWatch s’exécute dans un domaine confiné.
Prérequis
Avant de configurer SELinux pour l’agent, vérifiez que les prérequis suivants sont remplis :
Pour remplir les prérequis pour l’utilisation de l’agent CloudWatch avec SELinux
-
Si ce n’est pas déjà fait, installez les packages de développement SELinux suivants :
sudo yum update sudo yum install -y selinux-policy-devel policycoreutils-devel rpm-build git -
Exécutez la commande suivante pour vérifier l’état de SELinux sur votre système :
sestatusExemple de sortie :
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: 33Si vous constatez que SELinux est actuellement désactivé, procédez comme suit :
-
Ouvrez le fichier SELinux en saisissant la commande suivante :
sudo vi /etc/selinux/config -
Définissez le paramètre
SELINUXsurpermissiveouenforcing. Par exemple :SELINUX=enforcing -
Enregistrez le fichier et redémarrez le système pour appliquer les modifications.
sudo reboot
-
-
Assurez-vous que l’agent CloudWatch s’exécute comme un service
systemd. Cela est nécessaire pour qu’il puisse fonctionner dans un domaine SELinux confiné.sudo systemctl status amazon-cloudwatch-agentSi l’agent est correctement configuré, la sortie doit indiquer qu’il est
active (running)etenabledau démarrage.
Configuration de SELinux pour l’agent
Une fois les prérequis terminés, vous pouvez configurer SELinux.
Pour configurer SELinux pour l’agent CloudWatch
-
Cloner la politique SELinux pour l’agent CloudWatch en saisissant la commande suivante :
git clone https://github.com/aws/amazon-cloudwatch-agent-selinux.git -
Accédez au référentiel cloné, puis mettez à jour les autorisations du script en saisissant les commandes suivantes :
cd amazon-cloudwatch-agent-selinux chmod +x amazon_cloudwatch_agent.sh -
Utilisez
sudopour exécuter le script d’installation de la politique SELinux en saisissant la commande suivante. Pendant l’exécution, le script vous invite à saisiryounpour autoriser le redémarrage automatique. Ce redémarrage garantit que l’agent passe dans le domaine SELinux correct.sudo ./amazon_cloudwatch_agent.sh -
Si l’agent CloudWatch n’a pas encore été redémarré, redémarrez-le pour vous assurer qu’il passe dans le domaine SELinux correct :
sudo systemctl restart amazon-cloudwatch-agent -
Vérifiez que l’agent CloudWatch s’exécute dans le domaine confiné en saisissant la commande suivante :
ps -efZ | grep amazon-cloudwatch-agentSi l’agent est correctement confiné, la sortie doit indiquer un domaine confiné SELinux au lieu de
unconfined_service_t.Voici un exemple de sortie lorsque l’agent est correctement confiné.
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
Une fois SELinux configuré, vous pouvez procéder à la configuration de l’agent afin qu’il collecte les métriques, les journaux et les suivis. Pour de plus amples informations, consultez Création ou édition manuelle du fichier de configuration d'agent CloudWatch.