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:
- Asegúrese de utilizar una cuenta menos privilegiada para acceder a los servidores de bases de datos
- Si está utilizando ASP.NET, puede cifrar la cadena de conexión de su base de datos en web.config
- Contratar a una empresa de terceros para llevar a cabo una prueba de penetración para informar sobre cualquier vulnerabilidad.
- Asegúrese de que las actualizaciones y los Service Packs estén instalados regularmente.
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:
- Si un hacker obtiene acceso al servidor web, ¿podrían llamar a sus servicios web?
- Si se descubre una vulnerabilidad en IIS que les permitió acceder a su servidor web, ¿seguramente explotarán la misma vulnerabilidad en el servidor web que aloja sus servicios web?
- ¿Podrían instalar un software que supervise la entrada del usuario para detectar contraseñas en la memoria?