一、shadowsocks介绍
ShadowSocks—科学上网之瑞士军刀
除去广为人知、人见人爱的VPN,其实还有十八般兵器存在于科学上网界,其中ShadowSocks可以说是其中一把功能齐全的瑞士军刀。服务器端提供了各种版本,如Python、Nodejs、Go、C、libev等等,安装配置过程极其简单。而用户端则可以在windows、mac、iOS和android上轻松运行,很好很强大。
官网地址:www.shadowsocks.org
Shadowsocks是什么?
码农对于shadowsocks应该不陌生,而一般普通网民可能知之甚少。shadowsocks实质上也是一种socks5代理服务,类似于ssh代理。与vpn的全局代理不同,shadowsocks仅针对浏览器代理,不能代理应用软件,比如youtube、twitter客户端软件。如果把vpn比喻为一把屠龙刀,那么shadowsocks就是一把瑞士军刀,轻巧方便,功能却非常强大。
喜欢上shadowsocks的理由
很多时候,我们仅仅只是需要上一下google,收个gmail邮件,或者打开某个网站瞄一眼看看有无更新。这种情况下,vpn可以做到吗,可以,但是很麻烦,连个vpn,也得掉一次线,有时候还连半天连不上。而通过ss的话呢,后台运行一个小程序,然后浏览器点击切换一下SS的网络,就可以了。不用的时候,再切回来。这也就是其轻巧的地方。
二、上网利器之EC2搭建shadowsocks
A、服务端配置
申请AWS
1、打开 AWS官网 http://aws.amazon.com/cn/free/
2、输入邮箱,选择新用户,点击 登录
3、填写注册信息,点击 创建账户
4、填写信用卡信息,点击 继续
5、填写手机号码,点击 立即呼叫我
几十秒后就会有一个电话打来,等电话里的妹子说完话,输入PIN码
输完后,妹子又说几句话就挂了电话,这时身份验证已经完成,点击 继续 选择支持方案。6、选择方案,默认选基本,点击 继续7、这时账户创建成功,点击 启动管理控制台
新建EC2
进入AWS主页,选择第一个:EC2
2、进入EC2控制台,选择右上角 弗吉尼亚北部,弹出下拉菜单,推荐选择 亚太地区(东京)
3、选择符合条件的免费centos
4、默认的选择第一个即可,点击审核和启动
5、点击启动,
6、创建新密钥对,输入名称,点击下载密钥对(一个*.pem文件),保存到电脑上,点击启动实例
7、这样就创建好一个在东京的服务器节点,点击查看实例
这个时候AWS开始初始化的你的服务器节点,大概需要一两分钟
连接远程服务器
windows
首先,找到刚刚保存的*.pem文件,比如文件名叫amazon.pem,确认文件路径, 打开xshell终端,进到amazon.pem文件所在目录
安装shadowsocks依赖
1.rpm -Uvh //安装epel源
2.yum install python-pip // 安装python包管理工具
3.pip pip install shadowsocks // 安装shadowsocks
4.ssserver -c /etc/shadowsocks.json -d start // 启动shadowsocks(需要先配置*.json,参考如下)
配置shadowsocks
vi /etc/shadowsocks.json
(ps. 可能有人不会用vi,这里简单说下,vi打开文件后,按i即可进入编辑状态,编辑完后,按esc退出编辑状态,按:进入命令状态,输入wq即可保存并退出,还不懂的话自行百度vi吧)
单一端口配置:
{
"server":"0.0.0.0",
"server_port":端口,
"local_address":"127.0.0.1",
"local_port":1080,
"password":"连接密码",
"timeout":300,
"method":"aes-256-cfb",
"fast_open":false
}
多端口配置:
{
"server":"0.0.0.0",
"port_password": {
"端口1": "连接密码1",
"端口2" : "连接密码2"
},
"timeout":300,
"method":"aes-256-cfb",
"fast_open": false
}
开启AWS入站端口
配置好shaodowsocks后,还需要将配置中的端口打开,这样客户端的服务才能链接得上EC2中的shadowsocks服务首先打开正在运行的实例,向右滚动表格,看到最后一项,安全组,点击进入
点击操作,编辑入站规则
默认是开启了一个22端口(这是给ssh访问的),再建一个如下图红框标示的端口,我的shadowsocks配置的端口是8388,所以这里就开启8388,
订单监控
AWS提供的服务是每个月15G流量,目前我不知道有什么方法可以监控每个月流量使用的情况,但是可以通过设置订单监控来提醒我是否有超过免费使用的额度,即每当我的账号费用超过$0,那amazon就会发邮件提醒我。
点击右上角的用户名 -> 我的账户,然后点击左边首选项即可打开以下页面,勾选接收账单报警,点击 保存首选项。
3、点击左上方服务,点击 账单
4、点击 设置第一个账单警报5、点击 创建账单警报
6、第一个项填写0即可,第二项填写你能接收到邮件的邮箱地址,点击 创建警报
7、这时会弹出这个页面,这个时候登录邮箱,打开Amazon发来的邮件(有可能在垃圾邮件里),点击邮件里的链接确认即可
8、登录邮箱确认后,点击查看报警, 这样就完成了订单监控。
至此,服务端的要做的事情就全部完成了。
B、客户端配置
这里主要介绍windows+chrome
1.下载一个shadowsocks的客户端程序
官网地址:www.shadowsocks.org
2.运行解压后文件夹中的“shadowsocks.exe”
3.右下角找到程序图标,右键图标,“服务器”--“编辑服务器”,如下图,设置好shadowsocks的账号信息,点确定;
4.再次右键程序图标,勾选“启用系统代理”。
Tips:
系统代理模式一项,可以选择“PAC模式”和“全局模式”。PAC模式即需要代理的网站才代理,不需要代理的则通过本地网络访问,可以理解为,访问国内网站还是和你原来的网络一样,只有访问部分国外网站,才通过shadowsocks服务器。全局模式则是访问所有网站都通过shadowsocks服务器。
如何关闭shadowsocks呢?shadowsocks程序直接关闭就行了。
5.安装chrom插件SwitchyOmega(其实就是以前的switchsharp),配置代理很简单,只需要两步。
5.1.配置代理
5.2.配置自动切换
规则列表地址:
https://autoproxy-gfwlist.googlecode.com/svn/trunk/gfwlist.txt
6.设置自动切换代理。
6.1双击1个资源未加载
6.2选择情景模式,添加条件。
7.接下来,可以在chrome中直接打开youtube试试,测试OK,没问题。