¿Hay otras opciones además de HTTPS para asegurar un sitio web para evitar advertencias de entrada de texto en Chrome?


16

Hace una semana, Google me envió un correo electrónico para usar HTTPS. Si no transfiero HTTP a HTTPS, mostrará mi conexión no segura a todos los visitantes de mi sitio que intentarán ingresar texto en mi sitio.

Sin usar SSL, ¿hay alguna otra forma de asegurar mi conexión? Como está relacionado con un proceso costoso para usar SSL en la URL de la web, estoy buscando cualquier otra opción.


27
¿Has mirado en letsencrypt.org ? Emite certificados HTTPS gratuitos. Es un poco complicado configurarlo desde cero, pero muchas compañías de hosting lo han implementado para usted.
Stephen Ostermiller

66
También puede usar cloudflare que le dará un certificado SSL de forma gratuita.
Ave

2
La pregunta no es "cómo usar HTTPS", sino más amplia que eso: si http://no está bien, ¿qué más hay además https://? ¿Hay una abc://, lgbtqiapk+://o dps://?
Konerak

44
¿"Proceso costoso"? Encriptemos es gratis. También: doesmysiteneedhttps.com
Andrea Lazzarotto

Respuestas:


41

¿Hay alguna otra forma de asegurar mi conexión?

Google no solo se queja de la "seguridad" (que podría incluir varios temas diferentes), sino que se dirige específicamente al cifrado / HTTPS. Con HTTP simple, la conexión entre el cliente y el servidor no está encriptada, lo que permite a cualquier persona ver e interceptar cualquier cosa que se envíe. Normalmente solo se le solicitará esto si está permitiendo que los usuarios inicien sesión (es decir, enviando nombre de usuario / contraseña) o enviando información de pago a través de una conexión no cifrada. Los envíos generales de formularios de "texto" no serían necesariamente un problema. Sin embargo, como señaló @Kevin en los comentarios, Google / Chrome planea extender esto en el futuro :

Eventualmente, planeamos etiquetar todas las páginas HTTP como no seguras y cambiar el indicador de seguridad HTTP al triángulo rojo que usamos para HTTPS rotos.

Instalar un certificado SSL en su sitio (o usar un proxy front-end como Cloudflare para manejar el SLL) es la única forma de cifrar el tráfico a su sitio.

Sin embargo, esto no es necesariamente un "proceso costoso" en estos días. Cloudflare tiene una opción "gratuita" y Let's Encrypt es una autoridad de certificación gratuita que muchos hosts admiten de forma predeterminada.


3
"Normalmente solo se le solicitará esto si permite que los usuarios inicien sesión (enviando nombre de usuario / contraseña) o enviando información personal a través de una conexión no cifrada. El" texto "general no necesariamente sería un problema". Esto pronto ya no será cierto; Chrome mostrará la advertencia para CUALQUIER campo de entrada de texto. Después de todo, no puede diferenciar entre información potencialmente confidencial y cosas benignas como búsquedas, por lo que se tomó la decisión de advertir sobre todo.
Muzer

2
@Muzer En general, tampoco es decidible si la entrada de texto es delicada: si escribo la dirección de mi casa o busco mi problema médico embarazoso, eso podría ser muy interesante para un espía.
apsillers

66
Finalmente, Chrome mostrará esta advertencia para todos los sitios HTTP , por lo que no hay una alternativa a largo plazo para HTTPS.
Kevin

3
A esta respuesta le falta la mayor ventaja de HTTPS sobre el cifrado de extremo a extremo, que es la identidad. HTTPS permite que su servidor demuestre a sus clientes que en realidad es el servidor que dice ser sin tener que organizar específicamente un método de autenticación con anticipación. El cifrado de extremo a extremo por sí solo no ayuda si el cliente se ha conectado a un servidor propiedad de un actor malicioso.
IllusiveBrian

44
@IllusiveBrian Aunque esta pregunta no se trata realmente de las "ventajas de HTTPS" (hay preguntas existentes que ya cubren eso), esta pregunta se trata de tratar de evitar la "advertencia" de seguridad del navegador en Google / Chrome. Pero HTTPS no necesariamente "prueba identidad": para hacerlo, deberá pagar más dinero por un certificado OV o EV. En el contexto de esta pregunta, se trata de cifrado.
DocRoot

4

