DevOpsFacile
AccueilParcours de formationCertificationsModulesCheat SheetÀ Propos
DevOpsFacile

Une plateforme d'apprentissage complète pour maîtriser les pratiques DevOps modernes, du débutant à l'expert.

contact@devopsfacile.fr

Formation

  • Parcours de formation
  • Modules

Informations

  • À Propos
  • Conditions d'utilisation
  • Confidentialité
  • Mentions légales

© 2026 DevOps Facile. Tous droits réservés.

Fait avec pour la communauté DevOps

ModulesSécurité DevOps - Débutant

Module

Comprendre les bases de la sécurité pour les développeurs et DevOps : secrets, dépendances et bonnes pratiques essentielles.

  • 1h30
  • Débutant
  • 4 exercices
Voir les exercices

Formation 100 % Linux

Tous les modules nécessitent un environnement Linux. Si vous êtes sur Windows, installez d'abord WSL (Windows Subsystem for Linux) avant de continuer.

Sécurité DevOps - Débutant

🎯 Objectifs

  • Comprendre pourquoi la sécurité concerne chaque développeur
  • Éviter de commettre des secrets dans Git
  • Auditer les dépendances de son projet
  • Appliquer les bases de la sécurité sur GitHub

📋 Prérequis

  • Utiliser Git au quotidien (commits, push)
  • Avoir un projet avec des dépendances (npm, pip…)
  • Avoir un compte GitHub

🤔 Pourquoi la sécurité te concerne ?

Tu te dis peut-être : "Je suis développeur, pas expert en cybersécurité."

Pourtant, la majorité des failles de sécurité viennent de petites erreurs quotidiennes :

  • Un mot de passe oublié dans un fichier commité
  • Une dépendance non mise à jour depuis 2 ans
  • Un dépôt GitHub public qui contient des clés API

💡 La sécurité n'est pas un domaine réservé aux experts. Ce sont les bons réflexes du quotidien qui protègent vraiment.


🏦 La Triade CIA : les 3 piliers de la sécurité

L'analogie : ta maison

Imagine que ton application est une maison :

PilierDéfinitionEn pratique
ConfidentialitéSeules les personnes autorisées entrentTon mot de passe Wi-Fi est secret
IntégritéLes données ne sont pas modifiées à ton insuLa serrure ne peut pas être crochetée
DisponibilitéLe service reste accessibleLa porte s'ouvre quand tu en as besoin

💡 À retenir : une bonne sécurité protège les données (confidentialité), leur exactitude (intégrité), et l'accès au service (disponibilité).


🔐 Ne jamais commettre un secret dans Git

Le problème

Un secret, c'est tout ce qui donne un accès : mot de passe, clé API, token, certificat.

Git garde une mémoire permanente de tout ce que tu commites. Même si tu supprimes le fichier ensuite, le secret reste dans l'historique - accessible à quiconque clone le dépôt.

L'analogie

Imagine que tu écris ton code PIN de carte bancaire sur un Post-it, tu le colles sur ton bureau ouvert, tu l'enlèves une heure après. Trop tard : quelqu'un a pu le photographier.

C'est exactement ce qui se passe quand tu commites une clé API sur GitHub, même brièvement.

La solution : le fichier .env

bash
# .env  (NE JAMAIS commiter ce fichier)
DATABASE_URL=postgres://user:motdepasse@localhost:5432/mabase
API_KEY=sk_live_abc123...
JWT_SECRET=super-secret-aleatoire
bash
# .gitignore  (commiter ce fichier - il dit à Git quoi ignorer)
.env
.env.local
.env.*.local
*.key
*.pem
secrets/
bash
# .env.example  (commiter ce fichier - un modèle sans valeurs réelles)
DATABASE_URL=postgres://user:PASSWORD@localhost:5432/DB_NAME
API_KEY=your_api_key_here
JWT_SECRET=your_jwt_secret_here

💡 La règle d'or : un .env.example dans Git, un .env hors de Git.

Si tu as déjà commité un secret

  1. Change le secret immédiatement - révoque la clé API, change le mot de passe
  2. Purge l'historique Git si nécessaire (complexe - mieux vaut changer le secret)
  3. Utilise gitleaks pour détecter d'autres fuites
bash
# Installer gitleaks
brew install gitleaks  # macOS
# ou télécharger depuis https://github.com/gitleaks/gitleaks/releases

# Scanner ton dépôt actuel
gitleaks detect --source=. --verbose

📦 Auditer ses dépendances

Pourquoi c'est important ?

Ton projet dépend de dizaines, voire centaines de bibliothèques écrites par d'autres. Certaines ont des failles de sécurité connues (appelées CVE).

L'analogie

C'est comme avoir des produits alimentaires dans ton frigo. Certains sont peut-être périmés depuis des mois. npm audit, c'est la date de péremption affichée sur chaque produit.

Pour un projet Node.js

bash
# Voir toutes les vulnérabilités
npm audit

# Corriger automatiquement ce qui peut l'être
npm audit fix

# Corriger aussi les changements de version majeure (attention aux breaking changes)
npm audit fix --force

