8.9 KiB
🖥️ Homelab – Infrastructure de virtualisation & laboratoire cybersécurité
Infrastructure auto-hébergée basée sur Proxmox VE, conçue comme un environnement professionnel de virtualisation, d'expérimentation réseau et de pratique cybersécurité.
📋 Vue d'ensemble
Ce projet est un homelab personnel tournant 24/7 sur un mini-PC basse consommation (GMKtec K12, 32 Go DDR5). Il repose sur Proxmox VE et combine conteneurs LXC et machines virtuelles pour simuler une infrastructure d'entreprise réaliste.
Usages principaux :
- Hébergement de services permanents (VPN, accès distant)
- Simulation d'architectures réseau sécurisées et segmentées
- Déploiement rapide d'environnements de test (CTF, pentesting, AD)
- Apprentissage et mise en pratique en administration système & cybersécurité
🧱 Architecture générale
┌─────────────────────────────────┐
│ GMKtec K12 │
│ Proxmox VE Host │
│ 32 Go DDR5 / NVMe │
└────────────┬────────────────────┘
│
┌──────────────────────┼──────────────────────┐
│ │ │
┌────────▼────────┐ ┌────────▼────────┐ ┌────────▼────────┐
│ Services LXC │ │ Réseau / FW │ │ VMs de test │
│ │ │ │ │ │
│ • WireGuard VPN │ │ • OPNsense │ │ • Windows / AD │
│ • Guacamole │ │ (routeur FW │ │ • Ubuntu │
│ │ │ virtualisé) │ │ • Tiny11 │
└─────────────────┘ └─────────────────┘ │ • CTF / Pentest │
└─────────────────┘
🔧 Infrastructure matérielle
| Composant | Détail |
|---|---|
| Machine | GMKtec K12 |
| RAM | 32 Go DDR5 (2 × 16 Go) |
| Stockage | SSD NVMe |
| Hyperviseur | Proxmox VE |
| Fonctionnement | 24/7, basse consommation |
⚙️ Déploiement – Proxmox VE Helper Scripts
Les conteneurs LXC et la VM OPNsense ont été déployés via Proxmox VE Helper Scripts, une collection community-driven de scripts automatisés pour Proxmox.
Commandes de déploiement
🔐 WireGuard (LXC)
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/wireguard.sh)"
🖥️ Apache Guacamole (LXC)
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/apache-guacamole.sh)"
🌐 OPNsense (VM)
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/vm/opnsense-vm.sh)"
Ces scripts automatisent la création du conteneur/VM, l'installation et la configuration de base. La configuration réseau, les règles firewall et les paramètres de sécurité ont ensuite été appliqués manuellement.
📦 Écosystème virtualisé
Conteneurs LXC – Services permanents
🔐 WireGuard VPN
Serveur VPN personnel permettant l'administration sécurisée du homelab depuis l'extérieur sans exposition publique directe.
- Accès chiffré aux services internes via tunnel privé
- Aucun port d'administration exposé sur le WAN
- Point d'entrée unique pour la gestion à distance
🖥️ Apache Guacamole
Passerelle d'accès distant web (RDP / SSH / VNC) accessible depuis navigateur.
- Centralisation des accès d'administration
- Suppression des clients lourds (RDP natif, PuTTY, etc.)
- Gestion des environnements de TP et des VMs de test
Machines virtuelles
🌐 OPNsense – Pare-feu virtualisé
Routeur et firewall virtualisé simulant une infrastructure réseau d'entreprise.
- Filtrage réseau et règles firewall
- Segmentation logique entre réseau Freebox (192.168.1.x/24) et réseau interne (10.1.1.x/24)
- NAT sortant pour les VMs internes, journalisation réseau et contrôle des flux
🪟 Windows / Windows Server
Environnements Windows pour la pratique système et Active Directory.
- Déploiement d'Active Directory, GPO, gestion des utilisateurs
- Analyse de malware en environnement isolé (Tiny11)
- Simulations d'infrastructure d'entreprise
- Tests d'authentification et de politiques de sécurité
🐧 Ubuntu Server / Desktop
Environnements Linux polyvalents pour le développement et l'administration.
- Déploiement de services, Docker & conteneurisation
- Scripts d'automatisation et tests réseau
- Travaux pratiques systèmes & cybersécurité
🚩 VMs CTF & Pentest
Machines éphémères créées à la demande pour l'entraînement offensif et défensif.
- Pentest, analyse réseau, escalade de privilèges, vulnérabilités web
- Restauration rapide via snapshots Proxmox après expérimentation
- Isolation totale du réseau de production
🔐 Sécurité & cloisonnement
Principes appliqués
| Principe | Mise en œuvre |
|---|---|
| Exposition minimale | Aucun service d'administration exposé sur le WAN |
| Administration sécurisée | Accès uniquement via tunnel WireGuard |
| Segmentation réseau | Deux segments distincts : réseau Freebox / réseau interne OPNsense |
| Isolation des environnements | Séparation LXC / VMs / environnements vulnérables |
| Journalisation | Logs réseau centralisés via OPNsense |
| Surface d'attaque réduite | Services limités au strict nécessaire |
Séparation logique des usages
┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐
│ Infrastructure │ │ Réseau & Sécurité │ │ Tests & Lab │
│ permanente │ │ │ │ │
│ (WireGuard, │ │ (OPNsense, VLANs, │ │ (VMs éphémères, │
│ Guacamole) │ │ Firewall) │ │ CTF, Pentest) │
└──────────────────────┘ └──────────────────────┘ └──────────────────────┘
Stable Contrôle Isolé
📁 Contenu du dépôt
homelab-proxmox/
│
├── README.md # Ce fichier
│
├── docs/
│ ├── architecture.md # Schémas et choix d'architecture
│ ├── network-diagram.md # Plan réseau détaillé (VLANs, IPs)
│ └── security-policy.md # Politique de sécurité appliquée
│
├── configs/
│ ├── opnsense/
│ │ └── firewall-rules.md # Règles firewall documentées (anonymisées)
│ └── wireguard/
│ └── wg0.conf.example # Template de config WireGuard (sans clés)
│
└── writeups/
└── (à venir) ctf/ # Writeups des CTF réalisés dans le lab
🧠 Compétences illustrées
Virtualisation & Infrastructure
- Administration Proxmox VE (VMs, LXC, snapshots, ressources)
- Architecture hybride LXC + VM adaptée aux usages
- Réseau virtualisé et segmentation logique
Cybersécurité
- Déploiement et configuration d'un firewall virtualisé (OPNsense)
- Mise en place d'une architecture Zero Trust simplifiée (VPN-only admin)
- Cloisonnement des environnements sensibles et éphémères
- Réduction de la surface d'attaque
Administration système
- Linux server, services auto-hébergés
- Active Directory, GPO, gestion des identités (Windows Server)
- Docker & conteneurisation
⚠️ Sécurité du dépôt
Ce dépôt est public. Aucune clé privée, mot de passe, adresse IP réelle ou information sensible n'est commitée. Les fichiers de configuration sont systématiquement anonymisés ou fournis sous forme de templates.
📌 À propos
Projet personnel en évolution continue, utilisé comme plateforme d'apprentissage, d'expérimentation et de montée en compétences en ingénierie cybersécurité et architecture système.
Infrastructure opérationnelle — évolutions régulières selon les projets et formations en cours.