Gestion des règles de firewall et port security sur les réseaux utilisant OpenStack CLI

Base de connaissances

Gestion des règles de firewall et port security sur les réseaux utilisant OpenStack CLI


Icons/System/eye-open Created with Sketch. 4580 vues 23.09.2025 Tutoriels

Objectif

La plateforme OpenStack gère la sécurité des pare-feu en combinant les règles de connexion en groupes de sécurité. Les règles sont ensuite appliquées en affectant des groupes de sécurité aux ports réseau.

Un port dans le cadre d'OpenStack Neutron est un point de connexion entre les sous-réseaux et les éléments réseau (tels que des instances, load-balancers, routeurs, etc...).

Découvrez comment sont gérés les groupes de sécurité pour les réseaux publics et privés sur Public Cloud.

Prérequis

En pratique

Procédure d'activation

Cette section du guide ne concerne que les configurations de réseaux privés.

Pour un réseau privé déjà créé

Afin d'éviter toute rupture de configuration lors des montées de version d'OpenStack Stein et d'Open vSwitch, le paramètre "port security" a été défini sur "False" sur les réseaux existants.

Vous devez utiliser la CLI openstack pour activer le "port security" sur vos ports et votre réseau existant.

Tout d'abord, si vous souhaitez utiliser des règles de pare-feu sur des réseaux privés, vous devrez définir la propriété "port security" à "True" :

openstack network set --enable-port-security <network_ID>

Ensuite, vous devrez activer le "port security" sur le port de votre service dans ce réseau.

Pour rappel, pour récupérer le port, vous pouvez utiliser la CLI OpenStack. Exécutez la commande openstack port list --server <server_ID> pour récupérer les ports sur un serveur donné.

Pour tous les services ayant un port actif dans ce réseau, activez le "port security" :

openstack port set --enable-port-security <port_ID>

Vous pouvez ensuite vérifier si le "port security" est activé sur un port en particulier :

openstack port show <port_ID> -f value -c port_security_enabled

Le résultat devrait être similaire à ceci :

$ openstack port show d7c237cd-8dee-4503-9073-693d986baff3 -f value -c port_security_enabled
True

Pour un nouveau réseau privé :

La mise à niveau vers la version Stein sur les régions OpenStack et la nouvelle version d'Open vSwitch étant réalisées à partir du 06/09/2022 (Private network port default configuration change), le paramètre de "port security" sera défini sur "True" par défaut sur tout réseau privé nouvellement créé.

Cela nous assurera de rester cohérents avec la politique "True" par défaut, comme sur les déploiements vanilla OpenStack.

Paramètres par défaut

Chaque port réseau est attaché à un groupe de sécurité qui contient des règles spécifiques.

Le groupe de sécurité "default" contient les règles suivantes :

openstack security group rule list default

+--------------------------------------+-------------+-----------+-----------+------------+-----------------------+
| ID                                   | IP Protocol | Ethertype | IP Range  | Port Range | Remote Security Group |
+--------------------------------------+-------------+-----------+-----------+------------+-----------------------+
| 3a5564b7-5b68-4923-b796-26eb623c5b53 | None        | IPv6      | ::/0      |            | None                  |
| 43f2b673-9cbc-4bac-ad66-22ef4789d0fc | None        | IPv6      | ::/0      |            | None                  |
| a6a1ecfd-4713-4316-a020-74eccd49fd6c | None        | IPv4      | 0.0.0.0/0 |            | None                  |
| cd66a601-de94-4dbe-ae21-44792229d351 | None        | IPv4      | 0.0.0.0/0 |            | None                  |
+--------------------------------------+-------------+-----------+-----------+------------+-----------------------+

Le retour obtenu montre que toutes les connexions sont autorisées pour tout protocole et dans les deux sens.

Selon les régions, l'implémentation peut être différente mais le résultat est identique : toutes les connexions sont autorisées.

