文章

linux-ubuntu使用shadowsocks客户端配置

文章目录

之前介绍过用搬瓦工的vps(搬瓦工不用vpn已经打不开了)轻松的搭建shadowsocks服务,也可以参考linux-ubuntu下搭建shadowsocks,然后在windows上和安卓手机平板等上轻松科学上网,只要下载对应的程序即可。

当来到ubuntu客户端上怎么配置shadowsocks来科学上网呢?有两种方法可行

1.安装shadowsocks命令行程序,配置命令。

2.安装shadowsocks GUI图形界面程序,配置。

个人推荐第一种,配置好后基本不用管。但使用的前提是你的服务端已经搭建好或者你有别人提供的SS 服务,下面我们来看怎么在乌班图ubuntu电脑上使用shadowsocks

第一种

ubuntu安装shadowsocks

用PIP安装很简单,

sudo apt-get update
sudo apt-get install python-pip
sudo apt-get install python-setuptools m2crypto

接着安装shadowsocks

pip install shadowsocks

如果是ubuntu16.04 直接 (16.04 里可以直接用apt 而不用 apt-get 这是一项改进)

sudo apt install shadowsocks

当然你在安装时候肯定有提示需要安装一些依赖比如python-setuptools m2crypto ,依照提示安装然后再安装就好。也可以网上搜索有很多教程的。

启动shadowsocks

安装好后,在本地我们要用到sslocal ,终端输入sslocal --help 可以查看帮助,像这样

sslocal

通过帮助提示我们知道各个参数怎么配置,比如 sslocal -c 后面加上我们的json配置文件,或者像下面这样直接命令参数写上运行。

比如 sslocal -s 11.22.33.44 -p 50003 -k "123456" -l 1080 -t 600 -m aes-256-cfb

-s表示服务IP, -p指的是服务端的端口,-l是本地端口默认是1080, -k 是密码(要加""), -t超时默认300,-m是加密方法默认aes-256-cfb,

为了方便我推荐直接用sslcoal -c 配置文件路径 这样的方式,简单好用。

我们可以在/home/mudao/ 下新建个文件shadowsocks.json  (mudao是我在我电脑上的用户名,这里路径你自己看你的)。内容是这样:

{
"server":"11.22.33.44",
"server_port":50003,
"local_port":1080,
"password":"123456",
"timeout":600,
"method":"aes-256-cfb"
}

server  你服务端的IP
servier_port  你服务端的端口
local_port  本地端口,一般默认1080
passwd  ss服务端设置的密码
timeout  超时设置 和服务端一样
method  加密方法 和服务端一样

确定上面的配置文件没有问题,然后我们就可以在终端输入 sslocal -c /home/mudao/shadowsocks.json 回车运行。如果没有问题的话,下面会是这样...

sslocal
(如果继续请不要关闭这个终端)

如果你选择这一种请跳过第二种。你可以去系统的代理设置按照说明设置代理,但一般是全局的,然而我们访问baidu,taobao等着些网站如果用代理就有点绕了,而且还会浪费服务器流量。我们最好配置我们的浏览器让它可以自动切换,该用代理用代理该直接连接自动直接连接。所以请看配置浏览器。

第二种

安装GUI 图形界面程序,然后按照提示配置相对应的参数。安装教程地址:shadowsocks-qt5 安装指南

在ubuntu上可以这样,通过PPA源安装,仅支持Ubuntu 14.04或更高版本。

sudo add-apt-repository ppa:hzwhuang/ss-qt5
sudo apt-get update
sudo apt-get install shadowsocks-qt5

由于是图形界面,配置和windows基本没啥差别就不赘述了。经过上面的配置,你只是启动了sslocal 但是要上网你还需要配置下浏览器到指定到代理端口比如1080才可以正式上网。

配置浏览器

假如你上面任选一种方式已经开始运行sslocal了,火狐那个代理插件老是订阅不了gfwlist所以配置自动模式的话不好使。这里用的是chrome,你可以在Ubuntu软件中心下载得到。

