Squid: cómo puedo bloquear plus.google.com, lo que permite el acceso a google.com

1. Tengo el siguiente file block.acl en squid:

.* 

No permite el acceso a todo por defecto.

2.white.acl permite el acceso a google:

 google\..* 

Quería no permitir el acceso a plus.google.com agregándolo a block.acl:

 plus\.google\.com 

3. El order de inclusión de files en squid.conf es este:

 acl good_url url_regex "/etc/squid/white.acl" http_access allow good_url acl bad_url url_regex "/etc/squid/block.acl" http_access deny bad_url 

Malo está incluido después de bien.

Pero aún puedo acceder a plus.google.com . ¿Cómo puedo bloquearlo, manteniendo el acceso al dominio principal de Google?

Tu permitir google\..* coincide con cada URL con google. en eso. El permiso se empareja primero para que se permita el acceso.

Su regla también permitirá cualquier request con google. en cualquier parte de la URL, como http://example.com/google.asp

Además, Google intenta hacer la mayoría de las requestes a través de SSL, por lo que negar a través de url_regex no forma parte de estas requestes (no hay ninguna URL en https). Podrías hacer algo de Man in the Middle shenanigans con squid para descifrar las comunicaciones SSL para poder filtrar a través de URL. Alternativamente, dstdom_regex puede coincidir solo con el componente de dominio de la URL, lo que también le impedirá que SSL se conecte a ese dominio también.

Reestructura tu configuration para denegar específicamente, luego específicamente permitir, luego denegar de forma pnetworkingeterminada (usando all lugar de una list)

 acl bad_domain dstdom_regex "/etc/squid/block.acl" acl good_domain dstdom_regex "/etc/squid/allow.acl" http_access deny bad_domain http_access allow good_domain http_access deny all 

Luego incluya lo siguiente en la list incorrecta:

 (.+\.)?plus\.google\..+$ 

Y en la buena list:

 (.+\.)?google\. 

Eso no es perfecto, ya que todavía permitirá algunos otros dominios con google. en sus nombres (google.blah.com). El (.+\.)? es solo una coincidencia específica para cualquier subdominio. Si quieres ser más específico sobre el permiso, este artículo de wiki sobre dominios de google debería ayudar.