yum -y install epel-release** yum update yum -y install python-setuptools m2crypto supervisor
easy_install pip #如果出现错误 先进行python 下的pip安装 pip install shadowsocks #python下pip的安装 wget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-1.4.tar.gz#md5=ca790be30004937987767eac42cfa44atar -zxf pip-1.4.tar.gzcd pip-1.4python setup.py install
echo 'export PATH="/usr/local/python2.7.3/bin:$PATH"' >> /etc/profile && source /etc/profile
vi /etc/shadowsocks.json 加入以下内容:
{ "server":"0.0.0.0", , , "password":"yourpassword", , "method":"aes-256-cfb" }
vi /etc/supervisord.conf 加入以下内容:
[program:shadowsocks] command=ssserver -c /etc/shadowsocks.json autostart=true autorestart=true user=root log_stderr=true logfile=/var/log/shadowsocks.log
service supervisord start #启动服务
echo "service supervisord start" >> /etc/rc.local #加入开机启动
Android客户端下载链接https://play.google.com/store/apps/details?id=com.github.shadowsocks推荐在Google Play下载,自动适配你的系统版本,以免出现问题。https://github.com/shadowsocks/shadowsocks-android/releases
电脑客户端端下载链接(Windows、Mac OS X)http://sourceforge.net/projects/shadowsocksgui/files/dist/小提醒:Windows 7用户下载***-win-x.x.x.zip,Windows 8用户下载***-win-dotnet4.0-x.x.x.zip。
iOS客户端端下载链接https://itunes.apple.com/cn/app/shadowsocks/id665729974?mt=8
Android手机客户端配置示例(以上述服务端配置为例):注意:已经root手机的小伙伴请勿授予root权限,以免发生未知问题。
服务器:你的VPS IP地址(非0.0.0.0)远程端口:8388本地端口:1080密码:yourpassword加密方法:AES-256-CFB路由:绕过局域网及中国大陆地址全局代理:勾选UDP转发:建议勾选,如有问题则取消勾选自动连接:勾选
电脑客户端配置示例(以上述服务端配置为例):(示例客户端版本:***-win-2.1.6.zip (144.9 kB),系统Windows 7,如遇无法启动的情况,请右键以管理员身份运行)
服务器 IP:你的VPS IP地址(非0.0.0.0)服务器端口:8388密码:yourpassword加密:aes-256-cfb代理端口:1080备注:随便写
右键任务栏飞机小图标,勾选“启用代理”、“开机启动”。
https://github.com/shadowsocks/shadowsocks-windows/releases shdowsocks 下载地址
2.如何查看当前VPS上的***服务端版本号?
pip show shadowsocks
3.以后如何升级VPS上的***服务端?
pip install --upgrade shadowsocksreboot
shadowsocks 支持一个账户在多个终端使用
多账户配置
友情提醒:GFW目前是根据流量检测分析匹配统计学模型的方式来判断你是否在FQ,换言之,你用什么方式FQ并不重要,重要的是你和服务器之间的流量特征是否像是在FQ。一旦匹配,既对你进行有罪推论,轻则限速,重则彻底封锁IP。在IPv4地址已经枯竭的今天,可用的美国IP地址会越来越少,所以不建议将自己的账号分享多人使用,以防被封。
7.为什么我的shadowsocks在刚搭建好的时候速度很快用了几天后速度就变慢了甚至网页都很难刷出来?
出现这种情况有多种可能性:
①shadowsocks长时间保持不间断连接会被GFW根据流量模型分析判断出你可能在FQ(原理见上面的友情提醒),于是进行主动干扰,轻则限速,重则切断你和服务端的连接。解决方法:切换一下你的网络,比如从Wi-Fi切换到3G或者从3G切换到Wi-Fi或者直接断开网络连接,等待10分钟以后,一般即可恢复正常。PS:每天晚上睡觉前关闭手机的网络连接会大大减小此种情况发生的概率;而将自己的VPS分享给多人使用则可能大大增加此种情况发生的概率,请自行斟酌。值得说明的是,VPN最容易受到此类干扰,而shadowsocks作为可自定义端口的私有协议代理已经是最不容易被干扰的FQ方式之一了。
②机房的QoS策略。解决方法:将shadowsocks服务端的server_port改为常见端口。
③本地线路抽风,你所使用宽带运营商的国际出口出现问题。比如最近南方电信部分地区国际出口严重不稳定(电信人为限制)。解决方法:<1>先尝试一下DigitalOcean的新加坡节点或者Linode的日本节点;<2>如果当地有“国际精品网”业务,开通后可立即完美解决这个问题;<3>如果不愿意给电信交保护费,那么就换家运营商吧,移动和联通都没问题。
④VPS间歇性抽风。无论你选择哪家供应商的VPS,都可能遇到有时候线路抽风、VPS速度慢或者不正常。不同的是,越是价位高的VPS出现抽风情况的可能性越低,越是价位高的VPS出现抽风情况时能保证的最低连接速度越高。出现这种情况的可能性比较低,我手头的无论是***还是DigitalOcean以及Linode暂时未遇到线路抽风情况。
⑤***的年付VPS为OpenVZ架构,同一母机下的VPS越多,同一时间段使用的人越多,速度就越慢。解决方法:一分价钱一分货,将VPS更换为DigitalOcean或者Linode。
⑥中国的国际出口带宽有限,晚高峰时段可能出现网络拥堵,速度多少会受影响,但这种情况起码白天的速度应该是没问题的。
⑦如果你在VPS上搭建了VPN并且经常使用,尤其是OpenVPN,请立即停止使用。VPN协议特征明显,GFW可以非常容易的检测到,从而盯上你的IP,轻则限速,重则彻底屏蔽。常见VPN协议根据易受干扰的程度从大到小依次为:OpenVPN > PPTP > L2TP > IPSec,尤其是OpenVPN,GFW已经可以实现对其定点清除(同样遭此待遇的还有SSHFQ)。如果你想让自己VPS的IP快速报废,那么就请尽情的使用***的控制面板搭建OpenVPN吧。重要提醒:在不明所以的情况下尽量不要在自己的VPS上搭建其他杂七乱八的FQ服务尤其是一些早已过时和落后的FQ方式,FQ手段宜新不宜旧,只搭一个***是最能保证你FQ效果和服务器稳定的好策略。
⑧其他:偶尔的速度慢或者连不上都是正常的,但如果经常性的速度奇慢或者连不上那就不正常了。
8.为什么是CentOS?
作为服务器而言,永远都是稳定性压倒一切。而CentOS简单易用,上手快速,业界公认的稳定,且易于维护,是服务器操作系统首选。
9.为什么是Python版?
Python版的***易部署,后期升级维护都非常方便,相当适合新手,支持的特性也最多,稳定性好,运行效率高。
10.为什么使用supervisord?
与繁琐的带参执行方式相比,service命令在CentOS系统里使用起来更加灵活方便,比如:
①启动***服务端:service supervisord start②关闭***服务端:service supervisord stop③重启shadowsocks服务端:service supervisord restart-------------------------------
错误排查
已经成功的小伙伴可以直接略过这部分了。
温馨提醒:在怀疑教程的任何一个地方之前,请先怀疑你自己。
服务端搭建成功的唯一衡量标准是在手机或者电脑客户端正确配置后能否顺利的访问被屏蔽的网站,无论是电脑还是手机,只要有一个终端能够成功FQ即视为服务端搭建成功,出现所谓的可以连接但无法上网其实还是服务端或者客户端的配置有问题,认真按照下面的步骤一步步排错吧。
遇到问题的小伙伴请先认真仔细阅读这两篇文章http://linux.chinaunix.net/doc/office/2005-01-24/898.shtmlhttp://linux.vbird.org/linux_basic/0310vi.php上面的链接为vi编辑器基本用法扫盲(新手必读)
最容易出现问题的地方,就是vi编辑器的使用,如果你在执行vi命令后没有按 i 键进入编辑模式就直接复制粘贴,会造成粘贴内容的首行被覆盖,从而导致错误;或者你在粘贴内容后,没有以正确的方式保存退出,同样会出现问题。
如果你在执行完reboot命令后,手机端无法连接,请先确保你的手机端配置正确,并且网络环境良好(参照上面的Android手机客户端配置示例)。然后用putty登入你的VPS后通过以下方式逐步排查:
1.执行命令service supervisord start,执行完毕后如果没有报错,手机端也可以正常连接,那么问题出在vi /etc/rc.local这个环节,请重新检查该文件配置;如果手机端依然无法连接,请继续往下看。
2.执行命令ssserver -c /etc/shadowsocks.json,执行完毕后如果没有报错,手机端也可以正常连接,那么问题出在vi /etc/supervisord.conf这个环节,请重新检查该文件配置;如果手机端依然无法连接,请继续往下看。
3.如果依次进行完以上两步后,手机端依然无法连接,那么问题出在vi /etc/shadowsocks.json环节,请重新检查该文件配置。
4.如果以上三个文件的配置问题都解决后,执行reboot命令后,手机端依然无法连接,那么说明你在教程最开始的5行命令没有正确执行,在***和DigitalOcean以及Linode官网的控制面板里重装VPS系统后,按照教程认认真真仔仔细细的重新来过吧。