J'ai une architecture classique DMZ:
Mon serveur Web est placé dans la DMZ. Le serveur Web doit communiquer avec un serveur de base de données. Ce serveur de base de données est le composant le plus critique de mon réseau car il contient des données confidentielles.
Où dois-je placer le serveur DB et pourquoi? Dois-je ajouter un deuxième pare-feu et créer une autre DMZ?
D'accord avec Jeff Ferland, les serveurs de base de données doivent être autonomes: vous devez avoir un réseau propre pour la réplication et la sauvegarde.
Pardonnez mon ASCII art, un bref aperçu d'un idéal raisonnable:
[internet]
|
outer-firewall--- [proxy-zone]
|
----- [app-zone]
|
inner-firewall
[lan]--/ \-- [database-zone]
Vous essayez d'atténuer, alors:
Des zones séparées facilitent le travail de votre IDS et la journalisation est plus efficace. Si vous avez les ressources, ajoutez une zone de gestion, séparez les cartes réseau de gestion pour chaque serveur (ports protégés si vous le pouvez).
En réalité, vous pouvez finir par compacter le "réseau idéal" en un seul pare-feu et VLAN, mais si vous considérez vos options maintenant avec ce qui précède à l'esprit, il devrait être plus facile de migrer à l'avenir, c'est-à-dire peu de temps après la prochaine visite de votre quartier amical Auditeur PCI-DSS ;-)
Ce qui suit est une configuration assez courante pour DMZ architectecutre:
L'Internet
^
Pare-feu1
^
DMZ (hébergez vos serveurs dmz ici uniquement en autorisant des ports spécifiques à travers le pare-feu)
^
Pare-feu2
^
Réseau de base de données (autoriser uniquement des ports et protocoles spécifiques du pare-feu2 vers ce réseau)
Comme vous le mentionnez, la base de données contient des données de carte de crédit (sensibles), même à l'intérieur du pare-feu2, le réseau de base de données doit être séparé des réseaux d'entreprise et d'utilisateurs. Tant de fois je vois les joyaux de la couronne d'une entreprise grande ouverte sur le réseau interne pour que tous les utilisateurs puissent y accéder et y accéder. En allant plus loin, vous pourriez avoir un administrateur de base de données VLAN autoriser uniquement les systèmes au sein de cette autorisation VLAN à accéder aux bases de données (à l'exception de l'application qui doit accéder à depuis le DMZ bien sûr).
J'espère que cela t'aides.
L'architecture à 3 niveaux est la solution la plus sécurisée et évolutive. À mesure que le trafic client augmente, nous pouvons additionner autant de niveaux intermédiaires nécessaires pour garantir les performances. L'architecture à trois niveaux est également plus sécurisée car la couche intermédiaire protège le niveau de la base de données. Nous devons protéger le niveau de la base de données contre l'accès direct et nous devons le placer dans la zone de confiance et il ne devrait accepter que les connexions des serveurs d'applications.
Comme vous devrez vous conformer à PCI-DSS, vous devrez également vous assurer que vous disposez de pare-feu à chaque connexion Internet et entre DMZ et les réseaux internes. Il existe de bons conseils dans les questionnaires d'auto-évaluation.
Ne faites pas non plus du serveur de base de données si une boîte Wintel est membre du domaine, etc.
Je préférerais une architecture où le serveur de base de données est protégé par plus qu'un simple pare-feu. Autrement dit, je suppose que le serveur Web est compromis - mais au lieu de pouvoir effectuer des opérations de base de données arbitraires, il ne peut extraire que des données extrêmement limitées d'un serveur intermédiaire. Un passionné de base de données affirmerait que toute base de données disposera d'une fonction de vérification des privilèges suffisante. Mais bon, défense en profondeur.