Alojar varios sitios web de forma segura

4

Sorprendentemente, no pude encontrar ningún tema relacionado aquí, así que voy a poner esto. Tengo varios sitios web que se ejecutan en el mismo servidor, construido con varios CMS y marcos. Necesito aislarlos completamente. Necesito esto porque en el futuro quiero permitir que algunos de mis clientes alojen sitios web en estos servidores, incluso algunos códigos potencialmente vulnerables (sitios llenos de complementos de wp obsoletos, etc.). Dado que no quiero asumir la responsabilidad del código de los clientes, debo asegurarme de que el entorno sea seguro y, si uno de ellos se piratea, los demás funcionan bien y el servidor en sí no está comprometido.

Lo que tengo ahora es un entorno muy experimental con chroot jailed sftp access. El problema es (y podría haber otros factores de riesgo también), que todos los sitios web son administrados por el mismo usuario del servidor web, digamos www-data . Entonces, en teoría, un ataque que implique cargar malware y ejecutarlo desde el navegador puede dañar a todos los sitios web con un código propiedad de www-data . Ideas similares vienen a la mente para el usuario de la base de datos del sistema (no el usuario que le doy al cliente, sino el usuario que ejecuta el proceso mysql).

¿Cuál es la mejor práctica para manejar este problema? Además, si tiene algo, listas de verificación, lo que sea, no dude en compartir :)

    
pregunta Rápli András 31.03.2016 - 14:41
fuente

1 respuesta

3

Instale un hipervisor de máquina virtual en su servidor (s) y cree una máquina virtual separada para cada usuario que ejecute un servidor web propio y una instancia de base de datos.

Cuando no tiene una dirección IP pública única para cada usuario, puede apuntar todas las entradas de DNS a la misma IP pública donde ejecuta un proxy inverso que dirige cada solicitud a la LAN-IP de la VM correcta (efecto secundario: desde la perspectiva de los usuarios, todas las solicitudes aparecerán como originadas en el proxy inverso).

Esto le permite al usuario hacer lo que quiera con su VM y, cuando la caguen por completo, solo tiene que restablecer la VM. La configuración de cuotas de CPU y RAM para las máquinas virtuales también evita que sus usuarios se dosifiquen entre sí mediante el consumo de recursos.

Otra ventaja es que puede permitir a los usuarios modificar la configuración de su servidor web sin ningún conflicto con otros usuarios. Esto puede ser útil cuando los usuarios tienen requisitos conflictivos con respecto a ciertas configuraciones o versiones de software.

    
respondido por el Philipp 31.03.2016 - 15:12
fuente

Lea otras preguntas en las etiquetas