搜索此博客

2015年1月27日星期二

给鲁炜和中国网信办的公开信

2015126
中国,北京。
鲁炜先生:
2015122日, 您领导的中国网信办对我们发表的Outlook在中国遭中间人攻击的文章进行了公开回应。 在中国网信办的公开回应中,您的同事姜军说我们的指责是无端臆测,纯属境外反华势力的造谣和污蔑
我们GreatFire.org成员对中国网信办的评论非常愤怒,我们在本公开信中逐条驳斥。
我们没有轻易指责中国网信办。我们收集了大量数据来支持我们的结论。很多报告都支持了我们的分析,包括了截图许多中国网民的报告和其他技术人员的独立分析
我们之前报道过对iCloud,雅虎,微软和谷歌进行的中间人攻击,每个公司都确认了中间人攻击的真实性。我们还邀请了其他技术人员对攻击数据进行了独立分析。 你可以阅读对每次攻击的独立分析: OutlookiCloud谷歌雅虎Github 。 每个分析结论都类似:
Our conclusion is that this was a real attack on Microsoft's email service. Additionally, the attack is very similar to previous nationwide Chinese attacks on SSL encrypted traffic, such as the attack on Google a few months ago.   
我们认为对微软Email的中间人攻击是真实的。并且,此次攻击与此前中国对谷歌等公司的攻击类似。
Two independent security experts contacted by Reuters said Greatfire's report appeared credible.
"All the evidence I've seen would support that this is a real attack," said Mikko Hypponen, chief research officer at security software developer F-Secure.
路透社邀请了两位独立技术人员来检查GreatFire的报告,他们认为GreatFire报告是可信的。Mikko Hypponen-安全公司F-Secure的研究组长说:所有我看到的证据都表明这个攻击是真实的
To be more specific, it appears as if the MITM attacks are being performed on backbone networks belonging to China Telecom (CHINANET) as well as China Unicom.  
更具体的来说,中间人攻击是在中国电信和中国联通骨干网进行的。
All evidence indicates that a MITM attack is being conducted against traffic between China’s nationwide education and research network CERNET and www.google.com.
所有证据都表明中国教育网和www.google.com之间的通信被中间人攻击。
The fact that the MITM machine was six hops away from the user indicates that the MITM is taking place at some fairly central position in China's internet infrastructure, as opposed to being done locally at the ISP.
中间人攻击发生处和用户之间有6跳。这表明中间人攻击发生在中国互联网中心,而不是在本地网络运营商。
中国网信办虽然不承认对Outlook进行了中间人攻击,但却承认此次攻击是真正发生过的。如果您认为中国网信办是无辜的,那么您肯定认为其他人应该对此次攻击负责。
中国网信办没有对Outlook进行了中间人攻击,或者没有故意让其他人进行攻击,那请问您如何解释为何敌对势力能在过去两年中至少6次在中国骨干网进行全国范围内的攻击?
201410月,中国网信办公开否认攻击iCloud。为什么在这之后,中国网信办没有对骨干网发生的攻击进行任何调查?毕竟您的同事姜军说过:
中国政府是网络安全的坚定维护者,坚决反对任何形式的网络攻击,并依法查处、严厉打击在中国境内,或利用中国网络设施发起网络攻击的行为。
鲁炜先生,请告诉我们中国网信办是如何严厉打击利用中国网络设施发起网络攻击的行为的?为什么您的部门把国家媒体人民网上的相关报道都删除了
姜军还对我们GreatFire.org进行了指责,我们在公开信中进行统一回复。
"姜军说Greatfire.org是境外反华组织创办的反华网站(1),长期对中国政府进行无端攻击(2).此次炒作选在国家网信办宣布依法关闭一批违法违规网站、栏目和微信公众账号之时(3),蓄意引发不满情绪,污蔑指责中国网络空间治理制度(4)”.
(1)2011年,我们三个普通人在没有任何组织帮助的情况下在创建了GreatFire.org。我们对中国互联网审查制度不满,并决定对抗它。我们并不反华,但我们反对中国的互联网审查。
(2)我们从2011年起开始检测和报道中国互联网审查。GreatFire.org的主要功能是自动测试中国的互联网审查。我们所有的报道都有数 据支持,数据来自自动测试,人为测试和用户反馈。前面我们已经提到,对此次中间人攻击的报道中,我们提供了未处理过的完整数据。我们提供这么多证据,完全 说不上是无端臆测
(3)除非你认为GreatFire.org对微软进行了攻击,我们如何能选在国家网信办宣布依法关闭一批违法违规网站、栏目和微信公众账号之时进行报道?微软已经确认了攻击的真实性-我们只是迅速报道而已。实际上,对Outlook的中间人攻击和国家网信办关闭一批网站、栏目和微信公众账号发 生在一起更加表明中国网信办进行了中间人攻击。关闭微信账号和对Outlook进行攻击可能是同一个专项运动呢。
(4)我们在最后一点上意见还是统一的,我们确实想要引发不满情绪,污蔑指责中国网络空间治理制度。我们会一直观察你的所作所为,当你犯错误时进行批评,最终来结束中国互联网审查。我们希望网民和互联网公司会一起对抗GFW和中国互联网审查。我们已经呼吁微软,苹果和其他公司立即取消对CNNIC的证书信任。你发动的中间人攻击,以及对攻击的抵赖和你对我们的无理指责更加突出取消对CNNIC证书信任的重要性。
我们希望你为中国网信办的造谣和污蔑道歉。 毕竟,无端猜测和指责无助于解决网络问题“.
GreatFire.org 团队

