Privoxy:在其域之外屏蔽 twitter、facebook 和 google

Privoxy:在其域之外屏蔽 twitter、facebook 和 google

相关主题: 阻止 facebook.com 域之外的 facebook.com

这是来自default.filter

#################################################################################
#
# shockwave-flash: Kill embedded Shockwave Flash objects.
#                  Note: Better just block "/.*\.swf$"!
#
#################################################################################
FILTER: shockwave-flash Kill embedded Shockwave Flash objects.

s|<object [^>]*macromedia.*</object>|<!-- Squished Shockwave Object -->|sigU
s|<embed [^>]*(application/x-shockwave-flash\|\.swf).*>(.*</embed>)?|<!-- Squished Shockwave Flash Embed -->|sigU

这是在 .action 文件中实现它的方式

#############################################################################
# Kill embedded Shockwave SWF objects
#############################################################################
{+filter{shockwave-flash}}
.funny-games.biz/

工作正常,但是...

我未能达到我想要的结果

。筛选:

#################################################################################
#
# trace-widget: Get rid of particularly annoying so-called sharing buttons.
#
#################################################################################
FILTER: trace-widget Kill embedded spying buttons.

s|<script [^>]*.twitter.*</script>|<!-- Squished Twitter Object -->|sigU

。行动:

#----------------------------------------------------------------------------
# Deny access for Facebook Google and Twitter scripts
#----------------------------------------------------------------------------
{+filter{trace-widget}}
/

这有什么问题吗?

我对如何将其应用于框架和脚本感到困惑,例如:

推特:

<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>

谷歌:g+分析等。

<g:plusone annotation="inline"></g:plusone>

<script type="text/javascript">
  (function() {
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/plusone.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();
</script>

Facebook:

<script src="http://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"></script>

<a name="fb_share" type="button_count" share_url="..." href="http://www.facebook.com/sharer.php">Share</a>

<iframe frameborder='0' id='facebook_like' scrolling='no' src='https://www.facebook.com/plugins/like.php?href=...'></iframe>

非常感谢您的帮助。

更新(工作过滤规则)

Facebook:

s|<a [^>]*(sharer.php).*>(.*</a>)|<!-- Squished Facebook Object -->|sigU
s|<iframe [^>]*(like.php).*>(.*</iframe>)|<!-- Squished Facebook Frame -->|sigU

(如果将 facebook.com 和 fbcdn.net 域添加到这些规则中,这样就不会阻止任何其他 PHP 或 JS 或当前网站的其他内容,效果会更好)

谷歌:(并不总是有效 - cutroni.com)

s|<script [^>]*(plusone.js).*>(.*</script>)|<!-- Squished Google Button -->|sigU

推特:(与芬诺比.eu但不适用于海盗湾 HTTPS 页面https://thepiratebay.org/)(并不总是有效 - cutroni.com)

s|<script [^>]*(widgets.js).*>(.*</script>)|<!-- Squished Twitter Object -->|sigU

非常感谢您为更好的代码提供的帮助。

编辑: 不是 f'd — 你不会在 Facebook fsf.org/fb 上找到我(只是为了好玩 xD)

s|<a [^>]*(sharer.php).*>(.*</a>)|<a href="http://www.fsf.org/fb"><img src="http://img804.imageshack.us/img804/7822/dislike50.png" alt="Not f'd" /></a>|sigU

答案1

不要太确定是否有什么东西不起作用。请记住,您无法过滤通过 HTTPS 连接传递的内容。

HTTPS 意味着连接是安全的,因此 privoxy 只能看到加密的数据传递,并让它不经过滤地传递。

@rozcietrzewiacz:是的,这可能会受到限制,但这是你的意见。我发现更令人担忧的是,某些网站,尤其是 Facebook,正在向网站塞满垃圾,其唯一目的是跟踪任何地方的用户并侵犯他们的隐私。

答案2

我不确定我是否明白你在做什么。您提到的所有这些都是其他网络浏览器。为什么要使用另一个浏览器作为 Privoxy 和 Firefox 之间的中间层?

您确实可以在 Privoxy 和 Firefox 之间进行中介。假设您可以轻松地进行此构造:

火狐 -> Squid -> Privoxy

然后你就有了另一个级别的过滤。

但这仍然无法改变您无法过滤 https 连接的事实。

好吧,实际上似乎有某种方法涉及将 Squid 设置为接受安全连接并向浏览器提供其自己的证书的中间体,从而欺骗浏览器,使其认为它提供的是原始安全连接。但这涉及复杂的操作,例如设置您自己的证书颁发机构 (CA) 并为 Squid 生成证书,然后浏览器仍然会知道该证书不是来自受信任的颁发机构并抱怨这一点。此外,如果您将这种类型的窃听用于您自己的私人活动以外的目的,那么在某些国家/地区可能是非法的。

我没有对此进行测试,因此我无法告诉您它是如何工作的以及是否有效。归根结底,完全阻止使用安全连接的域会更容易。

相关内容