Proxy 如何使squid代理不显示为在线代理?

Proxy 如何使squid代理不显示为在线代理?,proxy,squid,proxies,Proxy,Squid,Proxies,所以我尝试设置一个squid代理,它不会在网站上显示为代理,我在squid.conf上尝试了不同的设置,但它不起作用。我对“透明代理”和“匿名代理”这两个术语感到困惑,所以我不确定我要找的是什么设置。除了允许自己使用代理和要使用的端口之外,我当前在conf上的设置包括: via off forwarded_for off header_access From deny all header_access Server deny all header_access WWW-Authenticat

所以我尝试设置一个squid代理,它不会在网站上显示为代理,我在squid.conf上尝试了不同的设置,但它不起作用。我对“透明代理”和“匿名代理”这两个术语感到困惑,所以我不确定我要找的是什么设置。除了允许自己使用代理和要使用的端口之外,我当前在conf上的设置包括:

via off
forwarded_for off

header_access From deny all
header_access Server deny all
header_access WWW-Authenticate deny all
header_access Link deny all
header_access Cache-Control deny all
header_access Proxy-Connection deny all
header_access X-Cache deny all
header_access X-Cache-Lookup deny all
header_access Via deny all
header_access Forwarded-For deny all
header_access X-Forwarded-For deny all
header_access Pragma deny all
header_access Keep-Alive deny all
我不确定所有这些都做了什么,但添加这些之后,确实会影响页面显示的信息减少,所以我想这是一个开始。更具体地说,我希望代理在web上看起来像一个普通用户

任何帮助都将不胜感激,
谢谢。

首先,我认为了解HTTP请求头和回复头之间的区别会有所帮助。请求头主要由浏览器构建,用于标识浏览器的类型、功能、请求的对象、准备请求的响应,有时还提供身份验证凭据和cookie等信息。响应头由web服务器返回给客户端,也可以由中间系统(通常是负载平衡器和代理)添加/更改。要想知道,可以使用Firefox或Chrome中的Inspect Element工具,切换到网络选项卡,然后浏览您喜爱的网站。单击已请求的对象,查看响应和请求标题,了解其中的典型信息。一个好的导游很重要

为了澄清另一个混淆点,透明代理和匿名代理之间的区别是:

透明代理是一种内联连接的代理,通常是为了避免在客户端上需要任何特定的配置。一种常见的方法是在同样执行NAT的Linux机器上运行Squid,并使用将出站web请求重定向到Squid进程中。另一种方法是设置一个Cisco路由器。在这两种情况下,客户机只有通过检查HTTP响应头(通常通过查看Via:行)才能知道它已通过代理路由。为请求提供服务的每个代理在将请求传递回客户端时,都会将其主机名附加到此头字段。可以将Squid配置为不将自身附加到此头,或者避免将特定头数据完全传递回客户端,从而至少在客户端的视图中“隐藏”自身。有关更多信息,请参阅Squid文档中的reply_header_访问

与关注上述响应(即返回给客户的内容)不同,匿名代理只是一个代理,其配置目的是不向外国网站传递任何关于上游客户的信息。与上面描述的Via:HTTP应答头类似,默认情况下,代理将包括“X-Forwarded-For”HTTP请求头,以标识发起请求的客户端的本地IP。通常,这将向远程网站发送私有IP寻址,一些网络管理员认为这是一种安全风险。出于这个原因,Squid包含一个关闭它的选项(forwarded\u For),您的配置代码段可以利用这个选项

配置代码段的其余部分只是识别一组HTTP头,并防止Squid将它们发送到上游。如果目的是防止信息从本地网络泄漏到外部网站,那么防止其中一些信息被发送是有意义的(转发,X转发)。省略其他标题可能会干扰浏览器和Web服务器之间的有效协调,例如链接、Pragma和Keep-Alive,应该避免。我不知道为什么Via:在那里,因为它是一个回复(不是请求)头

让我们把它翻过来。从基础知识开始:通过为off指定Forwarded_(您已经这样做了),防止Squid发送X-Forwarded-For报头。然后确定你不信任的网站,以及你不想发送给它们的标题,并将这种行为限制在那些域中,例如:

acl untrusted-domains dstdomain .baddomain.com .anotherbaddomain.net
header_access X-Cache-Lookup deny untrusted-domains
如果有一些网站您不信任,我可以理解阻止它们传输到特定目的地,但就目前情况而言,您的配置会从通过代理的每个请求中删除所有这些头,并可能导致许多兼容性问题,在隐私或安全方面不提供任何明显的好处