web-dev-qa-db-fra.com

Approches alternatives à l'utilisation DMZ=== pour la sécurisation de la communication vers et depuis le serveur Web externe à l'extérieur du pare-feu

Je suis un développeur de logiciels avec de petites connaissances en matière de sécurité réseau et presque aucune connaissance de l'architecture de réseau actuelle de l'environnement que je travaille. Si j'en faisais, je ne voudrais toujours pas divulguer d'informations en tant que tel pourrait être un risque de sécurité. Actuellement, la politique de l'entreprise empêche toute communication de serveur en dehors de notre réseau. À mesure que les besoins changent, je cherche un moyen de relancer à la direction qu'une approche alternative sûre, fiable et sécurisée existe pour permettre à un serveur Web externe de communiquer avec un serveur interne et inversement.

Je suppose que l'itinéraire d'avoir un serveur d'entreprise dans le DMZ === était d'éviter les problèmes de ne pas avoir d'accès à distance et de ne pas être régi par l'équipe de réseau de la société. L'approche souhaitée est d'utiliser éventuellement un tiers -Le service de point de vue tel que par le biais d'un service en nuage et gagne ainsi un contrôle sur nos propres déploiements.

Une approche alternative qui a été suggérée par un pair d'avoir un serveur dans le DMZ = autoriser uniquement la communication avec le protocole HTTP, bloquez tous les ports, mais 80 (pas sûr si sur le serveur et/ou le pare-feu) , et n'autorise que get et POST Verbes.

Veuillez m'éclairer avec les possibilités, les préoccupations, les effets secondaires, les suggestions et les approches alternatives de la possibilité de permettre à un serveur externe de communiquer en interne et inversement qui n'impliquent pas de DMZ. S'il vous plaît n'utilisez pas un lien vers un 500 pages PDF comme votre réponse à moins que cela ne soit fourni comme une référence avec de bons détails.

Merci d'avance!

7
Alban

La réponse traditionnelle est une architecture à trois niveaux: Web, application et données. Votre couche Web est isolée à l'avant et ne peut parler que sur le serveur d'applications avec des méthodes limitées (par exemple, un petit nombre d'appels RPC-ISH disponibles). Le serveur d'applications parle ensuite à la couche Data (Base) et, bien sûr, vous pouvez faire tout problème avec les procédures ACL ou stockées pour le rendre plus sécurisé. À des fins de sécurité, une architecture à trois niveaux est une bonne solution lorsque cela est fait à droite.

Vous êtes une suggestion de pair à propos de seulement permettre le port 80 est en quelque sorte un minimum supposé. Et Whitelisting Les verbes vont bien, mais réalisez que la majorité des attaques que vous ferez face au-dessus de cette couche et vous dirigera très heureusement sur GET/POST. Ce qui mène dans la réponse moderne: les systèmes de prévention des intrusions qui surveilleront tout le trafic en passant, détectent des modèles malveillants et agissent pour les interdire.

La réponse traditionnelle et la réponse moderne menent toutes à la réponse réelle: vous ne pouvez pas définir [un serveur Web externe] qui est aussi sûr, fiable et sécurisé comme n'entre aucun en premier lieu. Tout ce que vous faites augmenterez votre risque par une marge. Comment vous allez changer la taille de cette marge de risque. Que vous opiez avec une architecture de trois niveaux, des IDS/IPS, une surveillance des journaux et une alerte, etc. Vous et votre gestion décidez comment atténuer le risque et l'obtenir à un niveau acceptable.

Et malheureusement, apprendre à atténuer en toute sécurité les moyens de risque de creuser via 500 pdfs de page pour apprendre les astuces. Un chapeau pour un chat ou un chat pour un chapeau, mais rien pour rien.

6
gowenfawr