Acabo de instalar un certificado SSL en mi servidor.
Luego configuró una redirección para todo el tráfico en mi dominio en el Puerto 80 para redirigirlo al Puerto 443.
En otras palabras, todo mi http://example.com
tráfico ahora se redirige a la https://example.com
versión adecuada de la página.
La redirección se realiza en mi archivo Apache Virtual Hosts con algo como esto ...
RewriteEngine on
ReWriteCond %{SERVER_PORT} !^443$
RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
Mi pregunta es, ¿hay algún inconveniente en usar SSL?
Dado que este no es un redireccionamiento 301, ¿perderé el jugo / clasificación de enlaces en los motores de búsqueda al cambiar a https
?
Agradezco la ayuda Siempre quise configurar SSL en un servidor, solo por la práctica de hacerlo, y finalmente decidí hacerlo esta noche. Parece estar funcionando bien hasta ahora, pero no estoy seguro de si es una buena idea usar esto en cada página. Mi sitio no es comercio electrónico y no maneja datos confidenciales; es principalmente por su apariencia y la emoción de instalarlo para aprender.
NÚMERO ACTUALIZADO
Extrañamente, Bing crea esta captura de pantalla desde mi sitio ahora que está usando HTTPS en todas partes ...
fuente
sslstrip
ataque de redireccionamiento de estilo (ambos son secuestros de solicitud de intermediario), por lo que los navegadores conscientes de HSTS los bloquearán a ambos.src="://example.com/jquery.js"
, tenga en cuenta la faltahttp
ohttps
el navegador carga el apropiado. Tuve una pesadilla al intentar que algunas cosas de Amazon incrustadas se cargaran correctamente ya que la API (cargada a través de https) produjo enlaces http, lo que significa que no funcionaron correctamente hasta que encontré el parámetro indocumentado para alternar enlaces httpsRespuestas:
La
[R]
bandera por sí sola es una302
redirección (Moved Temporarily
). Si realmente desea que las personas utilicen la versión HTTPS de su sitio (sugerencia: lo hace), entonces debería utilizar[R=301]
una redirección permanente:A
301
mantiene intactos todos sus pageranks de google-fu y de esfuerzo . Asegúrese de quemod_rewrite
esté habilitado:Para responder a su pregunta exacta:
Diablos no. Es muy bueno.
fuente
Si bien apoyo la idea de sitios solo SSL, diría que un inconveniente son los gastos generales dependiendo del diseño de su sitio. Quiero decir, por ejemplo, si publica muchas imágenes individuales en etiquetas img, esto podría hacer que su sitio funcione mucho más lento. Aconsejaría a cualquiera que use servidores solo SSL para asegurarse de que funcionan en lo siguiente.
<meta property="og:url"
para usar la versión https de su dominio.<base href=
nuevamente, actualice para usar HTTPS.Si se aborda lo anterior, dudo que tenga muchos problemas.
fuente
Referer
encabezado. Por ejemplo, este sitio usa jQuery del CDN de Google y mi navegador envía una solicitud a Google cada vez que recargo el sitio. De este modo,Referer
también se envía un encabezado a Google que se establece en la URL de este sitio. Por lo tanto, Google puede rastrear los sitios que visito durante el tiempo en que mi dirección IP no cambia (y si uso un servicio de Google durante este tiempo, Google también puede conectar esta información con mi cuenta de Google).Si configuró https, debería usarlo en todas partes del sitio. Evitará el riesgo de problemas de contenido mixto y, si tiene las herramientas necesarias, ¿por qué no hacer que todo el sitio sea seguro?
En cuanto a la redirección de http a https, la respuesta no es tan simple.
La redirección hará que sea mucho más fácil para sus usuarios, simplemente escriben whateversite.com y se redirige a https.
Pero. ¿Qué sucede si el usuario a veces se encuentra en una red no segura (o está cerca de Troy Hunt y su Pineapple )? Luego, el usuario solicitará http://whateversite.com por viejo hábito. Eso es http. Eso puede verse comprometido. La redirección podría apuntar a https://whateversite.com.some.infrastructure.long.strange.url.hacker.org . Para un usuario común parecería bastante legítimo. Pero el tráfico puede ser interceptado.
Por lo tanto, tenemos dos requisitos que compiten aquí: ser fácil de usar y seguro. Afortunadamente, hay un remedio llamado encabezado HSTS . Con él puedes habilitar la redirección. El navegador se moverá al sitio seguro, pero gracias al encabezado HSTS también lo recuerda. Cuando el usuario escribe en whateversite.com sentado en esa red no segura, el navegador irá a https de inmediato, sin saltar a través de la redirección a través de http. A menos que trate con datos muy confidenciales, creo que es una compensación justa entre seguridad y usabilidad para la mayoría de los sitios. (Cuando configuré recientemente una aplicación que maneja registros médicos, fui a https sin redireccionamiento). Lamentablemente, Internet Explorer no es compatible con HSTS ( fuente), por lo que si su público objetivo utiliza principalmente IE y los datos son confidenciales, es posible que desee deshabilitar los redireccionamientos.
Entonces, si no está apuntando a usuarios de IE, continúe y use la redirección, pero habilite también el encabezado HSTS.
fuente
No hay nada de malo en esto, y de hecho es la mejor práctica (para sitios que deberían ser atendidos a través de una conexión segura). De hecho, lo que estás haciendo es bastante similar a la configuración que estoy usando:
El
301
código de estado indica una redirección permanente , indicando a los clientes capaces de usar la URL segura para conexiones futuras (por ejemplo, actualizar el marcador).Si solo servirá el sitio a través de TLS / SSL, le recomendaría una directiva adicional para habilitar HTTP Strict Transport Security (HSTS) en su host virtual seguro :
Este encabezado instruye a los clientes capaces (la mayoría de ellos en estos días, creo) que solo deben usar HTTPS con el dominio proporcionado (
secure.example.com
, en este caso) durante los próximos1234
segundos. La; includeSubdomains
parte es opcional e indica que la directiva se aplica no solo al dominio actual, sino a cualquiera que esté debajo (palpha.secure.example.com
. Ej .). ¡Tenga en cuenta que el encabezado HSTS solo es aceptado por los navegadores cuando se sirve a través de una conexión SSL / TLS!Para probar la configuración de su servidor con las mejores prácticas actuales, un buen recurso gratuito es el servicio de prueba de servidor SSL de Qualys ; Mi objetivo sería obtener al menos una A- (no se puede obtener más que eso con Apache 2.2 debido a la falta de soporte para la criptografía de curva elíptica).
fuente
Strict-Transport-Security: max-age=0
negará cualquier directiva anterior; como siempre, esto debe enviarse a través de HTTPS para ser aceptado, pero es una forma práctica de cancelar las cosas si decides que también necesitas usar HTTP en el dominio.Guauu ! Redirigir HTTP a HTTPS es algo muy bueno y no puedo ver ningún inconveniente para eso.
Solo asegúrese de que sus clientes tengan la CA correcta para evitar advertencias no amigables para el usuario sobre el certificado en el navegador.
Además, la forma en que configuró Apache para redirigir a HTTPS parece estar bien.
fuente
No, en absoluto. En realidad, ¡es algo bueno!
En redirecciones:
Podría ser más eficiente, eliminando por completo las reescrituras . Aquí está mi configuración en una situación similar ...
fuente
HTTPS no es exactamente infalible. Por supuesto, forzar normalmente HTTPS es algo bueno. Impide que los delincuentes normales hagan algo malo a sus usuarios.
Pero recuerde verificar su configuración SSL como la configuración de SSLCiphers. Deshabilite cosas como RC4 crypto, el protocolo SSLv2 y SSLv3. Además, debe averiguar si las bibliotecas del sistema criptográfico de su sistema son compatibles con TLS1.2 (que es lo que desea tener;))
Encienda SSL, es algo bueno.
fuente
Personalmente, estoy totalmente de acuerdo con el uso de SSL para proteger las conexiones en la web, sin embargo, creo que todas las otras respuestas aquí se han perdido es que no todos los dispositivos y piezas de software capaces de una conexión HTTP podrán usar SSL, por lo tanto, consideraría proporcionar alguna forma para que los usuarios lo eviten si no es compatible con ellos. También es posible que las personas en algunos países donde la tecnología de cifrado sea ilegal no puedan acceder a su sitio. Consideraría agregar una página de aterrizaje no cifrada con un enlace para forzar la versión insegura del sitio, pero a menos que un usuario seleccione específicamente hacer lo que usted dijo y simplemente reenviarlo a la versión HTTPS.
fuente
Estos son algunos de los problemas generales de la pincelada:
MITM / SSLSTRIP : esta es una gran advertencia. Si va a servir su sitio a través de HTTPS, desactive HTTP en el sitio . De lo contrario, deja a sus usuarios abiertos a varios ataques de intermediarios, incluido SSLSTRIP, que interceptará las solicitudes y las atenderá silenciosamente a través de HTTP, insertando su propio script de malware en la transmisión. Si el usuario no se da cuenta, pensará que su sesión es segura cuando en realidad no lo es.
Si su sitio requiere un inicio de sesión seguro, entonces toda la sesión del usuario debe estar protegida. No se autentique a través de HTTPS, luego redirija al usuario nuevamente a HTTP. Si lo hace, nuevamente, está dejando a sus usuarios vulnerables a los ataques MITM. El enfoque estándar para la autenticación en estos días es autenticar una vez, luego pasar un token de autenticación de ida y vuelta (en una cookie). Pero si se autentica a través de HTTPS y luego redirige a HTTP, un intermediario puede interceptar esa cookie y usar el sitio como si fuera su usuario autenticado, evitando su seguridad.
Los problemas de "rendimiento" con HTTPS se limitan a todos los fines prácticos al apretón de manos involucrado en la creación de una nueva conexión. Haga lo que pueda para minimizar la necesidad de múltiples conexiones HTTPS desde una URL y estará a kilómetros de distancia. Y eso es francamente cierto incluso si está sirviendo su contenido a través de HTTP. Si lee sobre SPDY, se dará cuenta de que todo lo que hace está orientado a tratar de servir todo el contenido desde una sola URL a través de una sola conexión. Sí, el uso de HTTPS afecta el almacenamiento en caché. ¿Pero cuántos sitios web son solo contenido estático y almacenable en caché en estos días? Es probable que obtenga más por su dinero utilizando el almacenamiento en caché en su servidor web para minimizar las consultas redundantes de la base de datos que recuperan datos sin cambios una y otra vez, y evitan que las costosas rutas de código se ejecuten con más frecuencia de la necesaria.
fuente
Esto no es técnicamente una respuesta a su pregunta original, pero si utiliza la extensión HTTPS de Google Chrome en todas partes (estoy seguro de que hay extensiones similares en otros navegadores), la extensión redirige automáticamente los sitios con HTTP al mismo sitio con HTTPS. Lo he estado usando por un tiempo, y no he tenido ningún problema (excepto tal vez desaceleración, pero no lo he probado). HTTPS En todas partes se puede cambiar mediante ciertas reglas en el lado del servidor, pero como no he hecho mucho en esa área, no estoy seguro de los detalles exactos.
Volviendo a su pregunta real, si usa algo como HTTPS en todas partes, hay incluso menos incentivos para usar solo HTTP, aunque imagino que es difícil establecer reglas correctas cuando las necesita.
fuente
El único inconveniente técnico de HTTPS sobre HTTP es que es computacionalmente más costoso procesar solicitudes HTTPS que HTTP simple
Sin embargo, dado que la mayoría de los servidores modernos tienen CPU de alta potencia, este impacto generalmente es insignificante a menos que se encuentre en niveles extremadamente altos de tráfico, en cuyo punto es más probable que use equilibradores de carga de todos modos
Con el advenimiento de protocolos como SPDY que requieren SSL / TLS para funcionar, esto realmente contrarresta la sobrecarga computacional antes mencionada al proporcionar mejoras de rendimiento significativas con respecto a múltiples solicitudes y obtener activos para el cliente más rápido en general.
fuente
Es muy bueno redirigir a https, pero lo leí también depende de cómo organices la redirección.
Hacer un servidor virtual dedicado para redirigir las solicitudes HTTP entrantes a su conexión https como se sugiere en la respuesta en security.stackexchange.com suena muy inteligente y cerrará algunas amenazas de seguridad adicionales. Una configuración en Apache se vería así:
fuente