2015年1月26日星期一

国外DNS服务器

对付DNS劫持,就要国外服务器:
8.8.8.8
8.8.4.4

208.67.222.222
208.67.220.220

209.244.0.3
209.244.0.4

156.154.70.1
156.154.71.1

4.2.2.1
4.2.2.2

208.76.50.50
208.76.51.51

198.153.192.40
198.153.194.40

198.153.192.50
198.153.194.50

198.153.192.60
198.153.194.60

8.26.56.26
8.20.247.20

184.169.143.224
184.169.161.155

67.138.54.100
207.225.209.66

配置方法:控制面板——》网络和Internet——》网络和共享中心——》更改适配器设置——》找到本地连接(就是正在用的那个网络连接)——》右键属性——》Internet协议版本4——》双击打开之后把“自动获取DNS服务器地址”改为“使用下面的DNS服务器地址”并填上地址(从上面那堆里任选一个)

最好事先win+r之后输入cmd回车,再输入ipconfig/flushdns回车,刷新DNS缓存。

2015年1月25日星期日

让DD-WRT或OpenWRT路由自动host翻墙



本项目旨在让从未接触过路由自动翻墙的你,5分钟轻松简单的搞定路由自动翻墙,并且一次部署后,从此每日自动更新以适应GFW的封锁变化。
让路由器自动翻墙被越来越多的人所期望,方法也多种多样,本项目所使用的方法为:利用路由器的DNSMasq功能,指定一份自动更新的Hosts列表,让路由下的所有设备都能访问到正确的网站IP,避免被墙。
Hosts内容
支持出墙的网站:
Google 家族(包括 YouTubeGmailGoogle+Google Drive 等)
OneDrive
Wikipedia
Facebook
Twitter
Flickr
Dropbox

Hosts内容由Gavin更新维护。
开始部署
以下教程以DD-WRT路由为例:
一、获取最新Hosts文件
路由器先启用jffs2SSHTelnet连接到路由,执行:
mkdir /jffs/hosts/ && cd /jffs/hosts/ && wget http://hosts.gav1n.com/start.sh && sh start.sh
稍等片刻,执行成功后得到Hosts文件,保存在 /jffs/hosts/GavinHosts.txt
选做 没有jffs空间的路由,请先完成以下两步后再执行上面的命令:
执行命令:
mkdir /tmp/jffs
在管理-命令 处,输入:
mount –bind /tmp/jffs /jffs
保存为启动指令,重启路由。
二、为DNSMasq指定Hosts文件
在路由管理界面服务-服务处:
启用DNSMasq,并在 DNSMasq附加选项 填入:
addn-hosts=/jffs/hosts/GavinHosts.txt
三、定时更新
在路由管理界面管理-管理处:
启用Cron,附加任务 输入:
59 2 * * * root sh /jffs/hosts/start.sh
这样就实现了每天凌晨259分获取最新的Hosts文件。数字592代表时间,请改成任意时间,以免太多用户在同一时间访问造成服务器拥堵。
至此,已完成,重启路由!
访问一下https://www.google.com.hk看看!
源地址:http://gav1n.com/internet/rang-dd-wrt-huo-openwrt-lu-you-zi-dong-fan-qiang/

2015年1月23日星期五

