欢迎光临
一个有态度、有温度的分享型博客

在Digitalocean上搭建Shadowsocks并使用锐速进行加速优化

以前总是听说Digitalocean的低配版($5每月,1CPU ,20GB SSD Disk)搭建Shadowsocks速度一般,然而,最近我尝试在Digitalocean上搭建了Shadowsocks,并启用了锐速进行加速,发现并不是别人说的那样。以前总是倾向于Conoha和Linode,这两个供应商口碑都非常好,但是Linode现在且不说口碑较好的日本节点常常购买不上,就是购买成功了基本上IP也是很快被封了,Conoha还是挺好的,ip不会像Linode那样被国内封的厉害,但是价格也是较高的,如果仅仅搭建VPN,确实有点可惜。就是基于这样的原因我尝试了digitalocean,发现真的是好极了,并且它已经稳定运行19天了!下面是我购买的Digitalocean低配版:

My Droplets

在此我把我在Digitalocean上搭建Shadowsocks服务器和使用锐速进行加速的过程记录一下,供需要的朋友参考!

1.购买DigitalOcean

实际上,在最初的两个月你并不需要购买,你只需要通过别人的推广链接点击注册(你可以获得$10的优惠券),你就可以免费试用两个月了,我就是这么得来的$10,并已经使用了19天了。额,顺便也把我的推广链接贴在这里 – 「推广链接」。通过此链接注册你可以获得$10,而我可以获得$25。当然,这是自愿的!

你注册成功并登录之后,可以通过下图中的红色圈出的位置,进行添加一台VPS(也就是Create a droplet,小水滴,么么哒 ^_^)。

添加

然后你会看到如下界面:

上图就是让你选择一个操作系统的,当时我选的是CentOs 6.5 x64,今天发现只有CentOS 6.8没有6.5了,那就选6.8吧。

==================2016年8月2日更新==============

DigitalOcean中可以选择的CentOS版本经常变化,第一次搭建的时候是有6.5,上次是6.8,这次有CentOS 7.2 X64版本,如果当前选择的操作系统版本和可供选择的内核版本不是很相近,更换内核后,会出现无法进行远程连接的情况,具体原因是更换内核后网卡信息变了(使用ifconfig -a查看),解决的方法是查看[这里]。

然而今天(20160802)我又尝试了一遍,如上图,选择的是CentOS 7.2 x64,同样是执行成功了!变更的内容再次说明一下,所以你搭建的时候也应该注意一下经常变化的版本和锐速支持的内核版本对比一下,防止锐速安装失败!需要说明的是:这次我并没有更换内核就可以成功安装锐速。

接下来选择大小和套餐,如下图:

在上图中显示的步骤中,你只需要选择最便宜的那个$5/mo,如果你是通过我的推广链接注册成功的,选择这个套餐已经够你免费使用两个月的了!

接下来是选择主机所在的位置,之所以我们能够通过搭建VPS进行科学上网,就是因为VPS所在的位置,比如美国,是可以无限制的访问网络的,所以选择国内的VPS是没用的,这里我们选择新加坡的节点,也是就下图所示的这个,因为新加坡的速度还是很快的!

选择好节点位置后,剩下的选项可以不选择或者以后再修改,然后就点击下图中的信息进行主机创建就可以了!

通过上述步骤你现在已经拥有了自己的小水滴,即你自己的VPS服务器,接下来咱们就可以在这台服务器上搭建Shadowsocks服务器代理了!

2.远程连接

在第一步你已经搭建了一台自己的VPS,细心的你可能发现为什么搭建好系统怎么没让设置用户名密码呢?别担心,这个已经发送到你的邮箱了,你可以查收一下你的邮箱,用户为root,密码是随机生成的,我们需要在第一次登陆系统的时候重置一下密码,邮件大致内容如下:

那么接下来我们就来远程登陆一下,不过你需要在下图的位置先看一下你的IP地址:

好了,有了IP地址,我们就可以使用XShell(推荐使用xshell,免费不需要破解,炒鸡好用!当然你也可以使用putty,secureSRT等)进行远程连接了,具体步骤如下:

