Concevoir un réseau multiniveau sécurisé

Lors de la conception d'un réseau à plusieurs niveaux sécurisé, créez l'architecture en couches.

Placez les ressources les plus confidentielles, telles que les bases de données, dans la couche interne des sous-réseaux privés. Définissez des règles de sécurité pour contrôler l'accès réseau aux ressources. Acheminer le trafic à partir d'Internet public via des hôtes de bastion et des équilibreurs de charge.

Déterminer la stratégie de sous-réseau

Un sous-réseau est une plage contiguë d'adresses IP au sein d'un réseau cloud virtuel. Pour contrôler le trafic réseau vers et à partir d'un sous-réseau, vous pouvez attacher des listes de sécurité, une table de routage et un ensemble d'options DHCP.

Lors de la détermination de la stratégie de sous-réseau, prenez en compte les facteurs suivants :
  • Vous ne pouvez pas modifier la taille d'un sous-réseau après l'avoir créé. Vous devez donc planifier la taille de tous les sous-réseaux dont vous avez besoin avant de les créer.
  • Un sous-réseau peut être privé ou public. Vous pouvez choisir cette option lorsque vous créez les sous-réseaux et vous ne pourrez pas les modifier ultérieurement.
  • La stratégie habituelle consiste à créer uniquement des sous-réseaux privés.
    • Le trafic à partir de votre réseau sur site peut utiliser une connexion VPN IPSec ou un lien Oracle Cloud Infrastructure FastConnect.
    • Le trafic d'Internet public peut être acheminé via un équilibreur de charge public.
    • La liaison de trafic pour le réseau Internet public peut être acheminée via une passerelle NAT (Network Address Translation). La passerelle NAT permet aux ressources d'un sous-réseau privé d'établir des connexions sortantes à Internet et de recevoir des données sur la même connexion. Il n'autorise pas les connexions entrantes à partir d'Internet.
  • Si l'architecture de l'application exige des adresses IP publiques (par exemple, lorsque vous migrez une application sur site vers le cloud), utilisez une architecture contenant à la fois des sous-réseaux privés et publics.
  • Créez les sous-réseaux dans les catégories où vous prévoyez de fournir des infos de paramétrage pour les ressources qui ont besoin des sous-réseaux.
  • Un sous-réseau peut être propre à un domaine de disponibilité (AD) ou régional. Les échecs AD n'affectent pas les sous-réseaux régionaux.

Listes de sécurité de conception

Pour chaque sous-réseau, vous pouvez créer des règles de sécurité qui indiquent la source, la destination et le type de trafic qui doivent être autorisés dans et hors sous-réseau. Vous définissez ces règles dans les listes de sécurité et associez les listes de sécurité aux sous-réseaux.

Pour implémenter un contrôle granulaire sur l'entrée et pour plus d'informations sur le trafic réseau, vous pouvez créer des listes de sécurité pour des sous-réseaux individuels. Vous pouvez conserver les règles communes à tous les sous-réseaux dans une liste de sécurité distincte (globale). Voici quelques types de liste de sécurité que vous pouvez prendre en compte :
  • Liste de sécurité globale : cette liste de sécurité contient les règles à utiliser pour tous les sous-réseaux. Généralement, cette liste contient quelques règles.
  • Liste de sécurité propre à l'agent : vous pouvez définir des listes de sécurité pour des niveaux particuliers de l'architecture à plusieurs niveaux (par exemple, la logique métier ou le niveau de base de données). En concevant attentivement les sous-réseaux, vous pouvez réduire considérablement le nombre de règles de sécurité nécessaires pour la communication entre les niveaux. Par exemple, vous pouvez autoriser le niveau de logique métier à communiquer avec le niveau de base de données en créant uniquement deux règles de sécurité (une entrée et une autre sortie).
  • Liste de sécurité Famille : cette liste concerne les règles de sécurité qui s'appliquent aux sous-réseaux composant un service unique ou qui représentent un client unique dans un domaine de disponibilité. Par exemple, les règles qui s'appliquent aux sous-réseaux de service d'équilibreur de charge, d'application et Web dans un domaine de disponibilité du niveau de logique métier.
  • Listes de sécurité propres au sous-réseau : ces listes contiennent des règles propres aux sous-réseaux individuels.
  • Liste de sécurité temporaire : vous pouvez utiliser une liste de sécurité temporaire pour les règles que vous testez ou testez. Par exemple, lors du test d'un cas d'emploi entrant spécifique, vous pouvez créer les règles requises dans une liste de sécurité temporaire.

