shadowsocks搭建教程


简单就学会ss搭建,科学上网。

科学上网指北

简单的shadowsocks介绍(可以跳过)

shadowsocks是一种基于socks5代理方式的网络数据加密传输包,并采用Apache许可证、GPL、MIT许可证等多种自由软件许可协议开放源代码。shadowsocks分为服务器端和客户端,在使用之前需要先将服务器部署到服务器上,然后通过客户端连接并创建本地代理。

其运行原理与其他代理工具基本相同,使用特定的中转服务器完成数据传输。当我们在服务器端部署完shadowsocks以后,只需要在客户端输入指定的密码,加密方式和端口,就可以进行连接。在成功连接到服务器后,客户端会在用户的电脑上构建一个本地Socks5代理。浏览网络时,网络流量会被分到本地socks5代理,客户端将其加密之后发送到服务器,服务器以同样的加密方式将流量回传给客户端,以此实现代理上网。

更详细的介绍请参见 wiki

物资准备

  1. 一个服务器,在墙外的服务器。我在这里使用的是digitalocean购买的美国节点(选择他是因为github的学生优惠包里面送了这个网站的50美金,能用十一个月呢几乎)
  2. 一颗翻墙的心。

指北正文

下面所提供的所有方法其实就只是一个核心内容:在服务器上部署ss

买了vps以后先选择一个系统(最好是linux)然后本地连接上去。连接方法这里不细说,用ssh或者直接在vps平台上也可以登录上去。

正经的ss(以centos7为例)

请注意 centos6 和 7 的教程不是完全一样的哈,如果选择了centos请注意一下,此外ubuntu正经搭建ss过程请点击这里

正文开始

  1. 安装shadowsocks

    1
    2
    3
    4
    5
    6
    7
    8
    // 安装python setup tools
    yum install python-setuptools-y
    // 安装pip
    easy_install pip
    // 升级pip
    pip install -upgrade pip
    // 安装shadowsocks
    pip install shadowsocks
  1. 进行shadowsocks配置

先去到ss的配置文件进行修改,文本路径一般为 /etc/shadowsocks-libev/config.json
现在使用vim进行编辑

1
vi /etc/shadowsocks-libev/config.json

然后对其进行以下内容的修改

1
2
3
4
5
6
7
8
9
10
11
{
"server": "0.0.0.0",
"server_port": 8989,
"local_address": "127.0.0.1",
"local_port": "1080",
"password": "yourpassword",
"timeout": 300,
"method": "ase-256-cfb",
"fast_open": false,
"workers": 1
}

其中,password就是你的密码,server_port就是在客户端填写的端口,可以自己改成喜欢的,method是加密方式,如果想在路由器上运行的话可以改成rc4-md5这样路由器的负荷会小一些,同时加密的安全性也不错。

  1. 创建服务

    1
    vim /usr/lib/systemd/system/shadowsocks.service

然后写入下面的内容

1
2
3
4
5
6
7
8
9
10
11
12
13
[Unit]
Description=Shadowsocks Server
Documentation=https://github.com/shadowsocks/shadowsocks
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
#设置启动时的配置文件,根据自己的需求改.
ExecStart=/usr/bin/ssserver -c /etc/shadowsocks-libev/config.json
-d start
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/usr/bin/ssserver -d stop
[Install]
WantedBy=multi-user.target

保存后退出。

  1. 启动服务

    1
    2
    systemctl enable shadowsocks
    systemctl start shadowsocks
  1. 配置防火墙

    1
    2
    3
    firewall-cmd –permanent –add-port=8989/tcp
    firewall-cmd –permanent –add-port=8989/udp
    firewall-cmd –reload

ssr(以ubuntu为例)

简单粗暴点就是三行

1
2
3
wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocksR.sh
chmod +x shadowsocksR.sh
./shadowsocksR.sh 2>&1 | tee shadowsocksR.log

回车,进入ss的配置。
可以按照提示输入相应的东西,也可以一路回车,最后到shadowsocks.json中修改配置。
配置完成会给你输出你的shadowsocks配置,九子啊客户端中配置相应的项就好了。

详细参看科学上网教程系列中的第七点

其他

我是不是漏掉了客户端没有讲?
不同操作系统使用客户端不太一样,因为我用的macOS所以我这里只能提供mac客户端的下载链接了

shadowsocksX-NG-R

参考文章

CentOS 7 搭建ShadowSocks(ss)服务器