1)运行xshell,点击右上角的文件–>新建;

2)配置进行远程连接的参数;你需要将你的ip地址,用户名,密码等参数填写到远程连接会话中,然后点击确定按钮进行连接,如下图

如果上面你的配置信息没错的话,现在你已经成功登陆了,不过第一次登陆的时候会提示你重置一下密码,如下:

You are required to change your password immediately (root enforced)
Last login: Fri Jul  8 01:35:10 2016 from 112.231.191.182
Changing password for root.
(current) UNIX password: 
New password: 
Retype new password: 
[root@centos-shadowsocks ~]# 

你只需要输入你当前的密码(在邮箱里复制粘贴过来),然后重新输入你想要设置的新密码,并重复一遍就可以了!

3.搭建Shadowsocks

使用xshell进行远程连接,并重置密码后,我们就可以开始搭建Shadowsocks服务器了,具体步骤如下:

1)执行如下命令,进行安装shadowsocks(命令需要一条条的输入,然后回车,执行完一条,在执行下一条命令),过程中可能会让你选择确认的地方,直接输入”y”回车即可:

yum install epel-release
yum update
yum install python-setuptools m2crypto supervisor
easy_install pip
pip install shadowsocks

2)上一步我们安装了shadowsocks,然后我们需要对其进行配置,首先是端口、密码、加密方式等信息,接下来输入如下命令:

vi /etc/shadowsocks.json

这样我们就进入了文件的编辑状态,点击键盘“i”键,开始编辑,这是一个新文件,把下列内容复制进去:

{
    "server":"0.0.0.0",
    "server_port":8388,
    "local_port":1080,
    "password":"yourpassword",
    "timeout":600,
    "method":"aes-256-cfb"
}

其实,上面的内容你只需要将password那一项修改为你自己的密码即可,然后依次”点击Esc”–>”点击shift+:” –>”输入wq” –> “回车”,这样文件就保存了!

接下来再编辑文件/etc/supervisord.conf,执行如下命令进行编辑:

vi /etc/supervisord.conf

还是像刚刚那样,点击“i”键开始编辑,将下列内容粘贴到文件尾部的空行处:

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

上面的内容原样粘贴就行,然后依次”点击Esc”–>”点击shift+:” –>”输入wq” –> “回车”,这样文件就保存了!

接下来再编辑文件/etc/rc.local,执行如下命令进行编辑:

vi /etc/rc.local

还是像刚刚那样,点击“i”键开始编辑,将下列内容粘贴到文件的空行处:

service supervisord start

上面的内容原样粘贴就行,然后依次”点击Esc”–>”点击shift+:” –>”输入wq” –> “回车”,这样文件就保存了!

最后,我们需要重启一下服务器,在xshell终端输入”reboot”,等待服务器重启完毕后,再重新远程连接一下,输入如下命令,查看端口刚刚你/etc/shadowsocks.json中配置的端口是否处于监听状态:

[root@centos-shadowsocks ~]# netstat -antlp | grep 8388
tcp        0      0 0.0.0.0:8388        0.0.0.0:*     LISTEN      1227/python  

比如上面的8388端口处于listen状态,说明服务器就搭建成功了!

3)内容补充,你可能需要以下命令:

①启动Shadowsocks服务端:service supervisord start;

②关闭Shadowsocks服务端:service supervisord stop;

③重启shadowsocks服务端:service supervisord restart;

④卸载:pip uninstall shadowsocks;

⑤Centos7设置开机自启:systemctl enable supervisord.service

4.使用锐速进行加速

如果没有对服务器进行优化的话,代理的速度可能不是很理想,我们可以安装以下锐速进行加速,具体如下:

执行如下命令:

wget -N --no-check-certificate \
https://raw.githubusercontent.com/91yun/serverspeeder/master/serverspeeder-all.sh \
&& bash serverspeeder-all.sh

5.配置客户端

