Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Le petit chaperon rouge pratique enfin le “Zero Trust” (Hashicorp Version)

WeScale
February 01, 2023

Le petit chaperon rouge pratique enfin le “Zero Trust” (Hashicorp Version)

Au travers du conte, pour enfant, je revisite le petit chaperon rouge: notre petite goldie rouge va voir sa mère-grand dans le village de captain kube !!!

Et si notre petite application se décidait enfin à pratiquer le **Zero Trust** quand elle va voir sa mère-grand et que le village de captain Kube était aussi sécurisé !!!

Nous aborderons les risques encourues lors d'un déploiement d'une application Kubernetes et d'un environnement non sécurisé.

Plan avec les outils Hashicorp:
- Provision de l'infrastructure avec Terraform
- Accès au cluster avec Boundary (authentification et droits & rôles)
- Déploiement & application
- Packaging d’image avec Packer
- Service Mesh avec Consul
- Gestion des secrets avec Vault

Par Jérôme Masson

WeScale

February 01, 2023
Tweet

More Decks by WeScale

Other Decks in Technology

Transcript

  1. — Sommaire Notre environnement 01 Le petit chaperon rouge pratique

    enfin le “Zero Trust” 00 02 Il était une fois… 03 Tech 04 La morale
  2. — 2015 +65 Création de WeScale Passionné(e)s de Cloud PARIS

    NANTES FULL REMOTE ON RECRUTE WE ARE WESCALE Présentation 00
  3. Storyteller - Kubernetes’ City Hunter Phippy & friends (CNCF) Captain

    Kube Goldie Main Characters: Goldies Phippy & friends (CNCF)
  4. — Infrastructure & Environnement Le petit chaperon rouge pratique enfin

    le “Zero Trust” 01 Infrastructure - Un / plusieurs cluster Kubernetes Apps - Installation avec Helm - Configuration & mise en place des tests - App Go - basée sur podtato-head : - manifest.yaml / server.go
  5. — 01 Objectifs Concept principal du “Zero Trust”: "Ne jamais

    croire, Toujours vérifier” D’un Kubernetes Vanilla ou en mode service managé - Identifier les points de faiblesse - Appréhender les contres-mesures - Démystifier la simplicité de Kubernetes - Démystifier la complexité des outillages Le petit chaperon rouge pratique enfin le “Zero Trust”
  6. — Il était une fois 02 Dans un village lointain…

    Vit une petite application, elle est la plus mignonne de son village. Sa mère-grand et surtout sa maman en sont folles. Tout le monde l’appelait le petit chaperon rouge ou “Goldie Red”
  7. — Il était une fois 02 Dans un village lointain…

    Un jour sa maman lui dit : « Va voir comme se porte ta mère-grand, car on m'a dit qu'elle était malade, porte-lui une galette et ce petit pot de beurre. Ne parle surtout à personne et reviens avant la tombée de la nuit !!! »
  8. — Il était une fois 02 Le village Kubernetes, Ta

    mère-grand vit dans le village Kubernetes, « C'était un cluster où il faisait bon vivre … »
  9. — Il était une fois 02 La rencontre, Sur le

    chemin, notre petite application croise le loup solitaire, et il lui demande où elle va : « Je vais voir ma mère-grand, et lui porter une galette avec un petit pot de beurre que ma mère lui envoie. »
  10. — Il était une fois 02 La rencontre, Mais où

    vit-elle : « Dans le village Kubernetes tout là-bas, derrière le endpoint: … » Montre moi ta carte, pour que je puisse te guider : « Tiens voilà mon kubeconfig » Tu peux passer par là, mais moi je suis pressé. Au revoir et à bientôt !!!
  11. — Il était une fois 02 Le Loup solitaire était

    bien un méchant loup, Il se presse d’aller voir la mère-grand, il toque à la porte et imite la voix du petit chaperon rouge : Mère-grand lui répond : « Tire la chevillette et la bobinette cherra! » Le loup entre, la dévore et prend sa place.
  12. — Il était une fois 02 Pendant ce temps là,

    Insouciante, la petite application prend son temps, elle regarde les fleurs et discute avec les animaux … Jusqu’au moment où …
  13. — Il était une fois 02 Goldie rouge toque à

    la porte, « Tire la chevillette et la bobinette cherra ! » - s'écria le loup Le petit chaperon rouge entre. Il voit sa mère-grand et dit : « Que vous avez de grands yeux !? » « C’est pour mieux te voir mon enfant. » - répond le loup
  14. — Il était une fois 02 Goldie rouge continue ses

    questions, Le petit chaperon rouge dit ensuite : « Que vous avez de grandes oreilles !? » « C’est pour mieux t’entendre mon enfant. » - répond le loup
  15. — Il était une fois 02 « C’est pour mieux

    te MANGER !!! » Le loup dévore le petit chaperon rouge et s’endort le ventre bien rond… Jusqu’au moment où … Goldie rouge pose une dernière question: « Que vous avez de grandes dents !? »
  16. — 03 Objectifs - “Zero Trust” Concept principal du “Zero

    Trust”: "Ne jamais croire, Toujours vérifier” D’un Kubernetes Vanilla ou en mode service managé - Identifier les points de faiblesse - Appréhender les contres-mesures - Démystifier la simplicité de Kubernetes - Démystifier la complexité des outillages Le petit chaperon rouge pratique enfin le “Zero Trust”
  17. — Zero Trust 03 Identité Concept principal du Zero Trust

    1. Gestion de l’identité et l’accès au cluster Ne jamais croire, Toujours vérifier
  18. — Zero Trust 03 Conformité Zero Trust in cluster 2.

    Contrôle de flux avec Consul 3. Sécuriser vos secrets avec Vault ++ Contrôle de conformité avec Sentinel (Enterprise)
  19. — Tech 03 Terraform Terraform & Zero Trust Fonctionnalités -

    Standardisation - Connection avec Vault - Détection de drift
  20. — Tech 03 Terraform module "eks_cluster" { source = "terraform-aws-modules/eks/aws"

    version = "18.30.2" ... cluster_endpoint_private_access = true cluster_endpoint_public_access = true }
  21. — Tech 03 Packer Packer & Zero Trust Fonctionnalités -

    Léger - Multi-provider - Intégration Vault - Provisionner
  22. — Tech 03 Packer source "docker" "myimg" { image =

    "sphinxgaia/ansible:ubuntu14.04" export_path = "packer_example" run_command = ["-d", "-i", "-t", "--entrypoint=/bin/bash", "{{.Image}}"] } build { sources = [ "source.docker.myimg" ] provisioner "ansible-local" { playbook_file = "./playbook.yml" extra_arguments = ["--extra-vars", \"pizza_toppings=${var.topping}\""] } }
  23. — Tech 03 Boundary Boundary & Zero Trust Fonctionnalités -

    Authentification utilisateur - Intégration avec Vault - Coupure des connexions - Tracking des connexions
  24. — Tech 03 Consul Consul - Service Mesh & Zero

    Trust Fonctionnalités - Sidecar => mTLS - Observabilité - Load-Balancers
  25. — Tech 03 Vault Vault & Zero Trust Gestion de

    Secrets & Identités - PKI - Secret dynamique - Intégration Kubernetes: Vault CSI / Authentification
  26. — Tech 03 Vault manifest.yaml volumeMounts: - name: secrets-store-inline mountPath:

    "/secret" readOnly: true secret.yaml spec: parameters: objects: | - objectName: "version" secretPath: "littlebear/data/chair?version=2"
  27. — La morale Ecosystème de Kubernetes 04 Network Security /

    Access / Encryption Cloud Auth / Standard / Network policies Cluster Scan / Least Privileges / Signing / Runtime Container Scan / Full TLS / Least Privilege Code Authentication Service Mesh / mTLS Boundary / Consul Network policies CSI Network & Secrets Network firewall Calico / Vault CSI / Neuvector Container Scanning Runtime Scanning Trivy Code & Dependencies scanning mTLS Certificate generator Trivy / Consul / Vault PKI
  28. Merci de votre attention. Contact Jérôme Masson Cloud Builder &

    DevOps Github/Gitlab: Sphinxgaia @sphinxgaiaone