安装插件

我们需要给chrome安装SwitchyOmega插件,但是没有代理之前是不能从谷歌商店安装这个插件的,但是我们可以从Github上直接下载最新版 https://github.com/FelisCatus/SwitchyOmega/releases/ (这个是chrome的)然后浏览器地址打开chrome://extensions/,将下载的插件托进去安装。

设置代理地址

安装好插件会自动跳到设置选项,有提示你可以跳过。左边新建情景模式-选择代理服务器-比如命名为SS(叫什么无所谓)其他默认之后创建,之后在代理协议选择SOCKS5,地址为127.0.0.1,端口默认1080 。然后保存即应用选项。

shadowsocks-0

shadowsocks-1

设置自动切换

接着点击自动切换 ( Auto switch)上面的不用管,在按照规则列表匹配请求后面选择刚才新建的SS,默认情景模式选择直接连接。点击应用选项保存。再往下规则列表设置选择AutoProxy 然后将这个地址填进去,点击下面的立即更新情景模式,会有提示更新成功!

shadowsocks-2
sorry编辑图片时候少了一步,就是填好规则列表地址后先点击立即更新情景模式 后再应用选项保存

https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt

点击浏览器右上角的SwitchyOmega图标,下面选择自动切换,然后打开google.com试试,其他的就不在这贴图了。

shadowsocks-3

开机后台自动运行ss

如果你选择了第二种可以不管这个

如果你上面可以代理上网了可以进行这一步,之前我让你不要关掉终端,因为关掉终端的时候代理就随着关闭了,之后你每次开机或者关掉终端之后,下次你再想用代理就要重新在终端输入这样的命令 sslocal  -c /home/mudao/shadowsocks.json ,挺麻烦是不?

我们现在可以在你的ubuntu上安装一个叫做supervisor的程序来管理你的sslocal启动。关于supervisor更多点击这

sudo apt-get install supervisor

安装好后我们可以在/etc/supervisor/目录下找到supervisor.conf配置文件,我们可以用以下命令来编辑

sudo gedit /etc/supervisor/supervisor.conf

在这个文件的最后加上以下内容

[program:shadowsocks]
command=sslocal -c /home/mudao/shadowsocks.json
autostart=true
autorestart=true
user=root
log_stderr=true
logfile=/var/log/shadowsocks.log

当然在16.04里你可以直接在/etc/supervisor/conf.d/下新建个文件比如ss.conf然后加入上面内容。

command = 这里json文件的路径根据你的文件路径来填写。确认无误后记得保存。sslocal 和ssserver这两个命令是被存在 /usr/local/bin/下面的,我们要拷贝一份命令文件到/bin

 sudo cp /usr/local/bin/sslocal /bin  (注意空格)

注意:16.04 命令在 /usr/bin/下所以就用

sudo cp /usr/bin/sslocal /bin  (注意空格)

现在关掉你之前运行sslocal命令的终端,再打开终端输入sudo service supervisor restart 然后去打开浏览器看看可不可以继续代理上网。你也可以用ps -ef|grep sslocal命令查看sslocal是否在运行。

这个时候我们需要在/etc下编辑一个叫rc.local的文件 ,让supervisor开机启动。

sudo gedit /etc/rc.local 

在这个配置文件的exit 0前面一行加上 service supervisor start 保存。看你是否配置成功你可以在现在关机重启之后直接打开浏览器看是否代理成功。

修改于:2016-04-26

增值服务

找不到免费的SS帐号?

不知道那里有便宜的VPS?

自己买了VPS但是不会搭建shadowsocks服务?

我在手机上,电脑上,还有浏览器到底怎么设置才能666的科学上网?

自己折腾了老半天,教程也看了很多,但就是遇到各种报错,各种这样那样的问题...

如果你有遇到以上困惑和问题,请联系站长QQ 957473256 远程一对一增值服务帮你解答,保证你可以很顺溜的使用shadowsocks服务。