科学上网的方案教程

   对于科学上网的方案,我建议是购买个便宜的VPS,这样系统自带了SSH,花几分钟就能安装上VPN(PPTP)和ShadowSocks,相当于花一 笔钱买了3个不同功能的科学上网工具。另外VPN和SSH还可以开多个帐号,供好友使用,自己有空的话,还可以在上面搭个网站赚钱,可谓一举多得。
  一、SSH上网方案
  对于与SSH、VPN和ShadowSocks来说,SSH是最简单的,开通VPS后即可使用SSH帐号,服务器端不用设置。
  SSH客户端有两种方案,一种是MyEnTunnel+PuTTY,一种是Bitvise SSH Client,MyEnTunnel支持自动登录,Bitvise SSH Client要自动登录需要添加参数-loginOnStartup,这样也可以自动登录。
   在设置上,MyEnTunnel设置很简单,按照中文界面全填写即可。BitviseSSH设置相对比较麻烦,需要多加注意,“Login”页签 Inital meth选password,然后写密码,“Option”页签选择Always reconnect automatically,On Login处不要选择Open Terminal和Open SFTP。“Services”页签选中Enable Socks Https Proxy Forwarding,在“Listen Port”这里,根据自身需求填写本地端口号(一般写1080即可)。
  设置好了 后,通过SSH上网的方案是,电脑启动组里添加MyEnTunnel或BitviseSSH,然后Dropbox等各类应用通过SOCK5连 接,Chrome安装Proxy SwitchySharp或Proxy SwitchyOmega,代理服务器协议为SOCKS5,代理服务器地址127.0.0.1,代理端口1080,选自动切换模式,这样访问国内国外都是 高速。对于Firefox用户来说可参考此文配置。
  不过,SSH手机不太方便,如果单个IP地址用的多了有可能会被干扰,不要局域网很多人一起用,因此最好备用个VPN,或者选择ShadowSocks也可。
科学上网
二、ShadowSocks上网方案
  ShadowSocks也是和SSHD类似的Socks5代理,是一个开源项目。ShadowSocks使用自定义协议,屏蔽和干扰就更为困难,因此相对来说稳定一些。
  有网友做了个服务器端一键安装ShadowSocks的脚本,使用root用户登录,运行以下命令:
  wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-libev.sh
  chmod +x shadowsocks-libev.sh
  ./shadowsocks-libev.sh 2>&1 | tee shadowsocks-libev.log
  安装完成后,得到的服务器端口:8989,客户端端口:1080,密码为自己设定的密码。
  ShadowSocks客户端可以点这里下载。安装完成后,配置客户端参数。
  如果有智能路由器的话,在路由器上安装ShadowSocks,可以不需要在电脑安装客户端。
   设置好了后,通过ShadowSocks上网的方案是,设置Shadowsocks为自动启动,其他设置和SSH几乎完全一样,在Dropbox等各类 应用通过SOCK5连接,Chrome安装Proxy SwitchySharp或Proxy SwitchyOmega,代理服务器协议为SOCKS5,代理服务器地址127.0.0.1,代理端口1080,选自动切换模式。
  ShadowSocks在iOS和Android上也有客户端,对于未越狱的iOS来说,ShadowSocks客户端并不支持全局代理。
  三、VPN上网方案
  对于未越狱的iOS来说,VPN是唯一支持全局代理的方式。
  对于不同的操作系统,安装VPN方法也不太相同,下面是以CentOS6为例介绍一个VPN一键安装包。
  首先确认服务器开通ppp和tun权限,如没有开通,请联系提供商来开通。
  然后执行如下命令:
  wget http://www.72yun.com/shell/vpn_centos6.sh
  chmod a+x vpn_centos6.sh
  bash vpn_centos6.sh
  即可安装成功。
  Windows电脑VPN设置
   VPN没有客户端,在电脑上进行几个配置即可,打开控制面板、点击“查看网络状态和任务”进入网络和共享中心,点击“设置新的连接或网络”,选择“连接 到工作区”,单击“下一步”按钮,在“您想如何连接?”选项中选择“使用我的虚拟专用网络(VPN)”,单击“下一步”按钮,公司名随便写,下一步“不拨 初始连接”,接下来的主机名(地址),输入主机地址后完成VPN创建,用户、密码选择为自己的帐号密码,然后点击“创建”按钮即可完成创建。
  在“网络连接”里双击这个VPN,此时会弹出一个连接VPN的用户登录窗口,输入你的VPN帐号和密码,并点击“连接”。连接成功后会在屏幕右下角的任务栏会有一个VPN连接的图标,这时就可以用VPN连接来上网了。
  iOS手机VPN设置
  1,点击手机中的设置-通用-VPN-添加VPN设置;
  2,添加VPN地址、VPN帐号和VPN密码;
  3,点击存储,打开VPN开关,看到手机顶部显示有VPN字样就代表连上啦。
  Android手机VPN设置
  1,点击设置-更多;
  2,点击VPN,选择右上角的加号添加VPN;
  3,添加VPN地址、VPN帐号和VPN密码;名称随便填,服务器地址就是在VPN所找到的服务器主机名或者IP地址,填好后点保存;点击刚刚保存的VPN,弹出菜单,填写用户名和密码,勾选保存账户信息,点击连接;
  4,左上角出现一个钥匙标记也表明vpn连接成功了,点击刚刚的vpn账号可以随时断开连接,长按则可以修改刚刚的设置。
  至于VPS服务器的购买,有高帅富VPS之称的Linode,当然还有一些OpenVZ类型的屌丝VPS,不同价格的VPS提供流量不同,可以根据自己的具体需要来选择。