Exemple de sortie :

found 3 vulnerabilities (1 moderate, 2 high)
  Run `npm audit fix` to fix them, or `npm audit` for details.

Pour un projet Python

bash
# Installer pip-audit
pip install pip-audit

# Lancer l'audit
pip-audit

Pour un projet Golang

bash
# Installer govulncheck
go install golang.org/x/vuln/cmd/govulncheck@latest

# Lancer l'audit
govulncheck ./...

💡 À retenir : lance npm audit (ou son équivalent) régulièrement, et avant chaque mise en production.


🔒 Les bases de la sécurité sur GitHub

Activer l'authentification à deux facteurs (2FA)

La 2FA ajoute une deuxième couche de vérification à ta connexion. Même si ton mot de passe fuite, un attaquant ne peut pas se connecter sans ton téléphone.

Activer la 2FA :

GitHub → Settings → Password and authentication → Two-factor authentication

⚠️ Sans 2FA, un mot de passe volé suffit à compromettre tous tes projets.

Protection de la branche principale

La branch protection empêche de pousser directement sur main sans revue de code.

Activer sur GitHub :

Repository → Settings → Branches → Add branch protection rule

Règles recommandées pour débuter :

  • ✅ Require a pull request before merging
  • ✅ Require status checks to pass
  • ✅ Do not allow bypassing the above settings

Activer les alertes de sécurité Dependabot

GitHub peut t'envoyer des alertes automatiques quand une de tes dépendances a une faille connue.

Activer :

Repository → Settings → Security → Dependabot alerts → Enable

💡 C'est gratuit et automatique - active-le sur tous tes dépôts.


🌐 HTTPS : chiffrer les communications

Pourquoi ?

Sans HTTPS, les données qui transitent entre ton navigateur et un serveur sont lisibles par n'importe qui sur le même réseau Wi-Fi.

L'analogie

HTTP, c'est envoyer une carte postale : tout le monde peut lire le message. HTTPS, c'est envoyer une lettre dans une enveloppe scellée.

En pratique

  • Toujours utiliser HTTPS pour les APIs que tu consommes
  • Forcer HTTPS sur les services que tu déploies
  • Ne jamais envoyer de secrets en HTTP (formulaires, headers d'authentification)
bash
# Vérifier qu'une URL utilise bien HTTPS
curl -I https://ton-api.com/endpoint
# Chercher "HTTP/2 200" ou "HTTP/1.1 200" dans la réponse

📊 Récapitulatif

Bonne pratiqueOutil / méthode
Protéger les secrets.env + .gitignore + .env.example
Détecter les secrets commitésgitleaks
Auditer les dépendancesnpm audit, pip-audit, govulncheck
Sécuriser son compte GitHub2FA activé
Protéger la branche principaleBranch protection rules
Alertes sur dépendancesDependabot alerts
Chiffrer les communicationsHTTPS partout

✅ Checklist Sécurité Débutant

  • Fichier .gitignore avec .env
  • Fichier .env.example commité (sans valeurs réelles)
  • Aucun secret dans l'historique Git (gitleaks detect)
  • npm audit (ou équivalent) sans vulnérabilité haute
  • 2FA activé sur GitHub
  • Dependabot alerts activé
  • Branch protection sur main
  • HTTPS partout

🚀 Prochaines Étapes

Tu maîtrises maintenant les réflexes de base. L'étape suivante : intégrer la sécurité directement dans ton pipeline CI/CD.

  • 👉 Sécurité DevOps - Intermédiaire - Scanning automatique, SAST, Trivy
  • 👉 CI/CD - Débutant - Mettre en place son premier pipeline

Exercices Pratiques

4 exercices pour mettre en pratique

01

01 - Protéger ses secrets avec .gitignore et .env

20 minutesDébutant
02

02 - Détecter des secrets exposés avec Gitleaks

25 minutesDébutant
03

03 - Auditer les dépendances avec npm audit et pip audit

20 minutesDébutant
04

04 - Capstone : Sécuriser un projet de A à Z

45 minutesIntermédiaire
Retour aux modules

Sur cette page

  • 🎯 Objectifs
  • 📋 Prérequis
  • 🤔 Pourquoi la sécurité te concerne ?
  • 🏦 La Triade CIA : les 3 piliers de la sécurité
  • L'analogie : ta maison
  • 🔐 Ne jamais commettre un secret dans Git
  • Le problème
  • L'analogie
  • La solution : le fichier .env
  • Si tu as déjà commité un secret
  • 📦 Auditer ses dépendances
  • Pourquoi c'est important ?
  • L'analogie
  • Pour un projet Node.js
  • Pour un projet Python
  • Pour un projet Golang
  • 🔒 Les bases de la sécurité sur GitHub
  • Activer l'authentification à deux facteurs (2FA)
  • Protection de la branche principale
  • Activer les alertes de sécurité Dependabot
  • 🌐 HTTPS : chiffrer les communications
  • Pourquoi ?
  • L'analogie
  • En pratique
  • 📊 Récapitulatif
  • ✅ Checklist Sécurité Débutant
  • 🚀 Prochaines Étapes