ChenViVi / eden

使用 Github Issue 搭建博客 Web端
http://eden.valorachen.top/
28 stars 4 forks source link

从零开始使用shadowsocks搭建自己的VPN #12

Open ChenViVi opened 6 years ago

ChenViVi commented 6 years ago

从零开始使用 shadowsocks 搭建自己的 VPN

前言(纯属瞎白活,忙人勿看)

做完了事,想着怎么用剩下的点钱提高自己的生活质量。去知乎上瞅了瞅,都是电动牙刷、收纳盒、尤克里里这种我根本不感兴趣的东西。有点想买小米智能音箱,kindle,平板电脑之类的硬件,但是仔细一思考感觉消费太高也并不是那么需要。各种会员或者是 Steam 游戏这种虚拟消费也有想过。可是会员到期还早,游戏多到放在库里没时间玩。然后不知怎么的想到了科学上网,毕竟不科学上网的程序员不是好程序员。与其说是改善生活,不如说是买必需品。vpn 这个词没有被搜索封印的地方也只剩微博了,然后刷出了一堆垃圾广告。又想了想何必花钱跟别人挤一个服务器,他们的盈利模式很多都是租别人家服务器然后给啥都不懂的人用,真正运营自家服务器的肯定很少,有很多这样的商家都已经狗带了,更多都是赚个差价的中介一样忽悠不懂技术的人。打个比方吧,买 vpn 的客户是旅客,卖 vps 的商家是包租婆,它们卖的vps是房子,卖vpn的人花钱租了一栋房子并把房子盖成了青旅,让买 vpn 的客户花钱挤一个房间,以单人来算是便宜了,但是和你一起挤房间的人花的钱比上 vps 商家那里租一间房的钱还要高,vpn商家赚的就是这个钱。那么自己倒腾个呗,还能顺便多学点知识。于是去知乎搜 vps 这个话题,发现了一个有趣的人冯硕以及他关于 vps 的知乎专栏博客。然后根据他的内容,上vultr上买了 5 刀一个月的玩玩,虽然新用户必须首冲 10 刀比较坑,但是好歹可以按小时收费,随时创建和销毁主机和随时改套餐。如果以后有意愿长期使用的话,还是去BandwagonHost买年费的比较划算,虽然最划算的套餐目前已经被抢光了,等促销吧。

搞事

写这篇文章的初衷一部分是想要记录,另一个就是做傻瓜教程。这里傻瓜的概念是不懂 Linux,英文基础也很薄弱的人(并不 diss 任何人厚~)。希望这些内容能尽可能适用于没有基础的人,所以对于老司机而言超级啰嗦。

购买 VPS

参考:如何挑选适合自己的vps

这个博客里还有各种测评呀促销啊啥的,可以自己多看看。我自己觉得的话,长期使用的话最好的就是BandwagonHost,但是它家月租超贵。短期的话看你自己了,反正最便宜的基本都是5刀/月,这里笔者使用vultr

唔,对了,这些卖 vps 的网站必然也是被墙了,关于这一点大家得各显神通了。这里推荐一个傻瓜办法:使用 QQ浏览器。虽然腾讯产品的用户体验不想说,但还真没想到腾讯有这种黑科技。不管是PC还是手机客户端的 QQ浏览器,都能访问一些被墙的网站。PC 版还自带 Google 访问助手这个插件。

在vultr上购买vps

点击进入官网

注册登录以及邮箱号需要认证这种东西就不说了,登录之后点击这里

进入购买页面

选择服务器地区。基本上,想要网速快就选东京(Tokyo)的,如果有吃鸡这种只有美国有服务器的特殊需求之类的,就选洛杉矶(Los Angeles)

选择操作系统类型

由于CentOS有默认防火墙设置,所以导致不懂防火墙如何设置的新手配置好后连不上 vpn,最好的解决方法是选择不带防火墙的 Ubuntu。 参考:shadowsocks issues #133 连接不上服务器,Error: connect ETIMEDOUT

选择套餐类型

每次进入购买页面,都会默认选中 10 刀/月的套餐来诱导用户选择。这里可以自己选择 5 刀/月的套餐。

后面的4-7步选项怎么选都没关系,不选也没关系。然后新用户必须充值10刀。