Définir les règles de sécurité

Utilisez des règles de sécurité pour contrôler le trafic réseau vers et à partir de vos ressources. Chaque règle définit la direction, la source, la destination, le port et le protocole pour lesquels le trafic est autorisé.

Le tableau suivant est un exemple de règles que vous devez définir par famille de sous-réseau. Déterminez les règles requises par vos applications.

Famille de sous-réseau Règles d'entrée Règles de sortie
DMZ
  • TCP/22 partout
  • TCP/80 partout
  • TCP/443 partout
TCP/22 pour le réseau cloud virtuel
Equilibreur de charge
  • TCP/80 partout
  • TCP/443 partout
  • TCP/80 au niveau intermédiaire (middle tier)
  • TCP/443 au niveau intermédiaire (middle tier)
Niveau intermédiaire
  • TCP/80 à partir de l'équilibreur de charge
  • TCP/443 à partir de l'équilibreur de charge
TCP/1521 au niveau base de données
Base de données TCP/1521 à partir du niveau intermédiaire (middle tier) None

Remarque :

La définition de listes et de règles de sécurité constitue la première étape de sécurisation de votre réseau. Avant d'afficher votre réseau à Internet, prenez en compte la méthode d'adresse de déni de service (DDoS) distribué, d'injection SQL et d'autres attaques réseau.

Définir des catégories

Utilisez des catégories pour organiser vos ressources cloud dans des conteneurs logiques et contrôler l'accès aux ressources. Les stratégies que vous définissez contrôlent la capacité des utilisateurs à créer et gérer des ressources dans des catégories spécifiques.

Concevez vos catégories et vos stratégies en fonction de la façon dont vos ressources cloud sont gérées. L'objectif est de s'assurer que les utilisateurs ont accès uniquement aux ressources dont ils ont besoin en fonction de leurs rôles fonctionnels et informatiques. Par exemple, si un groupe d'utilisateurs gère le niveau intermédiaire (middle tier) et un autre groupe gère le niveau de base de données, créez un compartiment pour chaque niveau. Même si un seul utilisateur des ressources humaines gère les deux niveaux, utilisez une catégorie distincte pour chaque niveau. Cette approche vous permet de séparer facilement les droits d'accès si nécessaire.

Les catégories permettent également de suivre et de gérer l'utilisation du budget cloud. Par exemple, vous pouvez créer une catégorie pour chaque service de votre organisation et surveiller les ressources cloud dans chaque compartiment.

Affectez des noms logiques à vos catégories. Utilisez une convention de dénomination qui vous permet d'identifier facilement la nature et l'état des ressources dans le conteneur.

Le tableau suivant fournit un exemple de structure de compartiments et de sous-réseaux pour une architecture multiniveau classique. Dans cet exemple, xxx dans le nom du compartiment (par exemple, Dev, Test, Stage ou Prod ; et yyy peuvent être le nom de votre application ou de votre charge globale). Par exemple, le nom Prod_Ordering_SharedServices indique que la catégorie contient des ressources de production utilisées par les services partagés de l'application de tri.

Catégories Sous-réseaux Ressources
xxx _ yyy _Networks None Réseau cloud virtuel et passerelles
xxx _ yyy _Admin Sous-réseau DMZ Hôtes de base
xxx _ yyy _BusinessLogic
  • Sous-réseaux de serveur Web
  • Sous-réseaux de serveurs d'applications
  • Equilibrer les sous-réseaux
  • Instances de serveur Web
  • Instances de serveur d'applications
  • Noeuds d'équilibrage de charge
xxx _ yyy _Database Régions de données Instances de base de données
xxx _ yyy _SharedServices Sous-réseaux Shared Services Composants partagés

