Privoxy代理的使用

https://www.privoxy.org/
http://www.privoxy.org/user-manual/
https://en.wikipedia.org/wiki/Privoxy
https://wiki.archlinux.org/index.php/Privoxy
https://wiki.archlinux.org/index.php/Proxy_server

1.
Privoxy介绍

  • Privoxy
    是一款功能很强的,开源的,跨平台的
    HTTP 代理工具。常结合
    Tor 使用。
  • Privoxy 是一个免费的非缓存
    Web代理,具有过滤功能,可在浏览器呈现页面之前增强隐私,操纵cookie以及修改网页数据和HTTP标头。
  • Privoxy
    是有着先进的过滤能力和保护隐私的代理工具,它可以过滤网页内容,管理cookies,控制访问,除广告、横幅、弹出窗口等等,它同时支持单系统和多用户网络。

  当他们直接使用SOCKS代理时,使用Privoxy是必要的,因为浏览器会泄漏您的DNS请求,这会降低您的匿名性。
  因为
*,*
都是将代理转为本地
socks5 代理,所以如果需要使用
http 代理,就需要借助
Privoxy 。如果只需要在本地启用
http 代理,也可以使用
proxychains。

1.1安装


$ pacman -S privoxy

1.2
配置

使用Privoxy必须指定转发规则,Privoxy的主配置文件在/etc/privoxy/config。

  • 监听地址,Privoxy默认只提供给本机使用(即localhost或者127.0.0.1)
  • 转发协议,转发socks5,示例(注意1080后面有一个空格和点号):


$ sudo vi
/etc/privoxy/config
//添加
listen-address
127.0.0.1:8118
forward-socks5 /
127.0.0.1:1080 .

*补充:如果需要将Privoxy提供给网络中的其他计算机使用,需要添加监听信息,格式:listen-address
[SERVER-IP]:[PORT]


例如提供给192.168.1.1的8118端口使用:listen-address
192.168.1.1:8118

1.3
使用

使用Systemd
启用privoxy服务。
$ sudo systemctl
start privoxy


$ sudo systemctl
status privoxy

在当前
session 执行,当前终端可用,关闭后重开要重新执行
$ export
http_proxy=http://127.0.0.1:8118


$ export
https_proxy=http://127.0.0.1:8118

终端测试链接
$ curl
www.google.com

对程序进行代理设置,默认的地址是:localhost:8118
Firefox浏览器:进入
首选项 > 高级
> 网络
> 设置,添加http代理。

Chromium
$ chromium
--proxy-server="localhost:8118"

浏览器测试链接:http://p.p/
成功:This is Privoxy
3.0.28 on localhost (127.0.0.1), port 8118, enabled

or
失败:This page isn’t
working

也可以添加http_proxy环境变量,当前用户,例如添加到~/.bashrc中:

http_proxy="http://localhost:8118"

或者写在
profile 中


> vim
/etc/profile


export
http_proxy=http://127.0.0.1:8118


export
https_proxy=http://127.0.0.1:8118


> source
/etc/profile

1.4
其他配置

http://einverne.github.io/post/2018/03/privoxy-forward-socks-to-http.html
action 文件,其中又包括
match-all.action,default.action,user.action
filter 文件,其中包括
default.filter,
user.filter
match-all.action,default.action,default.filter
建议不要修改,
Privoxy 升级时会覆盖掉,自定义内容可以放入
user.action 和
user.filter 文件中。

action 文件定义
Privoxy 动作,比如
{+block{禁止访问百度}}
.baidu.com

filter
文件定义过滤响应的规则,比如
FILTER: replaceText
替换文本
s|网易|Google|g

定义了
user.filter 过滤规则之后,需要在
user.action 文件中应用规则
{+filter{replaceText}}
.163.com
这样访问
163.com 网站中任何带有“网易”的字都会被替换为
Google,当然如果网页启用了
HTTPS,那么
Privoxy 也无能为力。
Privoxy 唯一能够对
HTTPS 网站做的就是
block 了。这也就意味着屏蔽
HTTPS 网站页面内广告的能力下降了。

