前提:服务器IP:192.168.1.24;监听端口:8118

安装privoxy

sudo yum -y install privoxy

修改配置文件

sudo vim /etc/privoxy/config
listen-address 127.0.0.1:8118 #服务监听端口要记好客户端要用,如果有多个网段都要写想偷懒可以直接写成"listen-address 0.0.0.0:8118"
permit-access 127.0.0.1         #permit-access:把允许连接的网段写进去
permit-access 192.168.1.0/24

环境变量设置

sudo vim /etc/profile

添加如下信息

proxy="http://127.0.0.1:8118"
export http_proxy=http://127.0.0.1:8118
export https_proxy=http://127.0.0.1:8118

开机设置

sudo systemctl enable privoxy
sudo systemctl start privoxy

防火墙设置

sudo firewall-cmd --permanent --add-service=privoxy
sudo firewall-cmd --reload

这样一个能用的privoxy代理服务器就起来了。

客户端设置

Windows10系统设置

开始-设置-网络和Internnet Wi-Fi 飞行模式 VPn-代理-使用代理服务器(点开)

在地址中输入privoxy服务器的地址,在端口中输入privoxy服务器监听的端口

Win10 set

  • 浏览器设置
Firefox浏览器设置
打开菜单-选项-常规-网络代理-设置-点上"使用系统代理设置"
Chrome浏览器设置
自定义及控制Google Chrome-设置-高级-系统-打开代理设置-代理服务器-点上"为LAN使用代理服务器(这些设置不用于拨号或VPN连接)(X)-填上相应的地址与端口号,保存设置

chrome set

IE的设置和Chrome一样,IE的进入方式更简单

工具-Internet选项-连接-局域网设置-代理服务器-填上相应的地址与端口号,保存设置

安卓手机系统

设置-WLAN-点击连上的WIFI-代理-选手动设置-填上主机名(IP或域名)/端口号-保存

IOS

和安卓类似

设置-无线局域网-进入WIFI-HTTP代理-手动设置-填上服务器和端口-存储

到目前为止Privoxy服务器的设置,是最简单的,所有流量都走代理。这样不好。不说速度不行,我那几G流量也经不起折腾……

下面小结下,如何让国内流量直连,国外流量走代理。

  • 下载gfwlist2privoxy
wget https://raw.githubusercontent.com/zfl9/gfwlist2privoxy/master/gfwlist2privoxy
  • 生成gfwlist.action
bash gfwlist2privoxy '127.0.0.1:1080'
  • 按提示把gfwlist.action文件cp到/etc/privoxy/
cp -af gfwlist.action /etc/privoxy/
echo "actionsfile gfwlist.action" >> /etc/privoxy/config
  • Selinux设置
sudo chcon -t privoxy_etc_rw_t /etc/privoxy/gfwlist.action
  • 重启服务
systemctl restart privoxy
  • 每月更新一次gfwlisty文件

把gfwlist2privoxy文档复制到/etc/privoxy目录下,然后添加以下内容到root的crontab中

* * * 1 *  /usr/bin/bash /etc/privoxy/gfwlist2privoxy '127.0.0.1:1080' && /usr/bin/systemctl restart privoxy

到此,流量能按要求走了,不会浪费流量了。

广告过滤

  • 手动输入
sudo vim /etc/privoxy/user.action

添加

{+block}
.abc.com

这样就过滤了abc.com的所有域名

  • 利用开源软件过滤

网址:

https://github.com/qwIvan/privoxy-adfilter

下载相关文件到/etc/privoxy目录下,并编辑/etc/privoxy/config文件,添加下面2行

actionsfile adfilter.action
filterfile adfilter.filter

Selinux设置

sudo chcon -t privoxy_etc_rw_t adfilter.action adfilter.filter

重启服务,就可以过滤广告了。


补充:

利用已有的DHCP和Privoxy服务器自动分配代理服务器的方法

流量分开走配合shadowsocksshadowsocks-libevv2ray工作。

Related content