Note :
- Ce tutoriel nécessite l'accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, voir Introduction à l' niveau gratuit d'Oracle Cloud Infrastructure.
- Il utilise des exemples de valeurs pour les données d'identification, la location et les compartiments Oracle Cloud Infrastructure. À la fin de votre laboratoire, remplacez ces valeurs par celles propres à votre environnement en nuage.
Créer et configurer le routage des trousses de confiance zéro pour Oracle Cloud Infrastructure
Présentation
Le routage sans trousse de confiance d'Oracle Cloud Infrastructure (OCI) empêche l'accès non autorisé aux données en gérant les politiques de sécurité de réseau séparément de l'architecture de réseau sous-jacente. Grâce à un langage de stratégie facile à comprendre et basé sur des intentions, les administrateurs de la sécurité peuvent définir des chemins d'accès spécifiques pour les données. Le trafic qui n'est pas explicitement autorisé par la politique ne peut pas parcourir le réseau, ce qui améliore la sécurité tout en simplifiant le travail des équipes de sécurité, de réseau et d'audit.
Le tutoriel suivant explique comment configurer le routage des paquets sans confiance OCI pour appliquer des contrôles de sécurité afin de régir la communication sur le réseau dans une location Oracle Cloud Infrastructure (OCI). Pour ce tutoriel, l'architecture suivante a été déployée.
Dans cette architecture, les ressources suivantes ont été configurées :
-
financeprod
est une instance d'Oracle Autonomous Database, configurée en tant que base de données de production, hébergée dans un réseau privé, rendue accessible dans le sous-réseau privé au moyen d'un point d'extrémité privé. -
client-prod
est une instance de calcul simulant une application d'entreprise dans l'environnement de production. Pour ce scénario, il s'agit d'une instance Oracle Linux exécutant Oracle Instant Client. -
client-dev
est une instance de calcul simulant une application d'entreprise dans l'environnement de développement. Comme pour client-prod, il s'agit d'une instance Oracle Linux exécutant Oracle Instant Client.
En outre, un VCN distinct (so-vcn-pt
) a été configuré pour ce cas d'utilisation, comprenant :
-
subnet-public
est le sous-réseau public contenant les instances de calcul. -
subnet-private
est le sous-réseau privé contenant la base de données. -
sl-allow-public
est une liste de sécurité permettant l'accès SSH à partir d'Internet. Une règle de trafic sortant a également été configurée pour autoriser le trafic sortant. Il est affecté àsubnet-public
. -
sl-allow-private
est une liste de sécurité autorisant le trafic Oracle Instant Client (port1522
) à partir desubnet-public
. Une règle de trafic sortant a également été configurée pour autoriser le trafic sortant. Cette liste de sécurité est affectée àsubnet-private
. -
route-public
est la table de routage pour acheminer tout le trafic vers la passerelle Internet. Cette valeur est affectée àsubnet-public
. -
route-private
est la table de routage pour acheminer tout le trafic vers la passerelle NAT. Cette valeur est affectée àsubnet-private
. -
gw-internet
est la passerelle Internet utilisée dansroute-public
. -
gw-nat
est la passerelle NAT utilisée dansroute-private
.
Objectifs
-
Configurez de nouveaux attributs de sécurité pour le routage des trousses d'approbation zéro pour OCI.
-
Créez des politiques d'acheminement de paquets sans confiance OCI pour contrôler le flux du trafic réseau.
-
Affectez des attributs de sécurité d'acheminement de trousse de confiance zéro OCI aux ressources.
-
Testez les politiques d'acheminement des paquets sans confiance OCI.
Préalables
-
Abonnement payant pour la location OCI avec les autorisations appropriées pour gérer les ressources d'acheminement de paquet de confiance zéro OCI.
-
Structure de réseau définie dans l'architecture.
-
Deux instances de calcul selon l'architecture, déployées dans le sous-réseau public.
-
Installez et configurez Oracle Instant Client (y compris le client SQL*Plus) sur les deux instances de calcul.
Note : Téléchargez et installez Oracle Instant Client à partir d'ici : Installation d'Oracle Instant Client à l'aide de RPM.
-
Créez une instance Oracle Autonomous Database selon l'architecture et déployez-la avec un point d'extrémité privé dans le sous-réseau privé.
-
Configurer l'accès à la base de données à partir d'Oracle Instant Client sur les deux instances de calcul.
Tâche 1 : Confirmer l'accès à la base de données à partir des clients
Dans cette tâche, nous confirmerons que les deux instances de calcul peuvent accéder à la base de données au moyen d'Oracle Instant Client.
-
Connectez-vous à votre instance de calcul client-prod à l'aide de SSH en tant qu'utilisateur
opc
. -
Exécutez la commande
sqlplus
pour vous connecter à votre base de données autonome.Selon les conditions requises, le client Oracle Instant doit être installé et configuré. Voici un sommaire des étapes de configuration :
-
Téléchargez et installez Oracle Instant Client.
-
Configurez Oracle Instant Client.
-
Téléchargez le portefeuille de connexions pour votre base de données autonome à partir d'OCI.
-
Extrayez le portefeuille dans un dossier.
-
Configurez le fichier
sqlnet.ora
dans votre dossier de portefeuille pour qu'il pointe vers votre emplacement de portefeuille. -
Exportez la variable
TNS_ADMIN
pour pointer vers l'emplacement du portefeuille extrait. Par exemple,export TNS_ADMIN=/opt/wallet
. -
Exécutez la commande
sqlplus
, par exemplesqlplus admin@financeprod_low
et entrez votre mot de passe lorsque vous y êtes invité.
Si Oracle Instant Client fonctionne correctement et que toutes les conditions requises ont été remplies, vous devez vous connecter à la base de données et pouvoir exécuter des commandes. Exécutez la commande
show user;
pour voir les utilisateurs. -
-
Répétez le test de connexion à la base de données à partir de client-dev.
Si Oracle Instant Client fonctionne correctement et que toutes les conditions requises ont été remplies, vous devez vous connecter à la base de données et pouvoir exécuter des commandes. Exécutez la commande
show user;
pour voir les utilisateurs.
Tâche 2 : Activer le routage des trousses de confiance sans OCI
S'il s'agit de la première fois que vous utilisez le routage de paquetage OCI de confiance zéro dans votre location, il devra être activé.
-
Connectez-vous à la console OCI en tant qu'utilisateur disposant des autorisations appropriées pour gérer les ressources d'acheminement des paquets sans confiance OCI et les autres ressources utilisées dans ce tutoriel.
-
Allez à Identité et sécurité et cliquez sur Routage de trousse de confiance zéro.
-
Cliquez sur Activer ZPR, le bouton sera grisé et les menus Acheminement de paquet de confiance zéro OCI deviendront accessibles.
Tâche 3 : Configurer les attributs de sécurité du routage du paquet de confiance OCI zéro
Pour configurer le routage des paquets sans confiance OCI, nous devons configurer les attributs de sécurité qui seront utilisés dans vos politiques d'acheminement des paquets sans confiance OCI.
Dans cette tâche, nous allons créer trois nouveaux attributs de sécurité représentant le réseau, les bases de données et les applications. Nous allons créer des valeurs prédéfinies pour ces attributs de sécurité.
-
Allez à Routage de trousse de confiance zéro et cliquez sur Espace de noms d'attribut de sécurité.
-
Sous Portée de la liste, sélectionnez le compartiment
root
. L'espace de nomsoracle-zpr
prédéfini nous sera présenté. -
Cliquez sur
oracle-zpr
, vous verrez l'attribut de sécuritésensitivity
prédéfini. Nous n'utiliserons pas l'attribut dans ce tutoriel. -
Sélectionnez Créer un attribut de sécurité pour créer un attribut de sécurité.
-
Dans Créer un attribut de sécurité, entrez les informations suivantes.
- Nom : Entrez
app
. - Description : Entrez
Security attribute representing applications
. - Type de valeur d'attribut de sécurité : Sélectionnez Une liste de valeurs.
- Valeurs : Entrez
prod
etdev
(sur des lignes distinctes).
- Nom : Entrez
-
Cliquez sur Créer pour créer l'attribut.
-
Répétez les étapes 5 et 6 pour créer deux autres attributs de sécurité.
-
Créez un attribut de sécurité pour les bases de données à l'aide des informations suivantes :
- Nom : Entrez
db
. - Description : Entrez
Security attribute representing databases
. - Type de valeur d'attribut de sécurité : Sélectionnez Une liste de valeurs.
- Valeurs : Entrez
prod
etdev
(sur des lignes distinctes).
- Nom : Entrez
-
Créez un attribut de sécurité pour les réseaux à l'aide des informations suivantes :
- Nom : Entrez
network
. - Description : Entrez
Security attribute representing networks
. - Type de valeur d'attribut de sécurité : Sélectionnez Une liste de valeurs.
- Valeurs : Entrez
prod
etdev
(sur des lignes distinctes).
- Nom : Entrez
Une fois terminé, vous devriez voir la liste des attributs de sécurité, y compris l'attribut
sensitivity
prédéfini. -
Tâche 4 : Créer des politiques d'acheminement de paquet de confiance sans OCI
Nous avons défini les attributs de sécurité, nous devons maintenant créer les politiques pour contrôler le flux d'informations sur le réseau.
Pour ce cas d'utilisation, nous avons besoin d'une politique qui permet à l'application de production de communiquer avec la base de données de production. Dans cette tâche, nous allons configurer la politique d'acheminement des paquets OCI de confiance zéro pour y parvenir.
-
Allez à la console OCI, naviguez jusqu'à Identité et sécurité, Routage de paquet de confiance zéro et cliquez sur Politiques.
-
Cliquez sur Créer une politique pour créer une politique d'acheminement des paquets sans confiance OCI.
-
Entrez les informations suivantes et cliquez sur Ajouter des énoncés de politique pour ajouter un énoncé de politique à votre politique.
- Nom : Entrez
prod_policy
. - Description : Entrez
Policy to allow production clients in the production network to access production databases
.
- Nom : Entrez
-
Examinez les trois options pour créer des énoncés de politique, sélectionnez Générateur de politiques manuel, entrez l'énoncé de politique suivant et cliquez sur Ajouter pour enregistrer l'énoncé de politique.
- Énoncés de politique : Entrez
in network:prod VCN allow app:prod endpoints to connect to db:prod endpoints with protocol = 'tcp/1522'
.
Note : L'énoncé de politique est facile à comprendre, même sans explication. Toutefois, pour plus de clarté, vous indiquez au routage de trousse de confiance OCI Zéro que vous voulez que toutes les ressources auxquelles l'attribut de sécurité
app:prod
est affecté puissent communiquer avec toutes les ressources pour lesquelles l'attribut de sécuritédb:prod
leur est affecté, dans le VCNnetwork:prod
, sur le protocole TCP 1522.Votre politique terminée doit se présenter comme suit :
- Énoncés de politique : Entrez
-
Cliquez sur Créer une politique pour terminer la création de
prod_policy
.Note : Une fois que vous affectez des attributs de sécurité à vos ressources, la politique d'acheminement des trousses d'approbation zéro OCI est appliquée et seul le trafic correspondant à une politique d'acheminement des trousses d'approbation zéro OCI est autorisé à transiter par le réseau. Comme vous allez affecter des attributs de sécurité à vos deux instances de calcul, vous perdrez l'accès SSH à ces instances de calcul, car il n'y a pas de politique d'acheminement de trousse de confiance zéro OCI pour autoriser l'accès SSH à vos clients. Par conséquent, vous devez résoudre ce problème en créant deux stratégies supplémentaires.
-
Répétez les étapes 2 à 5 pour créer deux politiques supplémentaires de routage de paquetage OCI sans confiance, afin de vous permettre de vous connecter à vos instances de calcul au moyen de SSH.
-
Politique pour autoriser l'accès SSH à client-prod :
- Nom : Entrez
prod_client_access_policy
. - Description : Entrez
Policy to allow SSH access to the production clients in the production network
. - Énoncés de politique : Entrez
in network:prod VCN allow 'x.x.x.x/32' to connect to app:prod endpoints with protocol='tcp/22'
.
- Nom : Entrez
-
Politique pour autoriser l'accès SSH à client-dev :
- Nom : Entrez
dev_client_access_policy
. - Description : Entrez
Policy to allow dev clients in the production network to access production databases
. - Énoncés de politique : Entrez
in network:prod VCN allow 'x.x.x.x/32' to connect to app:dev endpoints with protocol='tcp/22'
.
Note :
-
Remplacez
x.x.x.x
par votre adresse IP. -
Dans un scénario de production, l'accès aux clients se fait généralement au moyen d'un hôte bastion OCI. Toutefois, pour simplifier ce tutoriel, l'accès est direct. Par conséquent, l'adresse IP externe de la machine source se connectant aux clients via SSH doit être incluse.
- Nom : Entrez
Vos politiques terminées doivent se présenter comme suit :
-
Tâche 5 : Affecter des attributs de sécurité à vos ressources
Dans cette tâche, pour configurer le routage des paquets de confiance OCI sans confiance, nous affecterons les attributs de sécurité aux ressources nécessaires.
Nous associerons un attribut de sécurité db
à votre base de données, un attribut de sécurité app
à vos deux clients et un attribut de sécurité network
à votre VCN.
Note : Lors de l'affectation d'attributs de sécurité, celle-ci peut être effectuée à partir des écrans d'acheminement de trousse de confiance OCI zéro ou à partir des ressources individuelles. Ce tutoriel vous montrera les deux méthodes.
-
Affectez l'attribut de sécurité à la base de données.
-
Allez à la console OCI, naviguez jusqu'à Oracle Database et Autonomous Database.
Note : Assurez-vous que vous êtes dans le compartiment dans lequel vous avez créé votre base de données, vous devriez la voir dans la liste.
-
Sélectionnez votre base de données (par exemple,
Finance-PROD
) dans la liste des bases de données disponibles. -
Cliquez sur Attributs de sécurité. Vous verrez qu'il est actuellement vide et qu'aucun attribut de sécurité n'est affecté.
-
Cliquez sur Ajouter des attributs de sécurité et entrez les informations suivantes.
- Espace de noms : Sélectionnez
oracle-zpr
. - Clé : Sélectionnez
db
. - Valeur : Sélectionnez
prod
.
- Espace de noms : Sélectionnez
-
Cliquez sur Ajouter des attributs de sécurité pour affecter l'attribut de sécurité à la base de données. La base de données sera mise à jour et l'attribut sera affecté.
-
-
Affectez les attributs de sécurité aux instances de calcul.
-
Allez à la console OCI, naviguez jusqu'à Calcul et Instances.
Note : Assurez-vous d'être dans le compartiment dans lequel vous avez créé vos instances de calcul. Vous devez les voir toutes les deux dans la liste.
-
Sélectionnez votre instance client-prod dans la liste des instances disponibles.
-
Cliquez sur Sécurité. Ce champ est vide car aucun attribut de sécurité n'a encore été affecté à l'instance.
-
Cliquez sur Ajouter des attributs de sécurité et entrez les informations suivantes.
- Espace de noms : Entrez
oracle-zpr
. - Clé : Entrez
app
. - Valeur : Entrez
prod
.
- Espace de noms : Entrez
-
Cliquez sur Ajouter des attributs de sécurité pour affecter l'attribut de sécurité à la base de données. L'instance de calcul sera mise à jour et l'attribut sera affecté.
-
Allez à la console OCI, naviguez jusqu'à Calcul et Instances.
-
Sélectionnez votre instance client-dev dans la liste des instances disponibles.
-
Cliquez sur Sécurité.
-
Cliquez sur Ajouter des attributs de sécurité et entrez les informations suivantes.
- Espace de noms : Sélectionnez
oracle-zpr
. - Clé : Sélectionnez
app
. - Valeur : Sélectionnez
dev
.
- Espace de noms : Sélectionnez
-
Cliquez sur Ajouter des attributs de sécurité pour affecter l'attribut de sécurité à la base de données. L'instance de calcul sera mise à jour et l'attribut sera affecté.
-
-
Affectez les attributs de sécurité au VCN.
-
Allez à la console OCI, naviguez jusqu'à Réseau et Réseaux en nuage virtuels.
Note : Assurez-vous que vous êtes dans le compartiment dans lequel vous avez créé votre VCN, vous devriez le voir dans la liste.
-
Sélectionnez votre VCN so-vcn-pt dans la liste des réseaux en nuage virtuels disponibles.
-
Cliquez sur Sécurité.
Note : Pour affecter cet attribut de sécurité, vous allez l'affecter au moyen du menu Acheminement de trousse de confiance OCI zéro, plutôt qu'à partir de la ressource. Cela vous montre les deux différentes façons d'affecter les attributs de sécurité du routage de trousse de confiance zéro OCI.
-
Allez à la console OCI, naviguez jusqu'à Identité et sécurité, Routage de paquet de confiance zéro et cliquez sur Ressources protégées.
Vous verrez la liste existante des ressources qui ont été protégées, par exemple, pour lesquelles des attributs de sécurité leur ont été affectés.
-
Cliquez sur Ajouter un attribut de sécurité aux ressources.
-
Pour filtrer la liste, sélectionnez le compartiment dans lequel vous avez créé le VCN et le type de ressource comme
Vcn
. -
Sélectionnez votre VCN (so-vcn-pt) et cliquez sur Suivant.
-
Entrez les informations suivantes .
- Espace de noms d'attribut de sécurité : Sélectionnez
oracle-zpr
. - Attribut de sécurité : Sélectionnez
network
. - Valeur de l'attribut de sécurité : Sélectionnez
prod
.
- Espace de noms d'attribut de sécurité : Sélectionnez
-
Cliquez sur Next (Suivant) et vérifiez le sommaire.
-
Cliquez sur Soumettre et sur Fermer pour quitter la demande de travail. Après quelques minutes, la demande de travail sera terminée et le VCN apparaîtra dans les ressources protégées. Nous pouvons également archiver le VCN pour nous assurer que l'attribut de sécurité a été affecté.
-
Répétez les étapes 1 à 3 pour voir l'attribut de sécurité affecté à votre VCN.
-
Tâche 6 : Tester la stratégie
Maintenant, la configuration d'acheminement des paquets OCI sans confiance est terminée. La dernière tâche consiste à tester la politique. Dans ce tutoriel, nous avons deux scénarios de test.
-
Le premier scénario de test consiste à s'assurer que client-prod peut toujours accéder à la base de données financeprod.
-
Connectez-vous à votre instance de calcul client-prod à l'aide de SSH en tant qu'utilisateur
opc
.La politique d'acheminement de paquet de confiance zéro OCI autorise cette connexion à partir de votre machine locale. Par conséquent, votre connexion SSH doit être établie.
-
Exécutez la commande
sqlplus
pour vous connecter à votre base de données autonome.Votre politique d'acheminement de paquet de confiance zéro OCI autorise cette connexion à partir de votre client de production (client-prod) à votre base de données de production (financeprod). Par conséquent, vous devez vous connecter à votre base de données et pouvoir exécuter la commande
show user;
.
-
-
Le deuxième scénario de test consiste à s'assurer que client-dev ne peut plus accéder à la base de données financeprod.
-
Connectez-vous à votre instance de calcul client-dev à l'aide de SSH en tant qu'utilisateur
opc
.Votre politique d'acheminement de trousse de confiance zéro autorise cette connexion à partir de votre machine locale. Par conséquent, votre connexion SSH doit être établie.
-
Exécutez la commande
sqlplus
pour vous connecter à votre base de données autonome.Comme il n'existe aucune politique d'acheminement de paquet de confiance OCI zéro autorisant cette connexion de votre client de développement (client-dev) à votre base de données de production (financeprod), la connexion sera bloquée.
-
Liens connexes
Confirmation
- Auteurs - Paul Toal (CISO sur le terrain, directeur principal)
Autres ressources d'apprentissage
Explorez d'autres laboratoires sur la page docs.oracle.com/learn ou accédez à plus de contenu d'apprentissage gratuit sur le canal YouTube d'Oracle Learning. De plus, visitez education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir de la documentation sur le produit, visitez Oracle Help Center.
Create and Configure Oracle Cloud Infrastructure Zero Trust Packet Routing
G17496-01
October 2024