En conséquence, tous les ports réseau (publics et privés) permettent chaque connexion au démarrage d’une instance.

Gérer les règles de votre firewall privé

Ajouter des règles

Si vous souhaitez configurer des règles spécifiques, vous devez créez un nouveau groupe de sécurité et lui associer votre port réseau. Nous vous conseillons de ne pas modifier le groupe de sécurité « default », ceci afin de maintenir l'accès à votre instance en toutes circonstances (par exemple en mode rescue).

Utilisez cette commande pour créer le groupe :

openstack security group create private

+-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field           | Value                                                                                                                                                                      |
+-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| created_at      | 2021-11-05T15:14:37Z                                                                                                                                                       |
| description     | private                                                                                                                                                                    |
| id              | eeae05a8-c81e-40a4-a3aa-fdbebcbf72b4                                                                                                                                       |
| location        | cloud='', project.domain_id=, project.domain_name='Default', project.id='9ea425f44c284d488c6d8e28ccc8bff0', project.name='3614264792735868', region_name='GRA11', zone=    |
| name            | private                                                                                                                                                                    |
| project_id      | 9ea425f44c284d488c6d8e28ccc8bff0                                                                                                                                           |
| revision_number | 1                                                                                                                                                                          |
| rules           | created_at='2021-11-05T15:14:37Z', direction='egress', ethertype='IPv4', id='54fae025-3439-4e45-8745-2ffe5b261f72', revision_number='1', updated_at='2021-11-05T15:14:37Z' |
|                 | created_at='2021-11-05T15:14:37Z', direction='egress', ethertype='IPv6', id='ad1aa507-79bd-434f-b674-221ef41d9ba6', revision_number='1', updated_at='2021-11-05T15:14:37Z' |
| stateful        | None                                                                                                                                                                       |
| tags            | []                                                                                                                                                                         |
| updated_at      | 2021-11-05T15:14:37Z                                                                                                                                                       |
+-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

Cet exemple de groupe de sécurité n'a que des règles de sortie, ce qui signifie qu'aucune communication d'entrée ne sera autorisée.

Pour ajouter une règle pour, par exemple, les connexions SSH, vous pouvez utiliser la commande suivante :

openstack security group rule create --protocol tcp --dst-port 22 private

+-------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field             | Value                                                                                                                                                                   |
+-------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| created_at        | 2021-11-05T15:19:37Z                                                                                                                                                    |
| description       |                                                                                                                                                                         |
| direction         | ingress                                                                                                                                                                 |
| ether_type        | IPv4                                                                                                                                                                    |
| id                | 8f026e18-1c8b-4042-8655-10c9a773d131                                                                                                                                    |
| location          | cloud='', project.domain_id=, project.domain_name='Default', project.id='9ea425f44c284d488c6d8e28ccc8bff0', project.name='3614264792735868', region_name='GRA11', zone= |
| name              | None                                                                                                                                                                    |
| port_range_max    | 22                                                                                                                                                                      |
| port_range_min    | 22                                                                                                                                                                      |
| project_id        | 9ea425f44c284d488c6d8e28ccc8bff0                                                                                                                                        |
| protocol          | tcp                                                                                                                                                                     |
| remote_group_id   | None                                                                                                                                                                    |
| remote_ip_prefix  | 0.0.0.0/0                                                                                                                                                               |
| revision_number   | 1                                                                                                                                                                       |
| security_group_id | eeae05a8-c81e-40a4-a3aa-fdbebcbf72b4                                                                                                                                    |
| tags              | []                                                                                                                                                                      |
| updated_at        | 2021-11-05T15:19:37Z                                                                                                                                                    |
+-------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

Entrez la commande suivante pour associer votre groupe de sécurité à votre port :

openstack port set --security-group private 5be009d9-fc2e-4bf5-a152-dab52614b02d

Aller plus loin

Échangez avec notre communauté d'utilisateurs.

Articles associés