Helm Chart pour déployer Twistlock Defender.
Cette charte peut fonctionner avec l'opérateur de secrets externes agréé par la CNCF pour gérer ses secrets internes.
NOTE
Ce graphique a été testé à l'aide d'AWS Secrets Manager et d'Azure Key Vault comme systèmes de gestion des secrets.
Pour obtenir les valeurs requises pour que ce Helm Chart fonctionne, téléchargez le Helm Chart depuis Prisma Cloud Compute Console en accédant à Gérer > Defenders > Déploiement manuel et sélectionnez les paramètres suivants :
Méthode de déploiement : Orchestrator
Type d'orchestrateur : Kubernetes ou Openshift
Tous les autres paramètres de base et avancés varient en fonction de votre environnement.
Une fois choisi les options qui vous conviennent, téléchargez le tableau de barre :
Le fichier téléchargé s'appellera twistlock-defender-helm.tar.gz . À l'intérieur de ce dossier compressé, vous devez extraire le fichier values.yaml qui servira de référence pour le déploiement.
Pour stocker les secrets liés au déploiement du défenseur dans un système de gestion des secrets, utilisez le processus suivant :
Installez l'opérateur de secrets externes avec les commandes suivantes
helm repo ajouter des secrets externes https://charts.external-secrets.io helm install secrets-externes secrets-externes/secrets-externes -n secrets-externes --create-namespace
Pour plus de détails concernant l’installation, suivez le guide de démarrage.
Suivez le guide correspondant pour installer un SecretStore ou un ClusterSecretStore afin que l'opérateur de secrets externes puisse récupérer les secrets. Ce graphique utilise par défaut ClusterSecretStore puisqu'il n'y a aucune pièce jointe à l'espace de noms où le défenseur est déployé. Pour le changer en SecretStore, définissez la valeur suivante dans votre fichier values.yaml :
magasin_secret : genre : SecretStore
Créez le secret avec le format JSON suivant :
{"SERVICE_PARAMETER": "service_parameter", "DEFENDER_CA": "defender_ca_cert", "DEFENDER_CLIENT_CERT": "defender_client_cert", "DEFENDER_CLIENT_KEY": "defender_client_key", "ADMISSION_CERT": "admission_ cert", "ADMISSION_KEY": clé_d'admission, "INSTALL_BUNDLE": "install_bundle", "WS_ADDRESS": "ws_address", "REGISTRY_USER": "registry.user", "REGISTRY_PASS": "registry.password", "REGISTRY" :"registre.nom"}
Vous devez remplacer les valeurs par celles correspondant à votre déploiement de défenseur.
Pour Azure Key Vault, vous devez définir le type de contenu sur application/json .
Les valeurs de SERVICE_PARAMETER jusqu'à WS_ADDRESS sont des valeurs qui peuvent être trouvées dans le fichier values.yaml du graphique de barre téléchargé précédemment depuis Prisma Cloud.
Si vous utilisez le registre public Defender, les valeurs de configuration du registre doivent être les suivantes :
REGISTRE : registre.twistlock.com
REGISTRY_USER : n'importe lequel de votre choix
REGISTRY_PASS : Le jeton d'accès utilisé pour télécharger l'image
Pour plus de détails sur la façon de télécharger les images de conteneur, suivez la documentation Prisma Cloud Container Images.
La configuration par défaut est la suivante :
collect_pod_labels: true # Permet à la collection d'étiquettes d'espace de noms et de déploiement de faire partie des étiquettes détectées dans Prismamonitor_service_accounts: true # Permet la surveillance des comptes de service k8sunique_hostname: true # Assinge des noms d'hôte uniqueshost_custom_compliance: false # Désactive la conformité personnalisée des hôtes
Tous les autres paramètres par défaut peuvent être trouvés dans le fichier values.yaml.
Voici un exemple recommandé le plus simple du fichier values.yaml sans secrets externes :
nom_image : Registry.twistlock.com/twistlock/defender:defender_<VERSION>registry:name : Registry.twistlock.comusername : twistlockpassword : <ACCESS_TOKEN># Secretsservice_PARAMETER : <YOUR_SERVICE_PARAMETER>defender_ca_cert : <YOUR_DEFENDER_CA>defender_client_cert : <YOUR_DEFENDER_CERT>defender_client_key : <YOUR_DEFENDER_KEY>admission_cert : <YOUR_ADMISSION_CERT>admission_key : <YOUR_ADMISSION_KEY> install_bundle : <YOUR_INSTALL_BUNDLE>ws_address : <YOUR_WS_ADDRESS>
La valeur du jeton d'accès peut être obtenue dans le nom de l'image lors du téléchargement du graphique de barre. Ce devrait être la valeur à côté de tw_ .
Vous pouvez également remplacer le nom de l'image et les détails du registre si vous utilisez un registre privé.
Voici un exemple recommandé le plus simple du fichier values.yaml avec des secrets externes :
nom_image : registre.twistlock.com/twistlock/defender:defender_<VERSION>secret_store:name : <VOTRE_NOM_SECRETSTORE>clé_remote : <VOTRE_NOM_SECRET>
Pour les déploiements dans GKE Autopilot, vous devez définir la valeur suivante :
gke_autopilot_annotation : 'autopilot.gke.io/no-connect : "true"'
Pour les déploiements dans OpenShift, définissez les valeurs suivantes :
openshift : trueselinux_header : 'seLinuxOptions :'selinux_options : 'type : spc_t'
Pour inclure le contrôleur d'admission, vous devez inclure les valeurs suivantes :
Defender_ca_cert : <YOUR_DEFENDER_CA>admission_path : <YOUR_ADMISSION_PATH>
Ces valeurs peuvent être obtenues à partir de Prisma Compute Console en accédant à Gérer > Defenders > Paramètres
Pour installer la dernière version, exécutez la commande suivante :
mise à niveau de helm --install -n twistlock -f valeurs.yaml --create-namespace --repo https://paloaltonetworks.github.io/twistlock-defender-helm twistlock-defender twistlock-defender
Pour installer une version spécifique, exécutez la commande suivante :
helm update --install -n twistlock -f values.yaml --create-namespace --repo https://paloaltonetworks.github.io/twistlock-defender-helm --version <VERSION> twistlock-defender twistlock-defender