No lo recomiendo, pero puede omitir este mensaje al no utilizar los campos de texto de entrada originales. Puede crear sus propios campos de entrada, utilizando regulares divque tienen onkeypressevento. O puede crear un divelemento que tenga el contenteditableatributo establecido en true.

De esta manera, los usuarios podrán ingresar información en su sitio, sin usar inputelementos de etiqueta.


41
Esta es una muy mala idea. No resuelve el problema de seguridad que Google lo alienta a resolver, y es probable que cause problemas a los usuarios que usan su sitio de una manera ligeramente diferente a cómo lo probó (por ejemplo, un navegador diferente, un teléfono, un lector de pantalla, etc.) También es probable que rompa los administradores de contraseñas.
thelem

Publicar el formulario sería problemático con este enfoque.
the_lotus

3
No necesita publicar el FORMULARIO. Puede usar XMLlHTTPRequest(también conocido como AJAX) para enviar la información
Aminadav Glickshtein

18
Cambiaría tu respuesta de "no recomendar" a "nunca hagas esto". Está eludiendo tantos estándares haciendo esto que bien podría no estar creando una aplicación web nunca más.
Caimen

2
¿Realmente necesito 125 puntos para rechazar esta cosa? oO
Andrea Lazzarotto

4

Si solo está sirviendo archivos estáticos o puede poner un proxy al frente, podría usar un servidor como el servidor caddy que maneja todo esto por usted mediante el uso de cifrado, esto elimina el dolor de los certificados de aprovisionamiento y no tiene que hacerlo Instalar cualquier otro software.

Alternativamente, podría usar un servicio como cloudflare : su plan gratuito ofrece https gratis.

Finalmente, algunos hosts ofrecen certificados https gratuitos ahora, incluido dreamhost . Así que verifique si su host actual ofrece esto como una opción.

No recomendaría tratar de encontrar una solución, solo hay una forma de hacer que su sitio sea seguro, y los navegadores eventualmente avisarán en cada sitio que no tenga https, sin importar el contenido. La web se está moviendo hacia https en todas partes.


1
Firefox también ha introducido advertencias en las páginas de inicio de sesión inseguras, y todos los principales navegadores han optado por proporcionar http2 solo con soporte https, lo que significa que la próxima versión del protocolo es solo https de facto.
Kenny Grant

1
@closetnoc GoDaddy es una estafa de múltiples maneras. Nosotros (empresa webdev) solíamos comprar nuestros certificados por 7 € al año, que era asequible pero no para un centenar de sitios. Ahora, estamos usando Let's Encrypt y los obtenemos de forma gratuita, por lo que hemos puesto SSL en todos ellos. A nuestros clientes les gusta y disfrutamos usando HTTP / 2. No he tenido problemas con la renovación. Los certificados duran 90 días y comenzamos a tratar de renovar diariamente después de 60 días. Mucha superposición en caso de que algo salga mal (lo cual no ha sucedido). Use Cloudflare si no quiere la molestia.
Martijn Heemels

1
@closetnoc ssl es más que cifrado, también garantiza la integridad, la seguridad y la privacidad, por lo que un MitM'er no puede ver las cosas en la página (por ejemplo, su empleador, un estado de residencia) ni cambiarlas (por ejemplo, anuncios inyectados). Además, evita que las personas de MitMing detecten los datos de autenticación de sus amigos (que probablemente se pueden usar para cargar contenido no deseado en el sitio). Además, dijo Martijn, GoDaddy es una gran estafa, y en general son desfavorables. Le recomendaría a su amigo que mire los dominios de google, namecheap y gandi (no estoy afiliado a ninguno).
Ave

1
@MartijnHeemels Estoy de acuerdo en que GoDaddy es demasiado caro. ¡MUCHO TIEMPO! Parece que Let's Encrypt es el camino a seguir para la mayoría de los sitios que generalmente son benignos en contenido. También puedo ver certificaciones completamente verificadas para algunos sitios. ¿Creería que solía ser una autoridad cert? Supongo que prefiero cuando los certs son de un año. No confío en períodos de tiempo más cortos. Pero, ¿qué opciones hay en estos días? ¡¡Salud!!
closetnoc

