V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wyk86485481
V2EX  ›  Android

Bash 终端命令行,使用 privoxy 将 socks 代理转成 http 代理

  •  
  •   wyk86485481 · 2016-08-09 08:57:27 +08:00 · 11292 次点击
    这是一个创建于 3065 天前的主题,其中的信息可能已经有所发展或是发生改变。

    安装 privoxy

    Ubuntu/debian

    sudo apt-get install privoxy

    Centos

    sudo yum install privoxy

    Mac osx

    sudo port install privoxy

    修改配置文件

    vi /etc/privoxy/config

    HTTP parent looks like this:

       forward-socks4   /               127.0.0.1:1080  .
    

    To chain Privoxy and Tor, both running on the same system, you

    would use something like:

       forward-socks5   /               127.0.0.1:1080 .
    

    主要是 forward-socks 这两行, 1080 是 socks 代理开启的端口,根据自己实际情况修改

    配置完成后,重启 privoxy , sudo service privoxy restart 添加代理开关函数

    vi ~/.bashrc ,添加如下代码:

    function proxy_off(){ unset http_proxy unset https_proxy unset ftp_proxy unset rsync_proxy echo -e "已关闭代理" }

    function proxy_on() { export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com" export http_proxy="http://127.0.0.1:8118" export https_proxy=$http_proxy export ftp_proxy=$http_proxy export rsync_proxy=$http_proxy export HTTP_PROXY=$http_proxy export HTTPS_PROXY=$http_proxy export FTP_PROXY=$http_proxy export RSYNC_PROXY=$http_proxy echo -e "已开启代理" }

    使用的时候,需要开启 http 代理时,就在命令行输入: proxy_on

    privoxy.png

    此种情况多数用于命令行需要链接的服务器,被墙需要扶梯子时,比如下载 android 源码, chromium 源码 …

    推荐一个扶梯子的站点: http://t.cn/RtKobrk

    15 条回复    2016-08-10 09:57:34 +08:00
    LU35
        1
    LU35  
       2016-08-09 09:04:51 +08:00 via Android
    不错不错
    Lonely
        2
    Lonely  
       2016-08-09 09:13:21 +08:00 via iPhone
    so,为何发在 android 节点……
    DesignerSkyline
        3
    DesignerSkyline  
       2016-08-09 09:19:11 +08:00 via iPad
    @Lonely androidsource 被墙了吖
    owt5008137
        4
    owt5008137  
       2016-08-09 09:21:08 +08:00 via Android
    我用 polipo 的,这个更轻量简单一些
    Havee
        5
    Havee  
       2016-08-09 10:11:08 +08:00
    常见的都支持 socks ,那么为什么要 socks 转 http 呢
    sxy707
        6
    sxy707  
       2016-08-09 10:12:32 +08:00
    我觉得这个东西更方便: https://github.com/cyfdecyf/cow
    skydiver
        7
    skydiver  
       2016-08-09 10:15:07 +08:00 via iPad
    现在 tor 自带都换成 polipo 了吧
    yangyaofei
        8
    yangyaofei  
       2016-08-09 11:18:04 +08:00
    我用的 proxychain
    wm5d8b
        9
    wm5d8b  
       2016-08-09 13:22:21 +08:00 via Android
    你知道 ProxyChains 嘛?
    strwei
        10
    strwei  
       2016-08-09 13:30:21 +08:00
    有没有 dos 的
    jixiangqd
        11
    jixiangqd  
       2016-08-09 14:03:28 +08:00
    我也这么搞过😂😂😂😂😂2333333
    jixiangqd
        12
    jixiangqd  
       2016-08-09 14:08:26 +08:00
    @sxy707 这东西看上去好牛逼啊。等有时间试试,感谢!
    yoa1q7y
        13
    yoa1q7y  
       2016-08-09 14:29:11 +08:00
    imn1
        14
    imn1  
       2016-08-09 15:04:12 +08:00
    命令行就不讨论了,但上面使用 privoxy 的方式不太好

    不建议直接把 forward 写入 privoxy 的 config
    应该在 config 外挂一个文件(文件名随意)
    actionsfile /etc/privoxy/proxy.action

    ================
    {{alias}}
    socks = +forward-override{forward-socks5 IP:PORT .} +change-x-forwarded-for{block}
    #注意格式,有个空格和小数点,下面的则没有
    http = +forward-override{forward IP:PORT} +change-x-forwarded-for{block}

    {socks}
    .v2ex.com

    {http}
    .example.com
    =============================

    这样平时修改这个 proxy.action ,例如切换 proxy 的时候,不需要 restart privoxy ,如果写在 config ,修改就要 restart 了

    同理还有 filter 和用于 ad block 的规则,尽量外挂文件
    xcodebuild
        15
    xcodebuild  
       2016-08-10 09:57:34 +08:00
    直接用 proxychains 超好用
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1075 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 22:55 · PVG 06:55 · LAX 14:55 · JFK 17:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.