点我
点我
文章目录
  1. 1 系统环境
  2. 2 服务器端安装和配置
    1. 安装
    2. 配置
    3. 运行
    4. 开机自启
  3. 3 客户端的安装和配置
    1. 1) 安装相关软件
    2. 2) 客户端运行
    3. 3) 浏览器代理设置
  4. 后记
  5. 参考文献
  6. 致谢

shadowsocks的安装和配置--在ubuntu和ubuntu中

最近我的vpn一直在抽风,几乎没法正常使用,而且我的chrome也是各种花屏,我快疯了,没办法,只能改用shadowsocks了。
搭建过程分为两部分:服务端和客户端(这里是主要是ubuntu的客户端)。

1 系统环境

服务器:DigitalOcean上的Ubuntu 14.04 LTS
客户端:Ubuntu 14.04 LTS

2 服务器端安装和配置

这里主要是参考github的官方说明
通过ssh登陆的服务器上去,这里不在赘述如何登陆.
以下主要针对linux服务器,windows服务器查看这里

安装

Linux不同的发行版本执行的命令如下

1
2
3
4
5
6
7
8
9
Debian / Ubuntu:

apt-get install python-pip
pip install shadowsocks

CentOS:

yum install python-setuptools && easy_install pip
pip install shadowsocks

配置

1
sudo vi /etc/shadowsocks.json

配置文件的内容大致如下:

1
2
3
4
5
6
7
8
9
10
{
"server":"你的服务器的ip",
"server_port":8388,
"local_address": "127.0.0.1",
"local_port":1080,
"password":"你设置的密码",
"timeout":300,
"method":"aes-256-cfb",
"fast_open": false
}

参数名称 解释
server 安装shadowsocks服务器ip
server_port 服务器端口号
local_address 本地服务器默认是127.0.0.1
local_port 本地监听的端口号
password 密码
timeout 超时时间,单位是秒
method 加密方法默认是: “aes-256-cfb”可以用其他加密方法
fast_open 是否使用TCP_FASTOPEN,默认为不使用
workers number of workers, available on Unix/Linux

运行

前台运行的命令
ssserver -c /etc/shadowsocks.json
后台运行
ssserver -c /etc/shadowsocks.json -d start
ssserver -c /etc/shadowsocks.json -d stop
ps:我上述两条命令都会出错,这两条命令来自官方的github,我用的是下面的
nohup ssserver -c /etc/shadowsocks.json > aa.log

开机自启

我们把它写入/etc/rc.local中就可以完成开机自启动了.

1
2
3
sudo vi /etc/rc.local  # 打开rc.local文件
# 然后在exit前面加入下面这一行
# nohup /usr/local/bin/ssserver -c /etc/shadowsocks.json > aa.log

ps:这里我之前犯了一个错误,没有写ssserver的绝对路径,导致开机无法自启动,但是手动执行的话,又是可以执行的

3 客户端的安装和配置

客户端按理说和服务器端类似,安装shadowsocks,但是我的就是这个出了问题.

1) 安装相关软件

shadowsocks有各种客户端版本,各个系统都有.在ubuntu下带图形化界面的有shadowsocks-qt5,还可以直接用命令行.

图形化:

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

PS:我的电脑安装这个以后,会自动卸载我的chrome
PPS:我刚才又试了一次,我在安装了命令行模式的shadowsocks以后,现在不会卸载我的chrome,总算正常了

1
2
3
4
5
6
7
8
9
10
The following extra packages will be installed:
libbotan-1.10-0 libqrencode3 libqtshadowsocks libzbar0
The following packages will be REMOVED:
libbotan-1.10-0:i386 libqtshadowsocks:i386 libzbar0:i386
The following NEW packages will be installed:
libbotan-1.10-0 libqrencode3 libqtshadowsocks libzbar0 shadowsocks-qt5
0 upgraded, 5 newly installed, 3 to remove and 19 not upgraded.
Need to get 1,280 kB of archives.
After this operation, 662 kB of additional disk space will be used.
Do you want to continue? [Y/n]

命令行模式:

1
2
3
4
sudo apt-get install python-pip python-dev build-essential 
sudo pip install pip
sudo apt-get install python-m2crypto
sudo pip install shadowsocks

我因为之前在环境中就安装过pip,所以我只需要执行倒数第三个和第四个命令.
但是我的倒数第四个命令pip install shadowsocks一直报错:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Exception: Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
status = self.run(options, args)
File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 278, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1177, in prepare_files
url = finder.find_requirement(req_to_install, upgrade=self.upgrade)
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 256, in find_requirement
page_versions.extend(self._package_versions(page.links, req.name.lower()))
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 432, in _package_versions
for link in self._sort_links(links):
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 422, in _sort_links
for link in links:
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 769, in links
for anchor in self.parsed.findall(".//a"):
AttributeError: 'Document' object has no attribute 'findall'

Storing debug log for failure in /root/.pip/pip.log

网上搜索一番,在这里找到答案.
解决方法很简单,执行easy_install pip,就ok(貌似是把pip重新安装了一次).

2) 客户端运行

shadowsocks图形化的比较简单,这里不表.
命令行模式,启动如下:

1
sslocal -s 服务器ip -p 8388 -k 密码

启动成功后会有如下输出:

1
2
2015-03-10 11:12:59 INFO     loading libcrypto from libcrypto.so.1.0.0
2015-03-10 11:12:59 INFO starting local at 127.0.0.1:1080

3) 浏览器代理设置

一般来说我们不希望shadowsocks做全局的翻墙,那样,访问国内的速度也会变慢,我们在chome浏览器中安装switchysharp,来管理代理.具体设置如下所示:
swichysharp设置

enjoy it!

后记

安卓客户端安装,点我点我

参考文献

1 这是一篇好博客 http://mushapi.com/shadowsocks-install-config-using.html
2 shadowsocks使用说明
3 修复我pip问题的一个issue

致谢

这个网站可以下载google play的apk,对于我等天朝良民来说,可真是个好东西
https://apps.evozi.com/apk-downloader/?id=com.github.shadowsocks

我们家笨笨的博客弄好了,欢迎访问

支持一下
扫一扫,试试看
  • 微信扫一扫
  • 支付宝扫一扫