Ubuntu实现全局代理

作者: 豆瓣奶茶 | 来源:发表于2018-07-11 14:32 被阅读897次

    安装shadowsocks
    执行以下命令,输入密码,继而输入y ,安装shadowsocks

    $ sudo apt install shadowsocks

    图片.png
    创建配置文件

    在终端输入以下命令,并按指示填写配置文件

    $ mkdir shadowsocks && cd shadowsocks/
    
    $ vim shadowsocks.json
    
    {
        "server":"代理地址",
        "server_port":代理端口,
        "local_address":"127.0.0.1",
        "local_port":1080,
        "password":"密码",
        "timeout":600,
        "method":"加密方式"
    }
    

    保存退出之后,启动shadowsocks

    $ sslocal -c $HOME/shadowsocks/shadowsocks.json
    
    图片.png

    注意:shadowsocks也可使用GUI软件Shadowsocks-Qt5 ,运行之后,依次点击连接添加手动,填写相应信息保存,选中添加的连接,点击左上角锁形 图标启动网络。

    安装curl

    我们测试访问国外网站不使用以往的ping 命令,而使用curl ,执行以下命令安装curl

    $ sudo apt install curl
    
    图片.png

    给大家提供两种全局代理方式,各位可根据喜好选择(个人推荐第一种)。

    第一种 使用polipo

    安装polipo

    $ sudo apt install polipo
    

    修改配置文件

    $ sudo vim /etc/polipo/config
    

    将文件中原内容删除,替换成如下内容:

        # This file only needs to list configuration variables that deviate
        # from the default values. See /usr/share/doc/polipo/examples/config.sample
        # and "polipo -v" for variables you can tweak and further information.
        logSyslog = false
        logFile = "/var/log/polipo/polipo.log"
    
        socksParentProxy = "127.0.0.1:1080"
        socksProxyType = socks5
    
        chunkHighMark = 50331648
        objectHighMark = 16384
    
        serverMaxSlots = 64
        serverSlots = 16
        serverSlots1 = 32
    
        proxyAddress = "0.0.0.0"
        proxyPort = 8123
    

    保存退出,然后重启polipo

    $ /etc/init.d/polipo restart
    
    图片.png

    设置环境变量(重启后需要重新设定)

    $ export http_proxy="http://127.0.0.1:8123/" 
    $ export https_proxy="http://127.0.0.1:8123/"
    

    验证代理是否正常工作:
    $ curl www.google.com
    出现类似于以下内容表示翻墙成功,内容为Google的主页HTML

    图片.png

    然后使用ping 尝试访问一下国内网站,比如百度,出现以下内容代表访问成功


    图片.png

    能够成功访问国内网站的请忽略下面内容。

    若出现无法ping 通现象,是因为resolv.conf文件被polipo修改为127.0.0.1, 造成无法解析任何域名,需要修改resolve.conf文件内容

    $ sudo vim /etc/resolv.conf 
    

    在最后一行前面加上# ,然后添加以下内容即可(若再次出现ping 不通国内网站的情况,可再次检查此配置文件)

    nameserver 114.114.114.114`
    nameserver 8.8.8.8
    
    图片.png

    第二种 使用proxychains

    全局代理通过proxychains实现,即将任何程序和ss的proxy建立链接,原理和浏览器的代理相似。

    安装proxychains

    $ sudo apt-get install proxychains
    
    图片.png

    配置proxychains.conf

    $ sudo vim /etc/proxychains.conf
    

    将文件内容末尾的socks4 127.0.0.1 9050 前面加上井号# 注释,然后在下面加上socks5 127.0.0.1 1080 ,保存并退出。


    图片.png

    注意,每次执行需要翻墙的命令前面都需要加上proxychains ,我们同样通过访问谷歌官网验证是否成功:

    $ proxychains curl www.google.com
    

    如果终端输出Google官网页面内容,证明代理成功!


    图片.png

    区块链资源汇总

    区块链学习资源大汇总
    http://www.nextblockchain.top/topics/6

    以太坊智能合约系列教程+Dapp实战
    http://www.nextblockchain.top/books/ethereumdapp/summary

    golang系统教程
    http://www.nextblockchain.top/categories/golang

    超级账本系列教程
    http://www.nextblockchain.top/categories/fabricstudy

    以太坊黄皮书深入研读
    http://www.nextblockchain.top/books/ethereumcode/summary

    相关文章

      网友评论

      • stutterr:直接docker拉shadowsocks的镜像一键安装
        有相说相:@stutterr 能详细说一下吗?
      • 48dc5f31ae84:Linux可以直接使用socks5,不用转成http,而且Linux可以直接使用那个做成透明代理,总之,Linux很强大
      • 凌屿:这个是翻墙吗?

      本文标题:Ubuntu实现全局代理

      本文链接:https://www.haomeiwen.com/subject/toshpftx.html