Hay varios niveles de protección que puedes usar. Lo más básico sería configurarlos como sitios separados que se ejecutan como usuarios diferentes y permitir que cada usuario acceda a los activos que necesita. En un nivel básico, esto debería evitar que un sitio pueda acceder al otro.
Todavía hay algunos ataques que pueden escapar de esto (si, por ejemplo, pueden escalar privilegios). Para ofrecer mayor protección, puede hacer algo como ejecutar máquinas virtuales para cada uno de los sitios que mejorarán la capacidad de cada sitio. Todavía hay algunas formas teóricas para escapar de una máquina virtual, pero estarías muy bien protegido en ese momento, pero también tendrías demandas de recursos mucho más altas (ya que tendrían que estar en ejecución dos núcleos adicionales).
También hay algunos otros niveles que podrías hacer en medio de ese intento de hacer un aislamiento de la caja de arena sin hacer una VM completa, pero no sé mucho sobre esas técnicas o su efectividad. Personalmente, para todos los sitios que he ejecutado, simplemente configurando correctamente a los usuarios y permitiendo que cada sitio acceda a sus propios activos (y manteniendo el servidor parcheado) ha sido suficiente para mis necesidades.