筛选ip可用的主机

然后选择主机数量,建议选择 10 台,因为主机的 ip 可能被墙导致根本无法远程登录主机。解决方法是多建几台主机,留下 ip 没被墙的主机,销毁其他主机。参考:Vultr新建的洛杉矶机房服务器本地连接不上,请问怎么解决?

打开这个网站:http://ping.pe/

输入主机的 ip 地址,筛选出全部都能 ping 通的主机。

销毁其他主机,只留下一台 ip 可用的主机。

在服务器上部署 shadowsocks 服务

使用 putty 远程登录服务器

打开putty远程登录服务器。

以 root 的身份登录。

查看或复制 root 密码。复制密码后,在 putty 客户端中点鼠标右键粘贴。

嫌密码不好记,可以用如下命令换个密码。

passwd root

安装 shadowsocks

参考:新手教程六:十分钟搭建shadowsocks科学上网服务器

在putty中输入如下几条命令。

wget –no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-go.sh

chmod +x shadowsocks-go.sh

./shadowsocks-go.sh 2>&1 | tee shadowsocks-go.log

安装完成后,脚本提示如下:

Congratulations, shadowsocks-go install completed!
Your Server IP:your_server_ip
Your Server Port:your_server_port
Your Password:your_password
Your Local Port:1080
Your Encryption Method:aes-256-cfb

Welcome to visit:http://teddysun.com/392.html
Enjoy it!

卸载方法:

./shadowsocks-go.sh uninstall

使用命令:

启动:

/etc/init.d/shadowsocks start

停止:

/etc/init.d/shadowsocks stop

重启:

/etc/init.d/shadowsocks restart

状态:

/etc/init.d/shadowsocks status

多用户多端口配置文件

使用 putty 命令行输入:

vi /etc/shadowsocks/config.json

键盘按i进入 insert 模式,将文件内容全部替换成如下内容:

{
    "port_password":{
         "8989":"password0",
         "9001":"password1",
         "9002":"password2",
         "9003":"password3",
         "9004":"password4"
    },
    "method":"aes-256-cfb",
    "timeout":600
}

按下esc键,在按下 键,输入 wq,来保存并退出。

重启服务。

/etc/init.d/shadowsocks restart

在客户端使用 shadowsocks 服务

Windows:shadowsocks-windows 点击直接下载安装包

Android:shadowsocks-android 点击直接下载安装包

Linux:shadowsocks-gui 点击直接下载安装包

OSX:Shadowsocks for OSX Help 点击直接下载安装包

iOS:找其他代替工具或者在应用商店花钱下载 Shadowrocket 软件

PAC 配置

PAC 控制哪些地址需要使用代理访问,哪些地址不需要使用代理访问,用以加快无需代理即可访问的地址的访问速度。例如,我们不需要使用代理访问百度,而且使用代理访问百度比直接用本地 ip 访问还要慢,我们就可以通过 PAC 配置文件将百度的地址加入白名单,或者将需要代理服务的地址加入黑名单,来提高访问速度。

可以直接使用网友归纳出的 PAC 配置文件

gfwlist黑名单

PAC 配置文件地址

https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt

gfw_whitelist白名单

PAC 配置文件地址

https://raw.githubusercontent.com/breakwa11/gfw_whitelist/master/whiteiplist.pac

推荐使用白名单。稍微用脚趾甲想一想就知道,如果有新的被墙地址,而黑名单没有及时更新就会导致网站无法访问。而白名单有没有及时更新,都能够访问所有地址。

以 Shadowsocks PC 客户端为例:

至此,你就可以享受科学上网的乐趣了。VPS 的用途不止于此,如果你想探索其他有趣的内容,可以参考这篇文章:VPS有什么有趣的用途?

guangze233 commented 5 years ago

谢谢! 选了一个$3.5/mon的先试试 :)

LovStef commented 5 years ago

你好,请问一下你说的筛选ip可用的主机是在哪里筛选啊?谢谢

ChenViVi commented 5 years ago

@LovStef 打开 http://ping.pe/,输入服务器ip,如果全是绿条就表示ip可用。vultr现在真的挺靠运气的,好用的一年都很稳定,不好用的几个月就ban了。而且p站会ban vultr的ip,如果你要访问p站还得额外试