Maîtriser le Réseau et la Sécurité sur GCP : VPC & IAM
Le passage au Cloud nécessite une compréhension solide de deux piliers fondamentaux : le réseau (où vivent vos ressources) et l'identité (qui peut y accéder). Sur Google Cloud Platform (GCP), cela se traduit par le Virtual Private Cloud (VPC) et l'Identity and Access Management (IAM).
Dans ce guide, nous allons décomposer ces concepts pour construire une infrastructure robuste, isolée et sécurisée.
1. Le VPC : Votre Fondation Réseau
Qu'est-ce qu'un VPC ?
Un VPC (Virtual Private Cloud) est votre réseau privé virtuel au sein de GCP. C'est un espace isolé où vous déployez vos ressources (VMs, clusters Kubernetes, bases de données).
L'analogie de la ville : Imaginez que GCP est une immense métropole comme Paris. Votre VPC est un quartier privé à l'intérieur de cette ville. Ce quartier possède ses propres rues (sous-réseaux), ses habitations (ressources) et ses points de contrôle (firewalls). Tout ce qui se passe à l'intérieur du quartier est invisible pour le reste de la ville, à moins que vous ne décidiez d'ouvrir une porte.
Pourquoi utiliser un VPC ?
L'objectif premier est l'isolation. Sans VPC, vos ressources seraient exposées directement sur l'internet public. Le VPC permet :
- De définir vos propres plages d'adresses IP.
- De contrôler finement le trafic entrant et sortant.
- De connecter vos ressources internes de manière sécurisée.
2. Architecture et Segmentation
Pour une application moderne (Frontend, Backend, BDD), il est crucial de ne pas tout mélanger. On utilise pour cela des sous-réseaux (subnets).
Plan d'adressage IP (CIDR)
Prenons l'exemple d'une architecture multi-environnement (Staging & Production) :
| Service | Environnement | Plage IP (CIDR) | Capacité |
|---|---|---|---|
| Frontend | Staging | 10.10.10.0/26 | 60 IPs utiles |
| Frontend | Production | 10.20.10.0/26 | 60 IPs utiles |
| Backend | Staging | 10.10.20.0/26 | 60 IPs utiles |
| Backend | Production | 10.20.20.0/26 | 60 IPs utiles |
| Base de données | Staging | 10.10.30.0/26 | 60 IPs utiles |
| Base de données | Production | 10.20.30.0/26 | 60 IPs utiles |
Comprendre le calcul des IPs
Le masque /26 détermine la taille de votre sous-réseau.
- La formule : $2^{(32 - 26)} = 2^6 = 64$ adresses au total.
- Attention : GCP réserve systématiquement 4 adresses (réseau, passerelle, DNS, broadcast). Il reste donc 60 IPs pour vos machines.
Évolutivité
Sur GCP, vous pouvez agrandir un sous-réseau à chaud (ex: passer de /26 à /24), mais vous ne pourrez jamais le réduire. Prévoyez toujours une marge de progression.
3. Connectivité et Sécurité
Cloud NAT : L'accès internet discret
Par défaut, une machine sans IP publique est totalement isolée. Pour qu'elle puisse télécharger des mises à jour sans être exposée, on utilise le Cloud NAT. Il agit comme un intermédiaire : il permet à vos serveurs de sortir sur internet, mais empêche quiconque de l'extérieur d'initier une connexion vers vos serveurs.
Les règles de Pare-feu (Firewall Rules)
C'est ici que vous définissez qui parle à qui. Exemple : Autoriser le Frontend à communiquer avec le Backend.
- Source : Plage IP du Frontend ou
Network Tag(ex:tag-frontend). - Destination : Machines avec le tag
tag-backend. - Protocole/Port : TCP 8080.
4. VPC Peering : Connecter les Mondes
Le VPC Peering permet de connecter deux réseaux VPC différents (par exemple, entre deux projets GCP ou deux entités différentes) afin qu'ils communiquent via des adresses IP internes.
Pourquoi l'utiliser ?
- Performance : Le trafic reste sur le réseau privé de Google (faible latence, haut débit).
- Sécurité : Pas besoin de passer par l'internet public ou un VPN.
- Coût : Moins onéreux que de passer par des IPs publiques.
Les règles d'or du Peering
- Pas d'overlapping : Les plages d'IPs des deux VPC ne doivent pas se chevaucher.
- Non-transitivité : Si le VPC A est peeré avec le VPC B, et le VPC B avec le VPC C, le VPC A ne peut pas parler au VPC C directement via le VPC B.
- Administration simple : Une fois configuré, le routage est géré automatiquement par GCP.
5. IAM : Qui fait quoi ?
Si le VPC est l'enveloppe, l'IAM (Identity and Access Management) est la clé qui ouvre les portes.
Les 3 Piliers de l'IAM
- Le "QUI" (Le Principal) :
- Un utilisateur (email).
- Un groupe (ex:
devs@entreprise.com). - Un Service Account : Une identité pour une machine ou un script.
- Le "QUOI" (Le Rôle) : Une collection de permissions.
- Prédéfinis : Storage Admin, Compute Viewer, etc.
- Custom : Vos propres rôles sur mesure.
- Le "SUR QUOI" (La Ressource) : Le projet, le bucket, ou l'instance spécifique.
Le Principe du Moindre Privilège
Ne donnez jamais le rôle Owner ou Editor par défaut. Appliquez toujours le principe du moindre privilège : donnez uniquement les droits nécessaires, à la bonne personne, sur la bonne ressource, et pour la durée minimale.
Conclusion
Maîtriser le VPC et l'IAM sur GCP, c'est s'assurer que votre infrastructure est à la fois flexible et impénétrable. En segmentant correctement vos réseaux et en verrouillant vos accès via des comptes de service dédiés, vous construisez une base saine pour vos applications en production.
Besoin d'aller plus loin ? La prochaine étape est souvent l'automatisation de ces ressources via Terraform !
