Los administradores de nuestra red insisten en que no es seguro para nuestros servidores web, que están alojados en la DMZ, acceder al servidor de base de datos detrás de nuestro firewall. Para solucionar el problema, accedemos a los datos a través de servicios web o WCF. Creo que esta es una carga de rendimiento innecesaria que podría eliminarse si el servidor web pudiera acceder a la base de datos directamente.
Las razones que se me han dado es que un pirata informático pudo iniciar sesión en el servidor web y luego acceder a la base de datos. ¿Es posible abrir los puertos solo para IIS o no es posible ser tan específico? Si podemos limitarlo solo a IIS, ¿podría esto ser fácilmente comprendido por el hacker?
He leído varias publicaciones en Internet, pero parece que no puedo encontrar una respuesta definitiva.
Alabama
Respuestas:
He establecido plataformas para empresas a gran escala y la práctica normal es garantizar que sus bases de datos se encuentren en una VLAN diferente de sus servidores web con un firewall ubicado entre el tráfico de enrutamiento al puerto del servidor de la base de datos, así como un firewall frente a su web servidores Normalmente, su firewall frontal reenviará el puerto 80 (HTTP) y el puerto 443 (HTTPS) a sus servidores web. El firewall ubicado entre el servidor web y el servidor de la base de datos reenviará el tráfico de los servidores web al puerto utilizado por su base de datos (generalmente el puerto 1433 si usa Microsoft SQL Server).
Para mayor seguridad:
Si su base de datos es la base de datos MI6 o CIA, entonces los administradores de su red probablemente tengan razón, pero a mí también me parece que están exagerando.
Si la base de datos contiene datos que no se pueden exponer absolutamente a una red pública pero los datos que necesita su base de datos no son tan confidenciales, ¿podría replicar las tablas que su sitio web requiere en una base de datos que se encuentra en su entorno de alojamiento?
Les haría la pregunta:
fuente
Sus servidores web también pueden estar detrás de un firewall, solo necesitan que el puerto 80 se reenvíe al servidor correcto. Todos los demás puertos que su servidor web no necesita deben estar cerrados en el firewall más externo. Entonces debería haber un firewall entre sus servidores web y sus servidores de datos. En ese cortafuegos solo permitirá que los puertos de los que hablan las bases de datos estén abiertos.
Aquí hay un diagrama
Internet -> Firewall -> Servidores web -> Firewall -> Bases de datos
Para su información, soy un desarrollador, aunque trabajo con nuestro personal de TI a menudo en mi empresa, ya que somos una pequeña tienda.
fuente