提示:一般在中午12点以后联系我,可远程安装/指导和语音交流。找我就对了

发表评论

  • 评论63则,共1页,当前第1
    • wnma

      楼主您好,整篇文章使我受益匪浅,但是文章中有一点小瑕疵。在安装supervisor之后,编辑配置文件的时候,下面这句话和该行命令中的配置文件名应该是supervisord.conf。楼主少打了d。
      "安装好后我们可以在/etc/supervisor/目录下找到supervisor.conf配置文件,我们可以用以下命令来编辑"
      “sudo gedit /etc/supervisor/supervisor.conf”

    • 大野

      楼主您好,我用的Ubuntu16,64位,我按照您说的设置了chrome和Firefox都可以科学上网了,用的是shadowsocks,现在我想使用Google地球,请问怎么设置Google地球才能科学上网呢,谢谢

    • Yannnis

      楼主,您好,我照你说的去做,但是当设置好SwitchyOmega时,还是登陆不了google,而且如果不用auto Switch,连接我自己设置的代理,连百度都上不了,我的shadowsocks,json是这样设置的:
      server:23.106.136.208
      server:443
      local_port:1080
      password:**
      timeout:600
      method:aes-256-cfb,
      请问有什么问题吗?谢谢

        • 请问登陆不了google这个问题是怎么解决的呀?

            • 回复北国之神 :

              肯定没问题,因为我能访问google,twitter,facebook
              但是google和facebook登录都会超时然后终止链接无法登录
              诡异的是twitter是能正常登录的
              而且走代理的话连百度都无法登录。。。

    • DshtAnger

      今天搞ss的东西,看到您的博文,将几篇相关重组了一下,其中直接使用了您在配置浏览器那块的截图,您介意吗?会赋上链接和说明

    • tony.leao

      我是按你的方法给chrome拓展插件的 然后原来能上的shadowsocks 现在连不上了 之前是访问国内网站需要绕道国外 现在是完全不能科学上网 请指教

    • Kerry

      1、在别的地方看到的是 ssserver,那么这里的 sslocal 是什么呢?
      2、在输入 ssserver -c /etc/shadowsocks.json -d start 时总是返回错误,去掉 -d 就可以,这个 -d 是什么呢?
      3、为什么要安装 supervisor,而不是直接在 rc.local 中添加一句 ssserver -c /etc/shadowsocks.json -d start 命令呢?

      • 用ss需要一个服务端和一个本地端,这样代理才能形成。 本文所写的是本地端用法而不是教你搭建服务端。

        如果你想在vps上搭建一个ss服务器那就用到ssserver这个命令,搭建好后,想在本地的Linux电脑上用就需要sslocal命令。

        1.ssserver 指的是启动服务端,sslocal启动的是本地端。 如果你有服务端账号和密码,那要在你本地电脑上用,就需要启动sslocal 而不是ssserver 。

        2.-d 你可以用ssserver --help 来查看其所指的意思。

        3.supervisor可用可不用,你完全可以在rc.local添加你想开机启动的命令。用supervisor在sslocal因某些原因停止后,可以自动再启动。

    • 不亦乐乎

      我的lubuntu按第一种方法可以启动,
      2016-08-20 20:43:56 INFO loading libcrypto from libcrypto.so.1.0.0
      2016-08-20 20:43:56 INFO starting local at 127.0.0.1:1080
      可没法翻墙,本地没有网络设置不知道要怎么弄。

      • 我跟你的问题一样,如果站长看到麻烦回复一下

      • 启动了,还需要在浏览器上设置代理地址127.0.0.1和端口1080,看文章 配置浏览器 部分

        • chrome 现在不支持设置代理了,firefox 设置了sock5 代理模式也没有用。

          • chrome 安装SwitchyOmega插件呀,然后可以很轻松的设置代理,这很chrome的

    • sss

      不能启动啊,倒数第二步。

      • 你是说开机无法启动supervisor还是 supervisor无法启动ss ?

    • fafa

      进行到supervisor开机自动启动一步遇到问题,由于版本为16.04,吸取下面网友@Click的经验,将supervisor.conf放在 /etc/supervisor/cong.d下。 再进行下一步"sudo cp /usr/local/bin/sslocal /bin (注意空格) "拷贝到 /bin时, 终端回显没有这个文件或目录,请博主解答一下,QQ是多少?

    • fangbb

      大神你好,我按着你的教程一步一步做了,我直接用终端开启后有那个成功的标志,后面设置浏览器我也是按你说的做的,但是现在还是打不开google,不知道是什么原因。能帮助我一下吗

      • 非常感谢你的回复,你看下配置文件有没有写错的地方,或者是浏览器插件的配置,找不到问题的话可以加我QQ 帮你解决。

    • llvmChan

      总算找到一个可以成功使用shadowsock方法 感谢大神分享

    • 杨子江

      额,按照这个配置好后,上google,结果显示:未连接到互联网 代理服务器出现问题,或者地址有误。 请试试以下办法: a检查代理服务器地址 b联系系统管理员
      这是怎么一回事额。。。还请大神赐教。。谢谢了。。。

    • 你猜

      由于是图形界面,配置和windows基本没啥差别就不赘述了。经过上面的配置,你只是启动了sslocal 但是要上网你还需要配置下浏览器到指定到代理端口比如1080才可以正式上网。
      我就操了,图形系统泥煤啊,我日,啊啊啊,崩溃了,去看官网特么也没说从哪里启动

      • 你得认真看呀,两种方法,第二种是有图形界面的,既然有图形界面启动就和window一样你点击图标启动啊。 第一种方法需要在命令行里配置。 但这两种方法 ---都还需要设置浏览器才能用的 。 不知道你以前在其他地方或系统里用过ss没

    • 你猜

      不是,我就日了,特么的UBUNTU装完以后哪里启动,哪里编辑啊,我的亲阿哥啊,看得一愣一愣的

      • 你之前用过ubuntu吗? 如果你实在不知道怎么办,加Q帮你吧

    • human

      按您的教程一步一步设置最后发现我的插件里没有『自动切换 ( Auto switch)』。情景模式里就只有自己添加到SS和proxy两种模式。小白被弄晕了一整天。

      • 你再仔细看看,自动切换Auto switch 这个功能插件本身就有,你插件选项--在左边情境模式里再看看。

    • jack

      命令 sslocal -c xxx.json时提示 ERROR method rc4-md5 not supported 请问这个如何解决。谢谢!

      • 你检查一下你的xxx.json文件里的 "method":"" 换个其他的 和你服务器那边一样的

        • 没错 就是 rc4-md5,我用的是别人的服务器。

          • https://github.com/shadowsocks/shadowsocks/issues/536 你看下这里的讨论,就是你遇到的问题

            • 回复北国之神 :

              非常感谢你的回复!

    • Click

      supervisor.conf 应该放到 /etc/supervisor/conf.d 下才起作用。ubuntu 16.04

    • clearbug

      问一下:有木有不用浏览器插件就翻墙的方法呢?也就说在Ubuntu系统上做代理?

      • 可以的吧,如果你设置全局代理,所有的网络连接都用代理连接,默认代理连接走1080端口.. 具体你查资料吧,但不建议那么做。 另外浏览器设置代理切换很灵活的。

      • linux 客户端 配置好在1080端口,浏览器需要插件来判断是否使用代理PAC...

    • 漠然

      弱弱的表示,非登陆式SHELL需要自己定义需要的变量.......我只是来看看

    • 小子

      我打算两百块左右买个vps提供ss服务 有没有什么推荐? 技术支持哈

        • 有可能付费吧,也有可能免费。如果是一百多就免费好了,其实我手机也是不能用。

          • 一般都是免费提供的有些限制但是能用,而付费会员呢可以有更多的流量和其他功能,如果要规模的做那就两百块不够啊