Shadowsocks基础

介绍

技术 特性 适用场景 说明
Shadowsocks 服务端代理 - 下载
- Github
- 客户端下载
ShadowsocksX-NG 客户端代理 Shadowsocks没有HTTP代理,导致我们需要使用polipo等软件进行协议转换。 有一个新的Shadowsocks的客户端叫 Shadowsocks-NG 解决了一个长久以来的痛点。
- 下载

服务器端安装

CentOS

1
2
$ yum install python-setuptools && easy_install pip
$ pip install shadowsocks

Ubuntu

1
2
$ apt-get install python-pip
$ pip install shadowsocks

Windows

Python for Windows

配置服务端

1
$ vim /etc/shadowsocks.json

shadowsocks.json 配置示例1

1
2
3
4
5
6
7
8
9
{
"server":"xxx.xx.x.xx",
"server_port":7777,
"password":"xxxxxxx",
"timeout":300,
"method":"aes-256-cfb",
"fast_open":false,
"workers": 1
}

shadowsocks.json 配置示例2

1
2
3
4
5
6
7
8
9
10
11
12
13
{
"server":"xxx.xx.x.xx",
"port_password":{
"6666":"xxxxxxx",
"7777":"xxxxxxx",
"8888":"xxxxxxx",
"9999":"xxxxxxx"
},
"timeout":60,
"method":"rc4-md5",
"fast_open":false,
"workers":1
}

配置说明

说明
server 服务器IP地址
server_port 用于监听用户连接的端口,只要不是已经被占用的端口就可以。用户连接shadowsocks时输入这个端口号。
password 用户连接shadowsocks时的密码,自定义。
timeout 超时时间,单位是秒。
method 加密方法,可选择 "aes-256-cfb", "rc4-md5"等。
fast_open true 或false。如果你的服务器 Linux 内核在3.7+,可以开启fast_open 以降低延迟。
workers workers数量,默认为1。

管理 shadowsocks 服务

1
2
3
4
5
6
7
8
9
10
11
# 启动 shadowsocks 服务
$ ssserver -c /etc/shadowsocks.json -d start

# 关闭 shadowsocks 服务
$ ssserver -c /etc/shadowsocks.json -d stop

# 重启 shadowsocks 服务
$ ssserver -c /etc/shadowsocks.json -d restart

# 查看日志
$ cat -n /var/log/shadowsocks.log

客户端

配置客户端

配置终端走代理

安装 ShadowsocksX-NG

https://github.com/shadowsocks/ShadowsocksX-NG/releases

配置

方法一:终端临时代理配置

终端临时开启代理

1
2
export http_proxy=127.0.0.1:1087
export https_proxy=127.0.0.1:1087

终端关闭代理

1
2
$ unset http_proxy
$ unset https_proxy

方法二:配置别名方便启动

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ vim ~/.bash_profile
##### 加入如下内容 #####
alias proxy-on='export http_proxy=127.0.0.1:1087;export https_proxy=$http_proxy'
alias proxy-off='unset http_proxy;unset https_proxy'
##### 内容结束 #####

# 立即生效
$ source ~/.bash_profile

# 开启代理
$ proxy-on

# 关闭代理
$ proxy-off

# 检查配置是否生效
$ curl www.google.com
坚持原创技术分享,您的支持将鼓励我继续创作!
0%