Helm Chart para implantar o Twistlock Defender.
Este gráfico pode funcionar com o operador de segredos externos aprovado pela CNCF para gerenciar seus segredos internos.
OBSERVAÇÃO
Este gráfico foi testado usando AWS Secrets Manager e Azure Key Vault como sistemas de gerenciamento de segredos.
Para obter os valores necessários para que este Helm Chart funcione, baixe o Helm Chart do Prisma Cloud Compute Console acessando Gerenciar > Defensores > Implantação manual e selecione os seguintes parâmetros:
Método de implantação: orquestrador
Tipo de orquestrador: Kubernetes ou Openshift
Todas as outras configurações básicas e avançadas variam dependendo do seu ambiente.
Depois de escolher as opções apropriadas para você, faça download do gráfico do Helm:
O arquivo baixado será chamado twistlock-defender-helm.tar.gz . Dentro desta pasta compactada você precisa extrair o arquivovalues.yaml que servirá de referência para a implantação.
Para armazenar os segredos relacionados à implantação do defensor em um Sistema de Gerenciamento de Segredos, use o seguinte processo:
Instale o operador de segredos externos com os seguintes comandos
helm repo adicionar segredos externos https://charts.external-secrets.io helm instalar segredos externos segredos externos/segredos externos -n segredos externos --create-namespace
Para obter mais detalhes sobre a instalação, siga o guia de primeiros passos.
Siga o guia correspondente para instalar um SecretStore ou ClusterSecretStore para que o Operador de Segredos Externos possa recuperar os segredos. Este gráfico usa por padrão ClusterSecretStore, pois não há anexo ao namespace onde o defensor está sendo implantado. Para alterá-lo para SecretStore, defina o seguinte valor em seu arquivo values.yaml:
loja_secreta: tipo: SecretStore
Crie o segredo com o seguinte formato JSON:
{"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":"admission_key","INSTALL_BUNDLE":"install_bundle","WS_ADDRESS":"ws_address","REGISTRY_USER":"registry.user","REGISTRY_PASS":"registry.password","REGISTRY" :"registry.nome"}
Você deve substituir os valores pelos correspondentes à implantação do seu defensor.
Para o Azure Key Vault, você precisa definir o tipo de conteúdo como application/json .
Os valores de SERVICE_PARAMETER até WS_ADDRESS são valores que podem ser encontrados no arquivo values.yaml do gráfico helm baixado anteriormente do Prisma Cloud.
Se estiver usando o Registro Público do Defender, os valores para configuração do registro deverão ser os seguintes:
REGISTRO: Registry.twistlock.com
REGISTRY_USER: Qualquer um de sua escolha
REGISTRY_PASS: o token de acesso usado para baixar a imagem
Para obter mais detalhes sobre como fazer download das imagens de contêiner, siga a documentação do Prisma Cloud Container Images.
A configuração padrão é a seguinte:
collect_pod_labels: true # Permite que a coleção de rótulos de Namespace e Deployment faça parte dos rótulos detectados em Prismamonitor_service_accounts: true # Permite o monitoramento das contas de serviço k8sunique_hostname: true # Assings unique hostnameshost_custom_compliance: false # Desabilita a conformidade personalizada dos hosts
Todas as outras configurações padrão podem ser encontradas no arquivo values.yaml.
Aqui está uma amostra recomendada mais simples de values.yaml sem segredos externos:
image_name: 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>
O valor do token de acesso pode ser obtido no nome da imagem quando baixado o gráfico do leme. Deve ser o valor próximo a tw_ .
Você também pode substituir o nome da imagem e os detalhes do registro se estiver usando um registro privado.
Aqui está um exemplo recomendado mais simples de values.yaml com segredos externos:
nome_da_imagem: Registry.twistlock.com/twistlock/defender:defender_<VERSION>secret_store:name: <SEU_SECRETSTORE_NAME>remote_key: <SEU_SECRET_NAME>
Para implantações no GKE Autopilot, é necessário definir o seguinte valor:
gke_autopilot_annotation: 'autopilot.gke.io/no-connect: "true"'
Para implantações no OpenShift, defina os seguintes valores:
openshift: trueselinux_header: 'seLinuxOptions:'selinux_options: 'tipo: spc_t'
Para incluir o controlador de admissão você deve incluir os seguintes valores:
defender_ca_cert: <YOUR_DEFENDER_CA>admission_path: <YOUR_ADMISSION_PATH>
Esses valores podem ser obtidos no Prisma Compute Console acessando Gerenciar > Defensores > Configurações
Para instalar a versão mais recente execute o seguinte comando:
atualização do leme --install -n twistlock -f valores.yaml --create-namespace --repo https://paloaltonetworks.github.io/twistlock-defender-helm twistlock-defender twistlock-defender
Para instalar uma versão específica execute o seguinte comando:
atualização do leme --install -n twistlock -f valores.yaml --create-namespace --repo https://paloaltonetworks.github.io/twistlock-defender-helm --version <VERSÃO> twistlock-defender twistlock-defender