2015年1月17日星期六

Goagent连接超时解决方法,以及如何更流畅的使用Google搜索

Goagent连接超时解决方法
近两天不少人反映使用不了GoAgent,连Google都打不开了,很 多学习资料都访问不到了,对于一个程序员来说,这很苦恼。这是因为当前GoAgent中使用的IP被封了,导致终端出现一大片的黄色return timeout,很是打击学习的信心。这个时候找到一些可用的IP到proxy.ini文件中就可以了,比如我使用的profile:
profile = google_hk
在[google_hk]下设置hosts就可以了,找了两个可以使用的IP:
hosts = 210.61.221.187|121.78.74.99
重启GoAgent即可使用Google了。
这些IP可以从GoAgent的Issues中找到:
https://code.google.com/p/goagent/issues/list
更流畅的使用Google搜
关于如何在不使用任何代理的情况下更流畅的使用Google进行搜索,可以参考这个配置:
打开settings:
chrome://settings/
进入高级设置-> 搜索 -> 管理搜索引擎 -> 添加一个搜索引擎(在搜索引擎弹出框中的最下面有一个输入表单),名称和关键词随便填写一下,主要是URL地址写上这个:
http://203.208.46.145/search?q=%s&{google:RLZ}{google:originalQueryForSuggestion}{google:assistedQueryStats}{google:searchFieldtrialParameter}{google:searchClient}{google:sourceId}{google:instantExtendedEnabledParameter}ie={inputEncoding}
然后随便选中其他行,或者点击完成,刚才输入的搜索引擎就提交了,从列表 中找到刚才添加的搜索引擎,将这个新加的搜索引擎项设置为默认搜索引擎,然后在地址栏直接输入关键词进行搜索就可以了(直接用 http://203.208.46.145/这个地址访问也可以,上面的设置是为了方便直接在地址栏进行搜索)。

2015年1月14日星期三

免费PHP空间+免费CDN=GoAgent完美使用方法

今天打开Google又是链接重置,看来IP又失效了,也懒得去试了,自己还有一台服务器,我就想着搭个代理算了,看他来怎么重置。习惯了 GoAgent,下载一个最新版,看了下GoAgent是支持PHP的,于是乎就在自己的服务器上测试了一下,效果很意外,和没F浏览没什么区别,可能是 我用了CDN的缘故。ping了一下kakarot.net在42ms(使用安徽移动),这么快也就不足为其了。通过这个案例,我们只要拥有一个高性能的 PHP空间和CDN就可以解决GoAgent被墙的问题了。

PS. 如果你对FQ一无所知,打开 http://kakarot.net/xxoo/

关于PHP空间,现在免费的基本上都不行,好点的可能对程序的支持不好,GoAgent PHP版是需要某些支持的。付费可能也不现实,来这里都是奔着免费来的。。。。好消息,三蛋空间给我发了封邮件,像我推荐了一个免费的空间,效果还行,就 是速度很慢,目前开拓中国市场,支持中文,所以操作起来还是比较简单的。就拿他做实验吧!

第一步:
登录空间官网,注册地址:http://dwz.cn/free-hosting

方法很简单,这里就省略了,来到控制面板,选择主机 → 添加新帐号 → 选择套餐,当然这里我们选择免费的就行了。然后登记信息,这里域名我们可以使用自己域名或者他提供的二级域名。全部添加完后,提交,填写一个验证码后我们就创建成功了。

第二步:
在主机选项里找到刚才创建的主机,我们会看到IP,用户名,记录下来。打开FTP软件,没有的推荐你使用FileZilla。连上FTP,为了防止空间滥用被封我建议你随便找一个源码上传到里面,也就相当于创建了一个网站。HTML模版源码推荐。然后在FTP中选择创建目录,相当于给站点设置了一个子目录。名字随便起了,把下载的GoAgent解压出来,在server里面找到php,然后把里面文件都上传到你刚才创建的那个子目录。

第三步: 
现在准备工作都差不多了, 打开local里的proxy.ini 找到[gae]把enable = 1改成=0,然后找到[php]把enable = 0改成= 1,然后listen = 后的端口自己设置,如果你之前用过GoAgent有代理设置的话改成8087,这样浏览器设置就不用动了。然后fetchserver =设置成为你的网站,例如我的是fetchserver = http://k4k4r07.eu.org/xo/ 然后保存,就完成了。打开GoAgent不出问题的话你应该可以FFFF了。

到这里设置就完成了,但是由于空间的原因,速度会很慢,或许你有更好的服务器,那么下面就不用看了。

速度慢,我们可以利用下CDN,目前速度快的免费CDN,我测试了一下比较好的是incapsula和cloudflare, cloudflare的ping值在40ms左右,incapsula改日本节点的话在90ms左右,从速度上我们肯定的选CF,但是CF有一个不好的地方就是得修改NS,貌似二级域名改不了,如果你有顶级域名可以尝试下。随大众,假设是二级域名,那么我们就得用incapsula

一、登录incapsula官网 http://www.incapsula.com/
二、注册用户。。。参见这里 http://www.freehao123.com/incapsula-cdnzz/ 
三、按照上面的教程,添加上你的域名。
四、去除广告。。。也参见这里 http://www.freehao123.com/incapsula-css-js-php/ 
五、回到主机面板,找到高级 → DNS授权区编辑 在主机@ 指向那里改成incapsula的日本节点IP。目前网上公开的249那组,已经用的泛滥了,推荐选择其他组的。
  • 103.28.248.0~103.28.249.254
  • 103.28.250.0~103.28.251.254
修改完成后,等待DNS生效。缓存的原因,可能需要几分钟甚至几小时。如果你等不及,可以直接使用hosts强制定向。

我的,预览一下 http://k4k4r07.eu.org/

我用的是cloudflare CDN,绑定的域名 :) 现在貌似有免费的TK域名,你可以去试试,不过好像申请不了,反正我是没申请到,就随便整了个eu.org的二级域名,支持修改NS记录就行了。申请教程就不写了,有点麻烦,自己看着办吧!到这一步就全部搞定了。

