V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
la0wei
V2EX  ›  Linux

请教如何在 VPS 就通过 privoxy 过滤广告?

  •  
  •   la0wei · 2016-12-30 10:21:49 +08:00 · 1961 次点击
    这是一个创建于 2893 天前的主题,其中的信息可能已经有所发展或是发生改变。

    使用$$科学上网。 想在 vps 端就把广告过滤掉,于是想到 privoxy google 了下,得到如下命令 iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8118

    但是编写规则后发现并没有作用,而该规则在本地 windows 上是可以工作的。 求解哪里出问题?

    9 条回复    2016-12-30 23:10:14 +08:00
    mozutaba
        1
    mozutaba  
       2016-12-30 10:50:52 +08:00 via Android
    同求
    la0wei
        3
    la0wei  
    OP
       2016-12-30 11:17:57 +08:00
    @UnisandK 命令我是从 fqrouter 的 gist.github.com 中找到的,和这篇的内容很类似。

    不知道现在版本的$$是否改写了安全相关代码,如果是的话,那么可能我是被卡在没有授予$$访问本地 8118 的权限。
    如果没有改写,访问本地资源这个问题还存在,那么问题还是处在上面的 iptables 命令上。
    imn1
        4
    imn1  
       2016-12-30 11:18:36 +08:00
    你搞错了吧? privoxy 里面写 iptables 规则?

    改动 config ,载入两个自定义文件
    filterfile /etc/privoxy/user1.filter
    actionsfile /etc/privoxy/user1.action

    1.user1.filter
    FILTER: ABC 起个名字给 action 调用
    s@source htmlcode@期望的内容 @gi # 其实就是正则替换,换成 display:none 就可以了
    #可以多条正则,每行一条,直到下一个 FILTER 行首前,都属于 ABC

    2.user1.action
    {+filter{上面 filter 起的名字 ABC} +server-header-tagger{content-type}}
    域名 # 就是 ABC 的正则对这个域名有效
    # 也可以多个域名,意思是 ABC 是通用规则

    也可以整个域名 block 掉,参看手册+block 规则


    注意: filter 性质属于自我劫持,只能对 http 有效, ssl 无效,因为没有证书

    /t/157098
    /t/156197
    更多可以搜本站“ privoxy imn1 ”
    la0wei
        5
    la0wei  
    OP
       2016-12-30 12:55:18 +08:00
    @imn1 不是的。用 iptables 是把$$的流量导入到 privoxy 。
    privoxy 的规则在 user.action 和 user.filter 文件。
    我现在遇到的问题是无法把$$的流量使用 privoxy 过滤
    imn1
        6
    imn1  
       2016-12-30 13:03:31 +08:00
    @la0wei
    我俩中有一个语文不好

    vps 上应该是$$输出端口->privoxy 监听端口吧?
    而且要分出 http 协议,不然就乱套了
    la0wei
        7
    la0wei  
    OP
       2016-12-30 13:15:22 +08:00
    @imn1 这个……
    确实是这样设想的。因为是把目的端口为 80 的重定向到 privoxy 的 8118 ,所以实际上不需要考虑协议了。现在就是 ss 到 privoxy 之间这个通道没有打好。
    fangdingjun
        8
    fangdingjun  
       2016-12-30 15:48:12 +08:00
    你确定 privoxy 支持透明代理功能?
    印像中好像不支持,在前面加一层 redsocks, iptables 重定向流量到 redsocks,然后再转发到 privoxy
    la0wei
        9
    la0wei  
    OP
       2016-12-30 23:10:14 +08:00
    @fangdingjun privoxy 是否支持这个我还得看看官方文档,主要是基于 privoxy 的 adby 之类的广告过滤软件是支持的, privoxy 支持的可能性很大
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2670 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 07:25 · PVG 15:25 · LAX 23:25 · JFK 02:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.