Estoy alojando el mismo sitio web en dos ubicaciones:
- Una ubicación pública
https://mysite.com
(AWS alojado) - Una ubicación en una LAN con DNS
https://mysite.local
.
mysite.com
es un servicio que se dirige a usuarios con conectividad muy deficiente y mysite.local
es un clon del mismo servicio. Mi objetivo es que la versión local pueda servir como una copia de seguridad transparente cuando la conectividad a mysite.com
es deficiente.
Entonces mi usuario navega a mysite.com
en Chrome. Por lo general, el contenido se sirve desde AppCache. En el script, comprueba si mysite.local
está disponible. Si es así, si la conexión es segura. Si es así, uso mysite.local
como backend para la sesión (incluida la escritura de datos privados del usuario). Si no, intento usar el mysite.com
público.
Estoy planeando usar openssl
para autofirmar un certificado de CA y usarlo para producir un certificado para mysite.local
. El servidor web (nginx) solo acepta solicitudes HTTPS y utiliza ese certificado. Proporciono pasos para que mi usuario agregue la clave pública de mi certificado de CA a su lista de CA de confianza. Ellos confían en mí y no tienen ningún problema en hacer esto.
Soy consciente de que un atacante en otra red LAN podría configurar un DNS local y crear su propio mysite.local
, pero sería difícil para ellos obtener un certificado de confianza para ese dominio en el dispositivo de mi usuario.
¿Estoy poniendo en riesgo los datos de mi usuario con este tipo de configuración? ¿Cómo puedo mejorarlo?