我说我秒开YouTube,720P无压力估计你也不信,但事实就是这样,不管你信不信,我也没法证明,附一张我的ping结果。
ping
速度快慢,和空间是有关系的,不是方法不行。最后愿你成功了!!! 

2015年1月10日星期六

Shadowsocks 服务端完全部署

1:先讲述vps的购买相关。
我对信用卡支付什么的根本一窍不通,如果你想了解在官网购买时的支付条件,请参考 +Anonymous V 的教程,他讲述地非常详细。注意,你如果只需要搭建一个Shadowsocks,并且不是Youtube重度用户,那么我只有一个建 议:bandwagonhost的最低端vps。对于shadowsocks,考虑的主要是vps的架构是否先进,说实话,同样是 bandwagonhost,最低端vps(年付25元)
和著名的512M内存的型号(年付大约65元),搭建起来shadowsocks,速度几乎没有差别。这一点是我亲自测试的,这个网站正是运行在bandwagonhost 512M vps上面。
但 是,如果你vps的架构先进(例如DigitalOcean的KVM架构和Linode的Xen架构),那么你部署的ss速度将会获得极大的提升。 bandwagonhost最高速度也可以达到1.xM/s,但是一旦到高峰期就不行了,因为架构的原因,你的vps受同一主机下其他vps影响太大。而 DigitalOcean/Linode则不会这样,不过速度的波动是非常正常的。
2:再讲述vps购买之后的操作。
以 bandwagonhost为例,打开bandwagonhost.com,点击Client Area,点击 My Services,看到自己购买的vps。点击KiwiVM Control Panel ,就打开了自己vps的后台。你vps的ip,端口,都显示了出来。
注:你如果是淘宝代购的vps,店家大多数都已经搭建好了 shadowsocks,不过我不建议使用店家搭建的,他们大多使用一键脚本。这时候,你可以在vps的后台点击stop(停止运行),然后点击 Install New OS,安装全新的系统。我给大家的建议是Debian 7 x86_64 或者 Centos 7 x86_64。然后点击 Reload OS。这时不到10几秒你就安装了全新的操作系统。这时你会获得新的SSH端口和新的root密码。记下来!
3:准备管理你的vps了:
你如果觉得bandwagonhost分配给你的root密码和SSH端口不好记,那就改成你自己的吧。
在vps后台,点击 File Manager,就是一个文件管理器,即使你的vps停止运行,也可以使用。定位到 /etc/ssh ,在sshd.conf(名称和这个类似)这个文件上面选择 Edit(修改)。
看这个文件最后一行!定义了SSH Port,改掉那个数字,变成你想要的,但是不能和常见端口冲突。一般改成23333之类的没问题#^_^#
然后 centos 执行 service sshd restart,Debian执行 /etc/init.d/sshd restart(不行就点击后台的重启!),重启ssh服务。
这是后台界面显示的端口就是你自定义的了。
那么如何修改root密码呢?打开Root Shell(Interactive),这个的意思是交互式的Root命令行。点击Launch(需要支持HTML5的浏览器),然后打开Shell。输入
passwd root

