12.2. Configuration d'un profil seccomp personnalisé


Vous pouvez configurer un profil seccomp personnalisé, qui vous permet de mettre à jour les filtres en fonction des exigences de l'application. Cela permet aux administrateurs de clusters d'avoir un meilleur contrôle sur la sécurité des charges de travail s'exécutant dans OpenShift Container Platform.

Les profils de sécurité Seccomp répertorient les appels système (syscalls) qu'un processus peut effectuer. Les autorisations sont plus larges que SELinux, qui limite les opérations, telles que write, à l'ensemble du système.

12.2.1. Création de profils seccomp

Vous pouvez utiliser l'objet MachineConfig pour créer des profils.

Seccomp peut restreindre les appels système (syscalls) dans un conteneur, limitant ainsi l'accès de votre application.

Conditions préalables

  • Vous avez des droits d'administrateur de cluster.
  • Vous avez créé des contraintes de contexte de sécurité (SCC) personnalisées. Pour plus d'informations, voir Additional resources.

Procédure

  • Créer l'objet MachineConfig:

    apiVersion: machineconfiguration.openshift.io/v1
    kind: MachineConfig
    metadata:
      labels:
        machineconfiguration.openshift.io/role: worker
      name: custom-seccomp
    spec:
      config:
        ignition:
          version: 3.2.0
        storage:
          files:
          - contents:
              source: data:text/plain;charset=utf-8;base64,<hash>
            filesystem: root
            mode: 0644
            path: /var/lib/kubelet/seccomp/seccomp-nostat.json

12.2.2. Configuration du profil seccomp personnalisé

Prérequis

  • Vous avez des droits d'administrateur de cluster.
  • Vous avez créé des contraintes de contexte de sécurité (SCC) personnalisées. Pour plus d'informations, voir "Ressources supplémentaires".
  • Vous avez créé un profil seccomp personnalisé.

Procédure

  1. Téléchargez votre profil seccomp personnalisé sur /var/lib/kubelet/seccomp/<custom-name>.json à l'aide de Machine Config. Voir "Ressources supplémentaires" pour les étapes détaillées.
  2. Mettre à jour le SCC personnalisé en fournissant une référence au profil seccomp personnalisé créé :

    seccompProfiles:
    - localhost/<custom-name>.json 1
    1
    Indiquez le nom de votre profil seccomp personnalisé.

12.2.3. Application du profil seccomp personnalisé à la charge de travail

Prérequis

  • L'administrateur du cluster a configuré le profil seccomp personnalisé. Pour plus de détails, voir "Setting up the custom seccomp profile".

Procédure

  • Appliquez le profil seccomp à la charge de travail en définissant le champ securityContext.seccompProfile.type comme suit :

    Exemple :

    spec:
      securityContext:
        seccompProfile:
          type: Localhost
          localhostProfile: <custom-name>.json 1

    1
    Indiquez le nom de votre profil seccomp personnalisé.

    Vous pouvez également utiliser les annotations de pods seccomp.security.alpha.kubernetes.io/pod: localhost/<custom-name>.json. Cependant, cette méthode est obsolète dans OpenShift Container Platform 4.12.

Lors du déploiement, le contrôleur d'admission valide les éléments suivants :

  • Les annotations par rapport aux CCN actuels autorisées par le rôle de l'utilisateur.
  • Le SCC, qui comprend le profil seccomp, est autorisé pour le pod.

Si le SCC est autorisé pour le pod, le kubelet exécute le pod avec le profil seccomp spécifié.

Important

Assurez-vous que le profil seccomp est déployé sur tous les nœuds de travail.

Note

Le SCC personnalisé doit avoir la priorité appropriée pour être automatiquement attribué au pod ou remplir d'autres conditions requises par le pod, telles que l'autorisation de CAP_NET_ADMIN.

Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.