Cómo bloquear dominios y urls específicos usando privoxy

1

He configurado privoxy en mi enrutador con OpenWRT. El proxy parece funcionar bien, ya que puedo navegar con mi tráfico.

Intenté establecer un ejemplo mínimo de bloqueo con un solo dominio en una regla de bloqueo:

{+block {Too bad my friend...No facebook for you}}
    www.facebook.com

Esta regla se puede encontrar en el archivo. tinyblock.action, que incluyo en mi config en /etc/config/privoxy. los enable-blocks opción está establecida en 1. Sin embargo, cuando intento acceder a Facebook, el proxy no bloquea nada ...

¿Alguna idea al respecto?

Según las respuestas de @MariusMatutiae, hay un problema con el filtrado de https. Hice un poco de investigación y la documentación privoxy Dice explícitamente:

4.15. ¿Cómo puede Privoxy filtrar las URL seguras (HTTPS)?

Debido a que las conexiones HTTP seguras son sesiones SSL encriptadas entre su navegador y el sitio seguro, y están destinadas a ser confiables, Privoxy no puede hacer nada más que entregar los datos sin sentido de un extremo al otro sin procesar.

La única excepción a esto es el bloqueo mediante patrones de host, ya que el cliente necesita decirle a Privoxy el nombre del servidor remoto, para que Privoxy pueda establecer la conexión. Si ese nombre coincide con un patrón solo de host, la conexión se bloqueará.

En lo que respecta al bloqueo de anuncios, esta es una restricción menor de lo que parece, ya que las fuentes de anuncios a menudo son identificables por el nombre del host y, a menudo, los banners que se colocan en una página encriptada no están encriptados por razones de eficiencia Con todo el poder de bloqueo de anuncios de Privoxy.

Las "cookies de contenido" (aquellas que están incrustadas en el contenido real de la página HTML o JS, vea el filtro {cookies de contenido}), en una transacción SSL serán imposibles de bloquear bajo estas condiciones. Afortunadamente, este no parece ser un escenario muy común, ya que la mayoría de las cookies vienen por medios tradicionales.

Pero de todos modos, nunca muestro facebook apareciendo en mis registros ...

Rerito
fuente
"A menudo, los banners que se colocarán en una página cifrada no estarán encriptados por razones de eficiencia" ... todos los navegadores modernos que he visto advierten sobre esto, debido a la fuga en el canal lateral (la URL de HTTPS se puede ver en las cookies del Referer. ... y eso ni siquiera entra en los problemas de la inyección de scripts a través de los elementos inseguros)
Ben Voigt
@BenVoigt Ese no es el problema en cuestión. Aquí, si entiendo el documento correctamente, la acción de bloqueo debería funcionar aunque el tráfico esté en HTTPS porque uso un patrón de host.
Rerito
No, eso es solo un comentario sobre la inexactitud técnica de la documentación que está citando. Su problema real es probablemente que su sistema no está configurado para enviar tráfico HTTPS al proxy en primer lugar. ¿Está utilizando la configuración de proxy explícita (en el navegador) o la redirección transparente a través de las reglas de iptables?
Ben Voigt
@BenVoigt Una oportunidad que pidió ... Hasta ahora, solo estoy en una configuración de prueba, así que aplico la configuración de proxy en mi máquina. Una vez que haya validado el comportamiento deseado, estableceré las reglas de iptables en el enrutador para redirigir el tráfico a través del proxy. Noté que después de verificar que no configuré el proxy https ... Cuando lo hago, obtengo el ERR_TUNNEL_CONNECTION_FAILED de cromo
Rerito
@BenVoigt Después de este último comentario, intenté acceder a otras páginas a través de https y todo salió bien. De esto deduzco que privoxy lo hace funcionar. Simplemente no muestra la página bloqueada habitual (tal vez porque no puede editar el contenido de la solicitud ya que está cifrado). Estaré encantado de aceptar una respuesta de tu comentario cuando me hiciste notar mi error :)
Rerito

Respuestas:

2

La configuración del proxy debe cambiarse para incluir HTTPS ... en el navegador, por lo general hay una configuración separada para el proxy HTTPS, y si hace un proxy transparente, necesitará una regla de redirección de iptables adicional para el puerto TCP 443.

Si no realiza este paso de configuración, su navegador se conectará directamente al servidor HTTPS, no a Privoxy.

Por ejemplo, aquí está la configuración en Firefox:

enter image description here

Me pregunto si "proxy SSL" significa que TLS no está incluido. Seguramente no, ya que no creo que el navegador pueda saber si un sitio en particular es SSL o TLS hasta que se conecte.

Ben Voigt
fuente