Créez le réseau cloud virtuel et ses passerelles dans la catégorie xxx _ yyy _Networks et créez les sous-réseaux requis dans les autres compartiments.

Créer des utilisateurs

Chaque personne ou système qui doit créer ou gérer des ressources doit être défini en tant qu'utilisateur d'Oracle Cloud Infrastructure Identity and Access Management (IAM) ou dans un fournisseur d'identités fédéré. Créez les utilisateurs requis.

Lorsque vous vous inscrivez à un compte Oracle Cloud, Oracle configure un administrateur et affecte l'utilisateur à un groupe nommé Administrateurs. Vous ne pouvez pas supprimer ce groupe. Vous pouvez y ajouter d'autres utilisateurs. Une stratégie prédéfinie permet au groupe Administrateurs de gérer toutes les ressources dans Oracle Cloud Infrastructure.

Créez les utilisateurs requis. Si votre compte utilise un fournisseur d'identités fédéré (par exemple, Oracle Identity Cloud Service ), créez les utilisateurs dans ce fournisseur d'identités.

Si vos utilisateurs fédérés ont besoin de gérer des clés d'API et des jetons d'authentification, assurez-vous que le fournisseur d'identités fédéré est configuré pour provisionner les utilisateurs dans IAM. (Cette configuration est requise uniquement pour les comptes créés avant le 21 décembre 2018.) Sinon, créez un utilisateur local dans IAM.

Planifier vos groupes et stratégies

Vous pouvez contrôler les droits d'accès d'un utilisateur en lui ajoutant l'utilisateur à un groupe ou en le retirant d'un groupe. Planifiez les groupes requis et les stratégies pour permettre aux groupes de gérer les ressources dans des catégories spécifiques.

Vous pouvez affecter un utilisateur à des groupes. Les stratégies régissent l'accès aux ressources Oracle Cloud Infrastructure. Une stratégie indique les droits d'accès pour des groupes, des utilisateurs ou des catégories.

Le tableau suivant répertorie les groupes et les droits d'accès requis, généralement pour une architecture à plusieurs niveaux :

Groupe Droits d'accès
DBAdmins
  • Lire toutes les ressources dans la location.
  • Gérez les ressources de base de données.
IAMAdminManagers
  • Gérer les utilisateurs.
  • Gérez les groupes Administrators et NetSecAdmins.

Remarque : Oracle crée le groupe Administrators lorsque vous vous abonnez à Oracle Cloud. Les utilisateurs de ce groupe disposent d'un accès complet à toutes les ressources de la location, y compris la gestion des utilisateurs et des groupes. Limitez l'appartenance à ce groupe.

IAMManagers
  • Gérer les utilisateurs.
  • Gérez tous les groupes, à l'exception des groupes Administrators et NetSecAdmins.
NetworkAdmins
  • Lire toutes les ressources dans la location.
  • Gérez toutes les ressources réseau, à l'exception des listes de sécurité, des passerelles Internet, des connexions VPN IPSec et de l'équipement personnalisé.
NetSecAdmins
  • Lire toutes les ressources dans la location.
  • Gérez les listes de sécurité, les passerelles Internet, l'équipement personnalisé, les connexions VPN IPSec et les équilibreurs de charge.
  • Utilisez toutes les ressources de réseau virtuel.
ReadOnly Visualisez et inspectez la location. Ce groupe est destiné aux utilisateurs qui ne sont pas censés créer ou gérer des ressources (par exemple, des auditeurs et des stagiaires).
StorageAdmins
  • Lire toutes les ressources dans la location.
  • Gérer les ressources de volume de blocs et de stockage d'objets.
SysAdmins
  • Lire toutes les ressources dans la location.
  • Gérez les ressources de calcul et de stockage.
  • Gérer les catégories.
  • Utilisez des équilibreurs de charge, des sous-réseaux et des cartes d'interface réseau virtuelles.

Dans votre fournisseur d'identités fédéré (par exemple, Oracle Identity Cloud Service ), vous devez créer les groupes requis et mettre en correspondance chaque groupe avec le groupe correspondant dans Oracle Cloud Infrastructure Identity and Access Management.