La mejor solución, como se ha indicado, es obtener un plan de alojamiento web real que permita https. Esto no debería ser demasiado costoso, de hecho, incluso debería ser posible encontrar un proveedor gratuito para proporcione esto.
En su defecto, ¿cuál es su caso de uso? Parece que tiene en mente un grupo de usuarios para su sitio web. Si ese es el caso y no solo está ofreciendo un servicio de notificación de eventos por suscripción a personas al azar en Internet, considere proporcionar la base para una conexión "segura" en un canal diferente.
Se me ocurre que enviar el código a su máquina por otra fuente confiable (publicar CD's por correo electrónico e informarlos por correo electrónico, simplemente enviar el software como un archivo adjunto a un correo electrónico firmado digitalmente, etc.) permite Usted debe cargar previamente el software con una clave pública criptográfica.
Luego, puede negociar una conexión segura a través de un método de conexión no seguro (como http) ya que el código que determina si el servidor ha descifrado satisfactoriamente los datos cifrados con su clave pública vive en el cliente. El resultado es un flujo de datos de la aplicación http 'texto sin formato', con la arruga de que los datos de la aplicación en sí están cifrados.
Esto es un montón de problemas y un método no estándar. Tiene problemas con la implementación ya que pocas personas lo han intentado para ofrecer asesoramiento, y con seguridad, ya que pocas personas han revisado su confiabilidad *.
El canal alternativo puede tener problemas de seguridad. ¿Se podría interceptar el correo? ¿Podrían los estafadores hacerse pasar por su organización y enviar su propia versión "segura" de su software? ¿Sus usuarios son lo suficientemente inteligentes como para verificar las firmas digitales en los correos electrónicos que envía? Estas son todas las preocupaciones que deberá considerar y aceptar como riesgos o intentar mitigar con soluciones novedosas, ya que tiene menos orientación no solo sobre cómo implementar, sino también qué preguntas debe hacer (debe hacer preguntas). más que solo estos tres!).
Al hablar con la gerencia de la ONG, considere delinear la situación en estos términos:
- El último método implica un riesgo significativo y terminará costándoles más tiempo de implementación que el que pagará simplemente por el alojamiento. El programa debe actualizarse, especialmente si el servidor (o el par de claves del servidor) cambia, y continuamente distribuido a nuevos usuarios después de la implementación inicial.
- No hacer nada en absoluto y usar una contraseña en http con direcciones y nombres (y potencialmente direcciones de correo electrónico) podría ser un desastre de relaciones públicas si alguna información se filtra (y lo hará), un riesgo importante. Esto se ve agravado por el hecho de que las personas reutilizan las contraseñas y su mala práctica podría estar vinculada a violaciones posteriores.
- Como tal, se le ha dado un pensamiento significativo a la situación y no solo va a sugerir la solución descrita en el paso 4 porque 'todos lo hacen' (aunque, en el caso de que todos lo hagan porque es una buena práctica, esto no es fácil una cosa mala). Ser capaz de proponer la solución alternativa (si es complicada y excesiva) descrita en los pasos 1 y amp; 2 es evidencia de que se está llevando a cabo esta diligencia debida.
- En base a esto, https hosting con bajo costo (o sin costo) en curso es el enfoque menos costoso y menos riesgoso.
* Jonathan Gray entra en por qué se encontrará con problemas al codificar un sistema seguro en su respuesta , vea la sección que comienza "TLS es también un sistema mucho más intrínseco"