1
@closetnoc No es difícil encontrar certificados SSL pagados de CA reconocidas con una validez de 1 año por aproximadamente $ 10 cada una. Pero eso obviamente no le dará un certificado "completamente investigado"; si realmente desea eso, debe saltar a través de los aros para obtener un certificado EV y pagar el precio correspondiente (y como se ha señalado anteriormente, ni siquiera los certificados EV son perfectos o no tienen advertencias). Let's Encrypt discute algunas de las razones por las cuales sus certificados solo son válidos durante 90 días en su sitio web, pero la existencia de Let's Encrypt (aún) no ha causado que las CA comerciales retiren sus ofertas de certificados DV.
un CVn

4

nadie más parece haber mencionado,

si posee todas las máquinas que se conectan a su sitio

por ejemplo, "esto probablemente no es lo que quieres"

, como un entorno corporativo, puede crear una autoridad de certificación propia, instalar su certificado público en todas las máquinas (en todos los navegadores y tiendas de certificados) que se conectan a su sitio. esta opción está libre de monetización de terceros; es el mismo cifrado de cifrado, sin embargo, no se inicia sesión en la confianza pública (por ejemplo, su autoridad no es reconocida por Google Chrome, Mozilla Firefox, etc., como lo hace Let's Encrypts), pero será reconocido por las máquinas que configuró para confiar en usted mismo .

Es cierto que las ofertas de establecer una autoridad de certificación son un tanto difíciles y oscuras, y el mantenimiento puede ser mucho trabajo, así que las dejaré aquí, probablemente sea mejor hacer una investigación profunda sobre el tema de su verdadero interés. en este enfoque

aunque para un despliegue de nieve, si puedes probar XCA

XCS es una forma decente de emitir certificados para implementaciones pequeñas e incluye documentación de ayuda que recorre toda la configuración.


2
Seguramente pasará más tiempo configurando su propia CA (en horas de trabajo, si no más) que comprando un certificado SSL comercial. Entonces, siempre existe la posibilidad de hacer algo mal.
Eric J.

1

Tengo un par de ideas.

Si la razón de HTTPS es administrar los inicios de sesión, puede minimizar el efecto en todos los navegadores ofreciendo a los usuarios que permanezcan conectados. Luego, cuando un usuario inicia sesión, una cookie puede almacenarse permanentemente en la computadora del usuario para que la próxima vez que el usuario enciende su computadora para acceder al sitio, se iniciaría sesión automáticamente en lugar de que siempre se le presentara un aviso de inicio de sesión y posiblemente una advertencia de seguridad.

Otra idea que puede omitir el mensaje pero que sería más trabajo tanto para el invitado como para el servidor es hacer que un invitado cargue un archivo especial con la configuración adecuada encriptada. Por ejemplo, para la pantalla de inicio de sesión, en lugar de pedirle al usuario que ingrese su nombre de usuario y contraseña en dos cuadros de texto, haga que el usuario cargue un pequeño archivo que contenga su nombre de usuario y contraseña cifrados (por ejemplo, comprimiendo el nombre de usuario y la contraseña como un zip) archivo con un nivel de compresión específico), entonces el servidor puede descifrar el archivo para extraer el nombre de usuario y la contraseña. El pirata informático potencial verá galimatías en tránsito cuando el usuario envíe el archivo al servidor. La única ventaja de esta idea es una velocidad de conexión ligeramente más rápida ya que el procesamiento de la conexión SSL no tiene lugar en HTTP.


Una próxima versión de Chrome advertirá sobre cualquier entrada de texto, no solo campos de contraseña. Cualquier información que use formularios HTML deberá ser HTTPS para evitar advertencias, no solo iniciar sesión. Google ha estado enviando notificaciones a través de Search Console a los propietarios de sitios web cuyos sitios web Google cree que se verán afectados.
Stephen Ostermiller

1

No.

Es muy poco probable que cualquier hack que intente (por ejemplo, tratar de cifrar con JavaScript) esté cerca de ser seguro.

SSL no tiene que ser "costoso", muchos proveedores de hosting lo ofrecen de forma gratuita. E incluso cosas como cloudflare ofrecen SSL gratis y mantienen el alojamiento actual.


-3

Una solución rápida y gratuita es Let's Encrypt. Enlace Tienen documentación para casi todos los sistemas operativos del servidor. Lo usamos en nuestro trabajo, y nuestros proveedores de W2P lo usan para proteger cada uno de nuestros escaparates.


3
Esta respuesta no agrega nada que aún no se haya dicho.
Stephen Ostermiller
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.