输入两遍你容易记住的root密码,每输入一遍回车。
修改成功。4:连接你的vps。
打开WinSCP,然后输入服务器信息:
服务器:你vps的ip,后台的首页就可以看到;
端口:后台首页也可以看到,你可以按第三步修改;
用户名:一般是 root。
密码:就是Install New OS时给你密码,上面那一步告诉了大家怎么修改。如果还是忘了,那就打开bandwagonhost后台,点击 Generate New Root Password,生成一个新的密码就行了。
这时你就连接了你的vps。
5:实战演练!shadowsocks服务端的完全部署方案,所有命令在PuTTY下执行:
下载PuTTY
所有修改文件的命令,在WinSCP执行:
下载WinSCP
那么如何用PuTTY连接vps呢?
注 意PuTTY是个绿色软件,只有一个exe文件,请把它命名为putty.exe,然后放到C://Program Files(x86)//PuTTY文件夹下(新建这些文件夹)。于是你按教程做的时候,先登录WinSCP,一旦需要执行命令,就点击 WinSCP:命令,点击用PuTTY打开,这样就好了,特别方便。
点击了用PuTTY打开之后,首先会让你输入root密码,复制一下,在 PuTTY中点击鼠标右键就可以了(PuTTY的设计很奇怪。在普通的Linux中,右键是打开菜单,点击鼠标滚轮是粘贴。可是PuTTY点击鼠标右键, 没有提示,就已经粘贴了。),或者一个一个字符输入密码;注意!你在PuTTY中输入的密码,不会显示出来,所以不到看到出不来就反复输入 = =
然后你就打开PuTTY了。
如果你是Linux用户,这样管理vps:
教程
不过我相信能玩转Linux的也不会看这个教程了。。。
6:开始部署了……
为了确保不出错,Debian 请先执行:
apt-get update
apt-get upgrade

centos 请执行:
yum update
7:如果你想使用Debian配合Shadowsocks-Python 版本,(clowwindy的作品),请看这一条。
(1):安装依赖包和shadowsocks-python:
apt-get -y install libxml2-dev libxslt-dev libevent-dev python-dev python-pip python-m2crypto python-gevent
apt-get update && apt-get upgrade -y && apt-get install python-pip -y
apt-get install python-m2crypto
pip install shadowsocks
sudo apt-get install python-gevent -y
sudo apt-get install libevent-dev python-pip -y
sudo pip install gevent

每一步没有出错就代表成功。(2):用vi建立config.json配置文件:(如果不想学vi,请略过看第三步!)
sudo vi /etc/config.json
如果你玩过Linux,就会知道vi有三种模式:命令行模式,编辑模式,底行模式。
默认用vi新建/打开文件之后,你处于命令行模式。
你按键盘上面的 I 字母之后,会进入编辑模式(左下角有一个 Insert),这是你可以用上下左右按钮移动光标。你的光标永远在你操作的字符的右边!因为vi的光标不是一条线,处于两个字符之间的,而是一个方块,覆盖在字符上面。
例如有一行字符是:
abcdefg
那么,当光标位于 d 字母上面时,输入一个m,就是在c和d之间输入了一个m,就会变成:
abcmdefg
你按键盘的Esc,会进入底行模式,这是你输入的字符全部位于命令行窗口的底部,输入 :wq 回车,是保存并退出,输入 :q! 是不保存退出。
但是,如果你不想学这个,想用记事本的方式编辑的话……
请看下一步!
(3):用WinSCP建立配置文件config.json:
注 意,这个config.json文件放哪里都可以,我放到了 /etc/config.json 。这个操作,如果你不想用vi,可以直接在winscp下打开 /etc (winscp的默认目录是/root,需要返回上一级目录才可以看到/etc。打开 /etc 目录之后,右键新建文件就可以啦!这个最简单)
配置文件的格式是这样的:
请不要输入 # 后面的注释部分!
{
 "server":"",     #你的服务器ip,就是你在后台看到的,输入到两个引号之间
 "server_port",    #你自定义的端口,最好在1024以上,必须在65535以下。这是你随便定义的数字,但是必须不能和你在后台看到的那个SSH Port 不同!否则会无法启动。注意!两旁没有引号!
 "password":"passwd",    #你自定义的密码,随便设置
 "timeout":600,     #一般用600
 "method":"chacha20"    #注意!这里的加密方式,我推荐你们使用 rc4-md5 和 chacha20 或者 salsa20 或者 aes-256-cfb。如果和选择了chacha20和salsa20两种,你需要参考 (4)(5)这2步安装额外的软件包。如果和选择了 rc4-md5 或者 aes-256-cfb ,请略过 (4)(5) 。
 "fast_open: false    #注意!你如果会升级内核,可以编译一个3.7以上的,就可以使用true
 }
(4):安装 libsodium 官方下载页
下载你需要的版本,这里以 libsodium-1.0.1.tar.gz 为例。上传文件到你的vps的任意一个目录,例如/root。
cd ~ #如果你选择的目录是/root,就用cd ~这个命令,如果是其他的,例如 /usr/local/src ,就用 cd /usr/local/src ,~代表当前用户的主目录。
tar zxvf libsodium-1.0.1.tar.gz 
cd libsodium-1.0.1
./configure
make && make check
make install
(5):修复动态链接库。
apt-get install lib32ncurses5 ia32-libs
(6):启动 Shadowsocks:
ssserver -c /etc/config.json