1.5
测试链接及查看配置

浏览器打开:http://p.p/
成功:This is Privoxy 3.0.28 on localhost (127.0.0.1), port 8118, enabled 
or
失败:This page isn’t working

当前Privoxy 配置的action 和filter 文件可以在代理情况下访问如下网址:
http://config.privoxy.org/show-status
成功:This is Privoxy 3.0.28 on localhost (127.0.0.1), port 8118, enabled
或者
失败:Privoxy is not being used

*Ping工具使用ICMP协议,检测IP地址或域名的连通,作用在网络层,与端口无关(端口在传输层)。*
*本文使用privoxy代理实现端口间的转发,作用在传输层,不能使用Ping来测试*
*命令行下可以使用:curl, wget, aria2等支持http等协议的工具测试或使用*

2.
相关信息

https://en.wikipedia.org/wiki/The_Tor_Project,_Inc
  Tor
Project,Inc。是一家位于马萨诸塞州的501(c)(3)研究教育非营利组织,由计算机科学家Roger
Dingledine,Nick
Mathewson和其他五人组成。Tor项目主要负责维护Tor匿名网络的软件。

https://en.wikipedia.org/wiki/Tor_(anonymity_network)
Tor是免费的开源软件,用于启用匿名通信。该名称源自原始软件项目名称“The
Onion Router”的首字母缩写词。
Tor通过一个免费的全球志愿者覆盖网络引导互联网流量,该网络由超过七千个中继[10]组成,以隐藏用户在进行网络监控或流量分析时的位置和使用情况。
Tor的使用会使跟踪用户的互联网活动变得更加困难:这包括“访问网站,在线帖子,即时消息和其他通信表单”。
Tor的用途是保护用户的个人隐私,以及通过防止他们的互联网活动受到监控来进行保密通信的*和能力。
Tor不会阻止在线服务确定何时通过Tor访问它。Tor保护用户的隐私,但不掩盖有人使用Tor的事实。一些网站通过Tor限制配额。

https://en.wikipedia.org/wiki/Onion_routing
Onion
routing洋葱路由通过加密在通信协议栈的应用层中实现,嵌套像洋葱的层。
Tor对数据(包括下一个节点目的地IP地址)进行多次加密,并通过包含连续随机选择Tor中继的虚拟电路发送。
每个中继解密一层加密揭示电路中的下一个继电器,将剩余的加密数据传递给它。
最终中继解密最内层加密并将原始数据发送到其目的地,而不会泄露或知道源IP地址。
由于通信的路由部分隐藏在Tor电路的每一跳,因此该方法消除了通过依赖于知道其源和目的地的网络监视来确定通信对等点的任何单个点。
有一些方法可以打破这种技术的匿名性,例如时序分析。

Privoxy
可以链接到其他代理,并且经常与Squid结合使用,可以用来绕过互联网审查。
http://www.squid-cache.org/
http://www.squid-cache.org/Doc/config/
https://en.wikipedia.org/wiki/Squid_(software)
https://en.wikipedia.org/wiki/Internet_censorship
https://web.archive.org/web/20100415153216/http://www.deckle.co.za/squid-users-guide/
Squid是一个缓存和转发HTTP
Web代理。它具有广泛的用途,包括通过缓存重复请求来加速Web服务器,为共享网络资源的一组人员缓存Web,DNS和其他计算机网络查找,以及通过过滤流量来帮助提高安全性。虽然主要用于HTTP和FTP,但Squid包括对其他几种协议的有限支持,包括Internet
Gopher,SSL,[6]
TLS和HTTPS。鱿鱼不支持SOCKS协议。
Squid最初设计为在类Unix系统上作为守护进程运行。Windows端口维护到2.7版。Windows上提供的新版本使用Cygwin环境。

上一篇:【VBA】数组定义时,括号内的数值n为最大下标,其长度为n+1


下一篇:Spring--Bean scope