Ce projet est un laboratoire complet d'infrastructure système et sécurité, conçu pour simuler un environnement d'entreprise réaliste. L'objectif est de déployer une infrastructure hautement disponible, sécurisée "by design", et entièrement automatisée.
Il sert de démonstrateur technique pour des compétences avancées en administration système (SysAdmin), ingénierie DevOps et cybersécurité (SOC/Blue Team).
L'infrastructure est segmentée pour reproduire les contraintes réelles de sécurité (DMZ, LAN, SOC).
| Service | VLAN | Rôle |
|---|---|---|
| Utilisateurs | 10 |
Postes clients (Windows 10) |
| Serveurs | 20 |
Services internes (AD, DNS, Apps) |
| SOC / Securité | 99 |
Monitoring, SIEM (Wazuh), Audit |
- OPNsense / pfSense : Pare-feu périmétrique et segmentation réseau (VLANs).
- Windows Server 2022 : Cœur de l'identité (AD DS, DNS, DHCP, GPO).
- Debian 13 : Infrastructure Core (DNS Sec, Bastion SSH, Syslog, NTP).
- Ubuntu Server : Plateforme applicative conteneurisée (Docker, Reverse Proxy).
- Wazuh Server : SIEM centralisé pour la détection d'intrusions.
- Kali Linux / Parrot : Audit offensif (Red Team).
Le projet s'appuie sur des outils standards de l'industrie :
- CIS Benchmarks appliqués via Ansible.
- Segmentation réseau stricte par VLANs.
- Reverse Proxy (Nginx) pour l'exposition des services web.
- Bastion SSH pour l'administration sécurisée.
- Provisioning des VMs via Terraform.
- Configuration Management complet avec Ansible (Roles & Collections).
- Golden Images générées avec Packer.
- Centralisation des logs systèmes et applicatifs.
- Détection d'attaques en temps réel (Brute force, Lateral movement).
- Dashboards de visualisation Grafana.
lab-sysadmin-sec/
├── .github/ # CI/CD GitHub Actions
├── docs/ # Documentation et schemas d'architecture
│ ├── architecture/ # Diagrammes (Draw.io/Visio)
│ └── incident_response.md
├── infrastructure/ # Infrastructure as Code (IaC)
│ ├── onprem/ # Proxmox, Ansible, Packer, Firewall
│ │ ├── terraform/
│ │ ├── ansible/
│ │ ├── packer/
│ │ └── firewall/
│ └── cloud/ # Architectures de reference AWS / Azure / GCP
│ ├── aws/
│ ├── azure/
│ ├── gcp/
│ ├── policies/ # Policy-as-Code (Checkov)
│ ├── SRE.md # SLIs / SLOs / runbooks
│ └── README.md
├── platform/ # Services, conteneurs et observabilite
│ ├── cloudnative/ # Docker, Kubernetes, Helm
│ │ ├── app/ # Application ERP/CRM (Node.js + tests)
│ │ ├── k8s/ # Manifests Kubernetes
│ │ │ ├── tenancy/ # Multi-tenant : namespaces, RBAC, NetworkPolicies
│ │ │ └── secrets/ # ESO / Vault
│ │ └── helm/
│ ├── devsecops/ # Stack SRE complete (Prometheus, Grafana, Loki, etc.)
│ │ └── policies/ # Gatekeeper, Kyverno, Trivy, Checkov
│ ├── gitops/ # ArgoCD : applications, projets, overlays
│ ├── consul/ # Service discovery / mesh
│ ├── monitoring/ # Docker Compose monitoring leger (Prometheus/Grafana)
│ ├── sre/ # SLO/SLI, error budget, dashboards, runbooks
│ ├── chaos/ # Chaos Engineering experiments
│ ├── platform-engineering/ # Backstage, Crossplane
│ └── mlops/ # KServe, pipelines, drift, AIOps
├── security/ # Outils et regles de securite
│ ├── sigma-rules/ # Detection as Code
│ ├── yara-rules/ # Analyse statique malware
│ ├── ossec/ # HIDS configuration
│ ├── dfir/ # Response a incident
│ ├── redteam/ # OSINT et outils Red Team
│ ├── malware_analysis/ # Analyse statique
│ ├── grc/ # Gouvernance, risque, conformite
│ ├── audit/ # Audit CIS Benchmarks
│ └── threat-intel/ # Threat intelligence
├── scripts/ # Scripts d'automatisation (Bash/Python)
├── tests/ # Tests d'integration et validation
├── Makefile # Commandes de gestion du lab
├── .gitignore
└── README.mdCe lab permet de simuler et analyser des attaques réelles :
- Intrusion SSH : Tentative de Brute Force depuis Kali → Détection Wazuh → Ban automatique via Active Response.
- Escalade de privilèges : Modification fichiers critiques → Alerte intégrité FIM (File Integrity Monitoring).
- Mouvement Latéral : Détection de trafic suspect entre VLANs via les logs Firewall.
- Hyperviseur (VMware Workstation, Proxmox ou VirtualBox).
- Docker & Docker Compose (sur la machine de management).
- Ansible & Terraform installés.
-
Cloner le dépôt
git clone https://github.com/reyptz/lab-sysadmin-sec.git cd lab-sysadmin-sec -
Démarrer le Monitoring
docker compose -f platform/monitoring/docker-compose.yml up -d # ou via Makefile : make monitoring-up -
Provisionner l'Infra (Exemple Terraform)
cd infrastructure/onprem/terraform terraform init && terraform apply
-
Configurer les noeuds
cd ../../onprem/ansible ansible-playbook -i inventory.yml site.yml
Le dossier security/ centralise les règles, scripts et procédures de sécurité.
| Capacité | Fichier | Commande |
|---|---|---|
| Règles Sigma | security/sigma-rules/ |
sigma convert -t wazuh security/sigma-rules/linux_auth_bruteforce.yml |
| Règles YARA | security/yara-rules/ |
make security-yara SAMPLE=<path> |
| OSSEC HIDS | security/ossec/ |
sudo cp security/ossec/ossec.conf /var/ossec/etc/ |
| Audit CIS | security/audit/cis_audit.sh |
make security-audit |
| DFIR collection | security/dfir/collection.sh |
make security-dfir CASE_ID=<id> |
| Analyse statique malware | security/malware_analysis/static_analysis.sh |
make security-malware SAMPLE=<path> |
| Red Team OSINT | security/redteam/osint/ |
— |
| Port scanner | security/redteam/tools/port_scanner.py |
make security-portscan TARGET=<ip/cidr> |
| GRC | security/grc/ |
— |
Voir le mapping complet des compétences dans docs/skills_matrix.md.
| Capacité | Fichier | Commande |
|---|---|---|
| SLO / SLI / Error Budget | platform/sre/ |
promtool check rules platform/sre/prometheus-rules.yml |
| Dashboards SRE | platform/sre/grafana-dashboard.json |
kubectl create configmap grafana-dashboard-invoices --from-file=platform/sre/grafana-dashboard.json |
| Chaos Engineering | platform/chaos/experiments/ |
kubectl apply -f platform/chaos/experiments/pod-kill.yaml |
| Game Day | platform/chaos/game-day.md |
— |
| On-call / Runbooks | platform/sre/runbooks/ |
— |
| Backstage templates | platform/platform-engineering/backstage/ |
— |
| Crossplane compositions | platform/platform-engineering/crossplane/ |
kubectl apply -f platform/platform-engineering/crossplane/compositions/ |
| KServe inference | platform/mlops/kserve/ |
kubectl apply -f platform/mlops/kserve/inference-service.yaml |
| MLOps pipelines | platform/mlops/pipelines/ |
Argo Workflows |
| DevSecOps policies | platform/devsecops/policies/ |
kubectl apply -f platform/devsecops/policies/kyverno/ |
| Leadership / Toil | docs/leadership/ |
— |
Les playbooks suivants couvrent l'intégralité du programme RHCSA (Red Hat Certified System Administrator) pour l'infrastructure on-premise :
| Topic | Statut | Fichier / Commande |
|---|---|---|
| SELinux enforcing + troubleshooting | couvert | infrastructure/onprem/ansible/selinux.yml |
| SSH hardening, fail2ban, UFW | couvert | infrastructure/onprem/ansible/hardening.yml |
| NTP/Chrony, DNS BIND9, Samba | couvert | ntp.yml, bind9.yml, samba_debian.yml |
| Systemd services, unattended-upgrades | couvert | hardening.yml |
| User/group creation script | couvert | scripts/create_users.sh |
| LVM, partitioning, mount points, fstab | couvert | infrastructure/onprem/ansible/lvm_storage.yml |
| firewalld (pas UFW), nmcli networking | couvert | infrastructure/onprem/ansible/firewalld_network.yml |
| Podman containers (pas Docker) | couvert | infrastructure/onprem/ansible/podman_containers.yml |
| cron/at jobs, file permissions, ACLs | couvert | infrastructure/onprem/ansible/cron_acls.yml |
| Boot targets, reset root password, journalctl | couvert | infrastructure/onprem/ansible/boot_recovery.yml |
# LVM + fstab
make ansible-lvm
# firewalld + nmcli
make ansible-firewalld
# Podman rootless
make ansible-podman
# cron / at / ACLs
make ansible-cron-acls
# Boot targets + journalctl
make ansible-boot
# Tout le lab
make ansible-siteCe projet inclut une architecture de référence multi-cloud en Terraform, couvrant les compétences des certifications cibles :
- AWS Solutions Architect Professional : VPC multi-AZ, IAM moindre privilège, CloudWatch, S3 chiffré, RDS/Aurora, DynamoDB, Lambda/API Gateway, ECS/EKS, CloudFront, Route53, DMS, Security Hub, GuardDuty, Config, SQS/SNS/EventBridge, Kinesis, Cost Optimization, Organizations/SCPs.
- Azure Solutions Architect Expert : VNet, NSG, Azure Monitor, Managed Identities, Stockage chiffré, Entra ID RBAC, Conditional Access, Management Groups, Azure Policy, AKS, App Service, SQL Database, Cosmos DB, Data Lake, Front Door, Application Gateway, Backup/Site Recovery, Key Vault, Defender for Cloud, Sentinel, ExpressRoute, VPN Gateway, Private Link.
- GCP Professional Cloud DevOps Engineer : VPC, firewall, IAM, Cloud Monitoring, SRE, CI/CD GitHub Actions, Cloud Build, Cloud Deploy, Artifact Registry, GKE, Cloud Run, Cloud Functions, Cloud Logging avancé, Chaos Engineering, Postmortem Culture.
- RHCSA : cloud-init hardening Linux, fail2ban, audit, SSH sécurisé.
Voir le dossier infrastructure/cloud/ et le infrastructure/cloud/README.md pour les instructions détaillées.
Le pipeline .github/workflows/terraform-cloud.yml valide automatiquement le format Terraform, lance terraform validate, exécute un scan de sécurité Checkov, et génère un plan pour chaque cloud sur les pull requests.
Cette partie du lab applique les pratiques enterprise pour une application critique dans un contexte bancaire/fintech.
| Capacité | Implémentation |
|---|---|
| CI/CD multi-stages | .github/workflows/erp-cicd.yml + .gitlab-ci.yml (lint, tests, build, scan Trivy, push GHCR/GitLab Registry) |
| GitOps | platform/gitops/argocd/ — applications ArgoCD, projets, overlays dev/staging/prod |
| Blue-Green / Canary | platform/gitops/argocd/apps/erp/overlays/prod-canary/ avec Argo Rollouts |
| Multi-tenant Kubernetes | platform/cloudnative/k8s/tenancy/ (namespaces, RBAC, NetworkPolicies) |
| Secrets management | platform/cloudnative/k8s/secrets/ (External Secrets Operator + HashiCorp Vault) |
| SRE / SLI / SLO | infrastructure/cloud/SRE.md avec error budgets et PromQL |
# Tests locaux
cd platform/cloudnative/app
npm ci
npm test
# Build image
docker build -t erp-app:latest .
# Déployer via ArgoCD
kubectl apply -f platform/gitops/argocd/projects/erp.yaml
kubectl apply -f platform/gitops/argocd/apps/erp/application.yamlVoir la roadmap complète dans docs/roadmap.md.
Projet réalisé dans le cadre d'une montée en compétence DevSecOps & SysAdmin.
Dernière mise à jour : Juin 2026