这是一个测试步骤,检查ss是否已经连通。
如果你不需要调试信息,你可以直接使用第七步的方式,请忽略这一步。(7):如果你需要让它在退出命令行之后依然运行(类似于nohup),已经不需要SuperVisor了:
ssserver -c /etc/config.json -d start
(8):停止和重启ss服务:
ssserver -c /etc/config.json -d stop
ssserver -c /etc/config.json -d restart
OK
如果你需要libev版本/centos下的安装,请参考:
https://techllage.com/techllage/127-shadowsocks
1:先讲述vps的购买相关。
我对信用卡支付什么的根本一窍不通,如果你想了解在官网购买时的支付条件,请参考 +Anonymous V 的教程,他讲述地非常详细。注意,你如果只需要搭建一个Shadowsocks,并且不是Youtube重度用户,那么我只有一个建 议:bandwagonhost的最低端vps。对于shadowsocks,考虑的主要是vps的架构是否先进,说实话,同样是 bandwagonhost,最低端vps(年付25元)
和著名的512M内存的型号(年付大约65元),搭建起来shadowsocks,速度几乎没有差别。这一点是我亲自测试的,这个网站正是运行在bandwagonhost 512M vps上面。
但 是,如果你vps的架构先进(例如DigitalOcean的KVM架构和Linode的Xen架构),那么你部署的ss速度将会获得极大的提升。 bandwagonhost最高速度也可以达到1.xM/s,但是一旦到高峰期就不行了,因为架构的原因,你的vps受同一主机下其他vps影响太大。而 DigitalOcean/Linode则不会这样,不过速度的波动是非常正常的。
2:再讲述vps购买之后的操作。
以 bandwagonhost为例,打开bandwagonhost.com,点击Client Area,点击 My Services,看到自己购买的vps。点击KiwiVM Control Panel ,就打开了自己vps的后台。你vps的ip,端口,都显示了出来。
注:你如果是淘宝代购的vps,店家大多数都已经搭建好了 shadowsocks,不过我不建议使用店家搭建的,他们大多使用一键脚本。这时候,你可以在vps的后台点击stop(停止运行),然后点击 Install New OS,安装全新的系统。我给大家的建议是Debian 7 x86_64 或者 Centos 7 x86_64。然后点击 Reload OS。这时不到10几秒你就安装了全新的操作系统。这时你会获得新的SSH端口和新的root密码。记下来!
3:准备管理你的vps了:
你如果觉得bandwagonhost分配给你的root密码和SSH端口不好记,那就改成你自己的吧。
在vps后台,点击 File Manager,就是一个文件管理器,即使你的vps停止运行,也可以使用。定位到 /etc/ssh ,在sshd.conf(名称和这个类似)这个文件上面选择 Edit(修改)。
看这个文件最后一行!定义了SSH Port,改掉那个数字,变成你想要的,但是不能和常见端口冲突。一般改成23333之类的没问题#^_^#
然后 centos 执行 service sshd restart,Debian执行 /etc/init.d/sshd restart(不行就点击后台的重启!),重启ssh服务。
这是后台界面显示的端口就是你自定义的了。
那么如何修改root密码呢?打开Root Shell(Interactive),这个的意思是交互式的Root命令行。点击Launch(需要支持HTML5的浏览器),然后打开Shell。输入
passwd root

输入两遍你容易记住的root密码,每输入一遍回车。
修改成功。4:连接你的vps。
打开WinSCP,然后输入服务器信息:
服务器:你vps的ip,后台的首页就可以看到;
端口:后台首页也可以看到,你可以按第三步修改;
用户名:一般是 root。
密码:就是Install New OS时给你密码,上面那一步告诉了大家怎么修改。如果还是忘了,那就打开bandwagonhost后台,点击 Generate New Root Password,生成一个新的密码就行了。
这时你就连接了你的vps。
5:实战演练!shadowsocks服务端的完全部署方案,所有命令在PuTTY下执行:
下载PuTTY
所有修改文件的命令,在WinSCP执行:
下载WinSCP
那么如何用PuTTY连接vps呢?
注 意PuTTY是个绿色软件,只有一个exe文件,请把它命名为putty.exe,然后放到C://Program Files(x86)//PuTTY文件夹下(新建这些文件夹)。于是你按教程做的时候,先登录WinSCP,一旦需要执行命令,就点击 WinSCP:命令,点击用PuTTY打开,这样就好了,特别方便。
点击了用PuTTY打开之后,首先会让你输入root密码,复制一下,在 PuTTY中点击鼠标右键就可以了(PuTTY的设计很奇怪。在普通的Linux中,右键是打开菜单,点击鼠标滚轮是粘贴。可是PuTTY点击鼠标右键, 没有提示,就已经粘贴了。),或者一个一个字符输入密码;注意!你在PuTTY中输入的密码,不会显示出来,所以不到看到出不来就反复输入 = =
然后你就打开PuTTY了。
如果你是Linux用户,这样管理vps:
教程
不过我相信能玩转Linux的也不会看这个教程了。。。
6:开始部署了……
为了确保不出错,Debian 请先执行:
apt-get update
apt-get upgrade

