Vous vous demandez comment autoriser ou refuser un flux réseau sur Google Cloud Platform (GCP) ?

Chaque projet que vous créez dans GCP est accompagné de règles de pare-feu par défaut.

gcp-default-firewall

Voyons ce qu’elles sont.

  • default-allow-icmp – autorise toutes les IP du réseau à partir de n’importe quelle source. Le protocole ICMP est principalement utilisé pour effectuer un ping sur la cible.
  • default-allow-internal – autorise la connectivité entre les instances sur n’importe quel port.
  • default-allow-rdp – permet à une session RDP de se connecter à des serveurs Windows à partir de n’importe quelle source.
  • default-allow-ssh – permet à une session SSH de se connecter à des serveurs UNIX à partir de n’importe quelle source.

Comme vous pouvez le constater, les règles par défaut autorisent une connectivité de base permettant d’envoyer un ping au serveur et de s’y connecter.

Avez-vous besoin de plus que cela ?

Je suis sûr que oui. C’est là que vous devez savoir comment configurer en fonction de vos besoins.

Le pare-feu GCP est constitué de règles définies par logiciel ; vous n’avez pas besoin d’apprendre ou de vous connecter à des dispositifs matériels de pare-feu conventionnels.

Les règles du pare-feu deGoogle Cloud sont dynamiques. Toute la configuration se fait soit par la console GCP, soit par des commandes. Cependant, je vais vous expliquer comment procéder à l’aide d’une console.

Les règles de pare-feu sont disponibles sous le réseau VPC dans la section réseau du menu de gauche.

gcp-firewall-rules

Lorsque vous cliquez sur créer une règle de pare-feu, les détails de connectivité vous seront demandés. Voyons quelles sont les options dont nous disposons et ce qu’elles signifient.

Name – Nom du pare-feu (uniquement en minuscules et sans espace)

Description – facultatif mais il est bon d’entrer quelque chose de significatif, afin de s’en souvenir à l’avenir

Réseau – Si vous n’avez pas créé de VPC, vous ne verrez que la valeur par défaut et vous pourrez la laisser telle quelle. Cependant, si vous avez plusieurs VPC, sélectionnez le réseau sur lequel vous souhaitez appliquer les règles de pare-feu.

Priorité – priorité de la règle appliquée au réseau. La priorité la plus basse est la plus élevée et commence à 1000. Dans la plupart des cas, vous souhaitez conserver tous les services critiques (HTTP, HTTPS, etc.) avec une priorité de 1000.

Direction du trafic – sélectionnez le type de flux entre ingress (entrant) et outgress (sortant).

Action en cas de correspondance – choisissez d’autoriser ou de refuser le trafic

Targets – la cible à laquelle vous souhaitez appliquer les règles. Vous avez la possibilité d’appliquer les règles à toutes les instances du réseau, de n’autoriser que certaines étiquettes ou certains comptes de service.

Source filter – une source qui sera validée pour autoriser ou refuser. Vous pouvez filtrer par plages d’IP, sous-réseaux, balises source et comptes de service.

Plage d’IP source – si vous avez sélectionné une plage d’IP dans le filtre source, ce qui est le cas par défaut, indiquez la plage d’IP qui sera autorisée.

Deuxième filtre de source – plusieurs validations de source sont possibles.

Par exemple, vous pouvez utiliser le premier filtre source comme étiquette source et le second filtre comme compte de service. Quelle que soit la correspondance, elle sera autorisée/refusée.

Protocole et ports – vous pouvez sélectionner tous les ports ou spécifier des ports individuels (TCP/UDP). Vous pouvez avoir plusieurs ports uniques dans une seule règle.

gcp-create-firewall-rule

Explorons des scénarios en temps réel…

Vous avez changé le port SSH de 22 à quelque chose d’autre (disons 5000) pour des raisons de sécurité. Depuis, vous ne pouvez plus entrer dans une VM.

Pourquoi ?

Vous pouvez facilement le deviner, car le port 5000 n’est pas autorisé par le pare-feu. Pour l’autoriser, vous devez créer une règle de pare-feu comme ci-dessous.

  • Donnez un nom à la règle
  • Choisissez ingress dans la direction du trafic
  • Choisissez d’autoriser l’action de la correspondance
  • Sélectionnez toutes les instances d’un réseau dans la cible (en supposant que vous voulez vous connecter à n’importe quelle VM avec le port 5000)
  • Sélectionnez des plages d’adresses IP dans le filtre source (en supposant que vous souhaitiez vous connecter à partir de TOUTES les sources)
  • Fournissez des plages d’adresses IP source comme 0.0.0.0/0
  • Sélectionnez les protocoles et les ports spécifiés et entrez tcp:5000
  • Cliquez sur créer

gcp-custom-firewall-rule

Essayez de connecter votre VM avec le port 5000, et tout devrait bien se passer.

Quelques-unes des meilleures pratiques de gestion des règles de pare-feu.

  • N’autorisez que ce qui est nécessaire (need-basis)
  • Dans la mesure du possible, spécifiez des IP sources individuelles ou des plages d’IP au lieu de 0.0.0.0/0 (ANY)
  • Associez les instances de VM aux balises et utilisez-les dans la cible au lieu de toutes les instances
  • Combinez plusieurs ports dans une seule règle pour faire correspondre la source et la destination
  • Révisez régulièrement les règles du pare-feu

L’interface graphique de GCP est facile à comprendre et à gérer.

J’espère que cela vous donne une idée de la gestion des pare-feux. Si vous êtes intéressé par l’apprentissage de GCP, je vous suggère de consulter ce cours.