前提:服务器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服务器监听的端口
- 浏览器设置
Firefox浏览器设置
打开菜单-选项-常规-网络代理-设置-点上"使用系统代理设置"
Chrome浏览器设置
自定义及控制Google Chrome-设置-高级-系统-打开代理设置-代理服务器-点上"为LAN使用代理服务器(这些设置不用于拨号或VPN连接)(X)-填上相应的地址与端口号,保存设置
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服务器自动分配代理服务器的方法
流量分开走配合shadowsocks、shadowsocks-libev或v2ray工作。