centos 请执行:
yum update
7:如果你想使用Debian配合Shadowsocks-Python 版本,(clowwindy的作品),请看这一条。
(1):安装依赖包和shadowsocks-python:
apt-get -y install libxml2-dev libxslt-dev libevent-dev python-dev python-pip python-m2crypto python-gevent
apt-get update && apt-get upgrade -y && apt-get install python-pip -y
apt-get install python-m2crypto
pip install shadowsocks
sudo apt-get install python-gevent -y
sudo apt-get install libevent-dev python-pip -y
sudo pip install gevent

每一步没有出错就代表成功。(2):用vi建立config.json配置文件:(如果不想学vi,请略过看第三步!)
sudo vi /etc/config.json
如果你玩过Linux,就会知道vi有三种模式:命令行模式,编辑模式,底行模式。
默认用vi新建/打开文件之后,你处于命令行模式。
你按键盘上面的 I 字母之后,会进入编辑模式(左下角有一个 Insert),这是你可以用上下左右按钮移动光标。你的光标永远在你操作的字符的右边!因为vi的光标不是一条线,处于两个字符之间的,而是一个方块,覆盖在字符上面。
例如有一行字符是:
abcdefg
那么,当光标位于 d 字母上面时,输入一个m,就是在c和d之间输入了一个m,就会变成:
abcmdefg
你按键盘的Esc,会进入底行模式,这是你输入的字符全部位于命令行窗口的底部,输入 :wq 回车,是保存并退出,输入 :q! 是不保存退出。
但是,如果你不想学这个,想用记事本的方式编辑的话……
请看下一步!
(3):用WinSCP建立配置文件config.json:
注 意,这个config.json文件放哪里都可以,我放到了 /etc/config.json 。这个操作,如果你不想用vi,可以直接在winscp下打开 /etc (winscp的默认目录是/root,需要返回上一级目录才可以看到/etc。打开 /etc 目录之后,右键新建文件就可以啦!这个最简单)
配置文件的格式是这样的:
请不要输入 # 后面的注释部分!
{
 "server":"",     #你的服务器ip,就是你在后台看到的,输入到两个引号之间
 "server_port",    #你自定义的端口,最好在1024以上,必须在65535以下。这是你随便定义的数字,但是必须不能和你在后台看到的那个SSH Port 不同!否则会无法启动。注意!两旁没有引号!
 "password":"passwd",    #你自定义的密码,随便设置
 "timeout":600,     #一般用600
 "method":"chacha20"    #注意!这里的加密方式,我推荐你们使用 rc4-md5 和 chacha20 或者 salsa20 或者 aes-256-cfb。如果和选择了chacha20和salsa20两种,你需要参考 (4)(5)这2步安装额外的软件包。如果和选择了 rc4-md5 或者 aes-256-cfb ,请略过 (4)(5) 。
 "fast_open: false    #注意!你如果会升级内核,可以编译一个3.7以上的,就可以使用true
 }
(4):安装 libsodium 官方下载页
下载你需要的版本,这里以 libsodium-1.0.1.tar.gz 为例。上传文件到你的vps的任意一个目录,例如/root。
cd ~ #如果你选择的目录是/root,就用cd ~这个命令,如果是其他的,例如 /usr/local/src ,就用 cd /usr/local/src ,~代表当前用户的主目录。
tar zxvf libsodium-1.0.1.tar.gz 
cd libsodium-1.0.1
./configure
make && make check
make install
(5):修复动态链接库。
apt-get install lib32ncurses5 ia32-libs
(6):启动 Shadowsocks:
ssserver -c /etc/config.json

这是一个测试步骤,检查ss是否已经连通。
如果你不需要调试信息,你可以直接使用第七步的方式,请忽略这一步。(7):如果你需要让它在退出命令行之后依然运行(类似于nohup),已经不需要SuperVisor了:
ssserver -c /etc/config.json -d start
(8):停止和重启ss服务:
ssserver -c /etc/config.json -d stop
ssserver -c /etc/config.json -d restart
OK
如果你需要libev版本/centos下的安装,请参考:
https://techllage.com/techllage/127-shadowsocks
https://techllage.com/techllage/attachment/54b099b62ff24_Screenshot_2015-01-09-19-51-47.png