Update readme.md
This commit is contained in:
@@ -0,0 +1,217 @@
|
|||||||
|
# 🖥️ 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](https://community-scripts.github.io/ProxmoxVE/)**, une collection community-driven de scripts automatisés pour Proxmox.
|
||||||
|
|
||||||
|
### Commandes de déploiement
|
||||||
|
|
||||||
|
#### 🔐 WireGuard (LXC)
|
||||||
|
```bash
|
||||||
|
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/wireguard.sh)"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 🖥️ Apache Guacamole (LXC)
|
||||||
|
```bash
|
||||||
|
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/apache-guacamole.sh)"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 🌐 OPNsense (VM)
|
||||||
|
```bash
|
||||||
|
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 et gestion VLAN
|
||||||
|
- NAT, 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 | VLANs et règles firewall 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)
|
||||||
|
│ └── guacamole/
|
||||||
|
│ └── setup-notes.md # Notes de configuration post-déploiement
|
||||||
|
│
|
||||||
|
└── 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.*
|
||||||
Reference in New Issue
Block a user