我们需要下载shadowsocks客户端,然后进行相应的配置,这一步就简单了,首先选择一个你方便的下载地址进行下载:

下载完成后开始配置,如下图:

到这里服务器就搭建成功了,开始畅想网络吧!

评论 27

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    你好!不知怎么称呼,我想请问下,按照您的方法,我已经成功搭建了SS,但是优化部分出了错误,显示“锐速暂不支持该内核,程序退出.自动安装判断比较严格,你可以到http://www.91yun.org/serverspeeder91yun手动下载安装文件尝试不同版本”
    不知您有什么办法吗?
    我的服务器内核版本是选的digital ocean里面最新的CentOS 7.3.1611 x64
    操作系统:CentOS
    发行版本:7.3
    内核版本:3.10.0-514.21.1.el7.x86_64
    位数:x64
    锐速版本:3.10.61.0

    njz9个月前 (09-20)Reply
    • 这个版本我还没试过呢,估计是需要更换内核的

      rxwangwb9个月前 (09-20)Reply
  2. #2

    博主你好!感谢你的教程!我有一个问题,如果我想配置多个用户文件,即能够将该服务给3-5人用,该如何操作?谢谢!

    neo8个月前 (10-12)Reply
    • vi /etc/shadowsocks.json

      {
      “server”:”my_server_ip”, #填入你的IP地址
      “local_address”: “127.0.0.1”,
      “local_port”:1080,
      “port_password”: {
      “8381”: “foobar1”, #端口号,密码
      “8382”: “foobar2”,
      “8383”: “foobar3”,
      “8384”: “foobar4”
      },
      “timeout”:300,
      “method”:”aes-256-cfb”,
      “fast_open”: false
      }

      rxwangwb8个月前 (10-12)Reply
  3. #3

    感谢博主的解答!

    neo8个月前 (10-12)Reply
  4. #4

    尝试用XShell和putty远程连接,都提示连接失败,请问博主可能哪里出了问题

    shahar8个月前 (10-13)Reply
    • 搜先看看能ping通吗,然后查看防火墙之类的

      rxwangwb8个月前 (10-13)Reply
    • 你用的digitalocean是吗,还是其他的,首先确定是否能ping通,如果能ping通,再查看以下你的端口是否开放,最好你先说一下你的环境怎样的,比如vps是哪个,系统版本之类的

      rxwangwb8个月前 (10-13)Reply
      • 用的是digitalocean,能ping通,端口开放说的是power on吗?所有系统都试了,都无法连接上,怀疑是我哪里设置错了http://www.cnblogs.com/Reyzal/p/5596383.html,这个教程有问题吗

        shahar8个月前 (10-14)Reply
        • 你用的是私钥登录吗,还是用户名密码?

          rxwangwb8个月前 (10-14)Reply
          • 都有尝试,都没有办法连接

            shahar8个月前 (10-22)
  5. #5

    博主,你好,谢谢你的教程。昨日按照你的教程成功假设SS,大概使用了20小时一直正常,不过突然间与服务器连接断线,用Xshell不能连接自己的VPS,ping不到,在DigitalOcean页面没有看到自己的VPS有什么问题。因为我用的是路由器拨号,应该与电脑的设置无关,单独有手机流量连接亦无反应。不知道博主是否方便指导一下如何解决?万分感谢!

    bubualex8个月前 (10-18)Reply
  6. #6

    楼主你好,看了你的教程受益匪浅。无奈最近差的严,我用的digitalocean的服务器,基本一天就得换一次droplet(之前的ip ping不通),请问除了备份恢复之外还有什么别的好办法吗?应该只是那个ip被gfw封了。

    njz8个月前 (10-19)Reply
  7. #7

    你好博主,easy_install pip时出错了,错误信息显示如下
    [root@centos-512mb-sfo2-01 ~]# easy_install pip
    Searching for pip
    Reading http://pypi.python.org/simple/pip/
    Couldn’t find index page for ‘pip’ (maybe misspelled?)
    Scanning index of all packages (this may take a while)
    Reading http://pypi.python.org/simple/
    No local packages or download links found for pip
    error: Could not find suitable distribution for Requirement.parse(‘pip’)

    foretab8个月前 (11-02)Reply
  8. #8

    有没有关于”查看nginx是否支持多HTTPs的内容呢.”我不知道我的环境是否支持…

    lo7个月前 (12-03)Reply
  9. #9

    您好博主,先感谢您的热心文章给我们的帮助,我按上边操作遇到了下边的问题
    从头到尾都很顺利,操作完以后输入/etc/shadowsocks.json,出现以下提示
    -bash: /etc/shadowsocks.json: Permission denied
    我用的是digitalocean CentOS 7.4 x64
    小白不太懂,感谢分享!

    网亿6个月前 (01-06)Reply
  10. #10

    您好博主,先感谢您的热心文章给我们的帮助,我按上边操作遇到了下边的问题
    从头到尾都很顺利,操作完以后输入/etc/shadowsocks.json,出现以下提示
    -bash: /etc/shadowsocks.json: Permission denied
    我用的是digitalocean CentOS 7.4 x64
    小白不太懂,感谢分享!

    我设置了下权限执行/etc/shadowsocks.json出现以下错误
    /etc/shadowsocks.json: line 3: server:0.0.0.0,: command not found
    /etc/shadowsocks.json: line 5: server_port:8388,: command not found
    /etc/shadowsocks.json: line 7: local_port:1080,: command not found
    /etc/shadowsocks.json: line 9: password:tutu520,: command not found
    /etc/shadowsocks.json: line 11: timeout:600,: command not found
    /etc/shadowsocks.json: line 13: method:aes-256-cfb: command not found

    网亿6个月前 (01-06)Reply
    • 这个文件不需要执行,是个配置文件,有问题可以发邮件联系,我帮你看看

      rxwangwb6个月前 (01-07)Reply
      • 好的,您的邮件地址多少

        网亿6个月前 (01-07)Reply
  11. #11

    您好,请问我用xshell登入后第一次确实提示我修改密码但是根本就不能复制密码过去,手打也不行,输入不了任何字符请问是怎么回事???

    xiaoma5个月前 (01-17)Reply
    • 可以的,xshell支持右键菜单复制,shift+ins都可以,默认密码应该是dg通过邮件发送给你了

      rxwangwb5个月前 (01-18)Reply
  12. #12

    博主你好,前面我的设置都没有问题,在端口监听那里,输入命令之后没有反应,没有您给的那个listen显示,请问是怎么回事?是端口不能用了么?

    zby5个月前 (02-03)Reply
  13. #13

    您好博主,先感谢您的热心文章给我们的帮助,我按上边操作遇到了下边的问题
    从头到尾都很顺利,操作完以后输入/etc/shadowsocks.json,出现以下提示
    -bash: /etc/shadowsocks.json: Permission denied
    我用的是digitalocean CentOS 7.4 x64
    小白不太懂,感谢分享!
    我跟这位朋友一样遇到这个问题,跳过这个步骤安装锐速却显示-bash: wget: command not found
    没有发现命令,配置ss也没有成功
    求解答

    xius5个月前 (02-07)Reply
  14. #14

    您好博主,先感谢您的热心文章给我们的帮助,我按上边操作遇到了下边的问题
    从头到尾都很顺利,操作完以后输入/etc/shadowsocks.json,出现以下提示
    -bash: /etc/shadowsocks.json: Permission denied
    我用的是digitalocean CentOS 7.4 x64
    小白不太懂,感谢分享!

    我跟這位朋友一樣遇到這個問題,跳過這個步驟后 安裝銳速也失敗 設置ss也上不了外網,心急如焚,可以抽空解答下嗎博主?

    xius5个月前 (02-07)Reply
    • 权限问题,你得用root账号执行,尝试一下 sudo -i命令

      rxwangwb5个月前 (02-07)Reply
  15. #15

    新加坡节点不行吧,太慢了,ping值还不错

    三牛3个月前 (03-20)Reply