通过搬瓦工的VPS的GIA线路服务器搭建V2ray实现科学上网

作者: 科学上网家 分类: 科学上网 发布时间: 2024-08-14 17:03

搬瓦工,因其官网网站标识是BandwagonHost,有点类似BanWaGong的拼写,所以我们国内的站长喜欢称作为搬瓦工VPS。搬瓦工VPS是一款性价比较高的便宜VPS主机,且适合入门级网友学习Linux和建站用途。

搬瓦工VPS,隶属于美国IT7公司旗下的一款低价OpenVZ VPS主机方案、2017年新增KVM VPS架构,尤其是8款便宜年付VPS,无论从性价比还是稳定性都非常适合大众VPS用户需求,我们可以用来建站、Linux系统学习、软件调试,也可以完成各种初学者需要测试项目正规用途使用。反正完全可以用作新手学习VPS主机选择性价比VPS使用。相继增加CN2、GIA线路、且在2017年10月份新增香港机房。针对中国的线路优化非常好。(目前已经支持支付宝付款,可以自行购买,更安全)

笔者在2014年底,因为香港服务商跑路的心理阴影未散,便尝试着在淘宝请人代购了一款极为便宜的搬瓦工草履虫级主机来试试水(当时只支持paypal和国际信用卡),淘宝付款29元人民币,实际上只要年付$3.99 USD,大家可以近距离观赏一下何为草履虫级配置:

直到如今,这一款 Micro-64主机依然留在笔者的My Services列表中,正常运行,年年续费,决定作为传家宝了。:)

说实话,这台主机的使用体验并不好,因为作为OpenVZ的虚拟技术,超售是必然的,这只草履虫怕是与几千只草履虫都挤在同一台物理服务器宿主里了,就算是G级网络接口,也妥妥会被挤爆。从大陆ping过去,响应时间一般在500ms以上,丢包率一度达到了20%,下载东西只有不到30KByte/s,还非常不稳定。在该vps上部署的是Python版Shadowsocks 2.x ,因为网络拥塞,使用起来极为痛苦。当时怀疑是配置太低,于是再次购买了9.99USD/年的 Basic VPS — Self-managed — 5G PROMO V2,算是弹涂鱼级别吧。仍然是OpenVZ虚拟化,而且那时搬瓦工还未对中国进行线路优化,直观表现就是速度相当缓慢,在此期间还尝试了锐速、net-speeder等加速技术,效果依然不尽人意。就此对搬瓦工乃至美国的VPS主机颇为失望,就此丢下,作为备用辅助服务器吃灰。

笔者在对搬瓦工失望之余,目光再次瞄向香港服务商,尽管有跑路的阴影,那就选个不跑路的不就行了吗?当时笔者已经有了“为了自由地获取信息每年可以花上几百块”的心理建设,于是选择了香港阿里云。

香港阿里云确实好用,非常好用,延迟低至35ms,基本无丢包,远端带宽能跑满,而且还不会跑路。当时我一度以为缺点仅仅是贵而已。香港阿里云最低配置+4Mbps带宽年付2000多RMB,一年用下来这个价格真有点吃不消。直到后来阿里云推出了国际主机,最低配置3年800元,1M带宽。于是买下这款,将其改为100M带宽且按流量付费,就变成了3年支付800元初装费+1G/元流量使用费,然后在该主机上安装了vnstat,写了个定时脚本,每天自动向我的邮箱发送当日流量使用情况。如图:

流量计费是单向的,仅仅是按照tx部分收费,即服务器外发流量。公道的说每月十来个G,这个费用并不吓人,前提是你不怎么使用它的话……(请先不要急着掀桌)

然而前面说过,香港阿里云的缺点并不仅仅是贵而已,还有更紧迫更重要的缺点:当你使用香港阿里云并在上面架设代理服务端(Shadowsocks、SSR和V2ray我都部署过)的翻墙服务,很快你就会收到这样的邮件:

好了您现在可以掀桌了。

当你收到这个邮件,ECS主机很快将失联,ping不到,SSH无法连接,意味着这个主机的IP已经进了墙的黑名单。还好这个时候依然有补救的办法:在阿里云的管理面板中开通弹性公网IP服务,并添加一个IP,然而它是收费服务,按量,1G/1元。此时的计费变成双倍:阿里云ECS主机的流量+弹性公网IP的流量。双倍也就罢了,使用时更吝啬一点不就行了吗?但这种事情隔三岔五给你来一下:警告邮件,IP被墙,登陆阿里云面板,弹性公网添加一个IP,绑定ECS,测试是否能通,解绑旧IP。这真的是不胜其烦,而且存在一定的风险:老大哥在盯着你,管理部门是知道你拿这台主机干嘛了的。这其间到底是阿里云提供上去的,还是管理部门通过流量监测到的,无从得知。在这里岔开话题稍微分析一下:

阿里云的ECS是内置了安骑士程序的,类似于Linux服务器版360卫士。这个程序可以让阿里云完全掌握你的主机中任何信息,当然,笔者已经将它删掉,可是删掉了它阿里就无法监控ECS主机内部情况了吗?不确定。但无论如何,在香港阿里云机房的网络出口处,管理部门肯定会在此安装一个镜像交换机类型的设备,监控所有香港阿里云主机的出入流量。当管理部门的监测规则发现某台主机与大陆IP之间发生加密流量,且这台主机在发生加密流量的同时,访问了Google、Twitter等网站(虽然HTTPS技术保证了中间人无法得知流量内容,但中间人可以知道这台主机访问了哪个网站,与谁通讯了),那么管理部门即可猜测到这台主机的作用:“ 存在通过技术手段使其成为境内获取境外非法信息的途径等行为”。

所以说这是使用香港阿里云的风险,笔者如今已经完全弃用香港阿里云,停止了其上运行的相关服务,仅作最后一道紧急备用方案。因为没有必要去冒这个风险头硬如铁直顶老大哥,毕竟身份证手机号什么的都在阿里云存着,何必呢。而且,已经找到了更好的。

蓦然回首,那人却在,灯火阑珊处。

当笔者在2018年得知搬瓦工开始提供CN2线路的KVM虚拟技术的主机时,立即下单试用,结果非常惊喜:ping的响应时间不到140ms(数据在中美海底光纤一来回就是100多ms,这个响应速度可以说是极快),丢包率小于1%,下载速度4MByete/s,看youtube 4K流畅的飞起。而且不贵,29.99USD/年,使用优惠6%后,支付宝扫码不到200人民币(2018-08-07汇率6.85),泪流满面啊。这里顺便给大家普及一张图:

没错,在VPS服务器这里,速度又快又稳定的会很贵,如香港阿里云;稳定又便宜的会慢;速度又快又便宜的就别想着稳定(还记得跑路的那家香港vps吗)至于又快又便宜还稳定的,笔者觉得不是“滚”,而是如今的搬瓦工了……

让我们开始整个翻墙教程吧,也算是笔者对此技能的一个回顾和总结。

作为个人翻墙用的话,在这里仅推荐两款KVM主机,OpenVZ的主机强烈不推荐。

(2020-5-8提示)因为搬瓦工的商品经常调整,下方记录的商品信息难以长效可用,简单来说,换货涨价了。如今KVM CN2最低配也要49.99USD/年,GIA线路的更是120USD/年打底。已经不是当年那个29.99刀畅玩的时候了……如果你看到了优惠期GIA线路主机低于70USD/年的,无脑下手,买到就是赚到,最好是单独注册另开个账号购买,以后翻年循环支付的时候还是购买时的价格,就算不用了还可以把账号转手卖了回血一波。

这两个主机经常缺货,若提示缺货的话请点击页面中的“ Please check out our other offers.”链接查看其他商品,找个价格能接受的类似VPS即可(线路选择的经验将在下面进行简单的分享)。

注:如果直接在搬瓦工的首页点击VPS Hosting浏览,所展示的VPS主机类型有限,并不一定能找到我们所想要的。需要点击特定的商品链接才能找到针对中国优化的那些产品。但是这些商品比较紧俏,时而有货时而无货,如果出现 Out of Stock 的缺货提示时,请点击提示旁边的 Please check out our other offers 来浏览其他类型的产品进行选购,但一定要选择带有CN2线路优化的主机。

顺便普及一下线路知识:

CN2 GT线路可以理解为半程优化,即你发去搬瓦工主机的数据包是走普通路由线路,而搬瓦工主机返回给你的数据包,走的是专门针对中国优化的线路。
CN2 GIA线路可以理解为全程优化,即你发去搬瓦工主机和主机给你返回的数据包,走的都是专门优化的专线。

不带CN2标识的产品最好不要买,没有经过优化的线路用来翻墙会很痛苦。

因为各运营商、时间段、繁忙程度、路由切换等状况的不同,具体的使用体验还需要自己去体会和尝试。这两款笔者各买了一台,总体而言,CN2 GIA线路的表现相对更好,丢包率更低、速度更快。但是因为GIA线路比较小众,其路由方向经常频繁调整,一旦在调整时,就会发生延迟、丢包等情况。好在一般调整都只有数分钟,很快就能恢复,等待一会儿即可。
对于这两台CN2的VPS主机,笔者曾经不间断连ping过一个月,最终普通CN2 GT线路的总丢包率为8.33%, CN2 GIA的总丢包率为1.07% 。因为各地区网络状况差异很大,该结果仅作为参考。同时,GIA的也更贵一些,具体如何选择,还请自行决定。
本文所采用的一键脚本部署方法,最终将会得到的是一个运行在搬瓦工VPS上的:

  • Shadowsocks-libev服务端,默认采用了AEAD类中 xchacha20-ietf-poly1305 的块式加密方式,相比起Python版的 AES-256-cfb 等流加密方式,可以更安全的从防火墙中穿过而不被检测到,而且针对重放攻击具有抵御能力
  • 默认启用了simple-obfs对流量进行混淆,请确保客户端拥有该混淆插件,如果不需要它,也可以在配置中关闭;
  • 默认启用了Fake Web Redirect服务,该服务可以让对你VPS的探测者被转到其他正常大网站上去,例如apple.com;
  • 默认启用了 Fail2ban ,该服务可以保护你的服务器不被SSH穷举爆破攻击。

笔者采用这一套服务已经很安全稳定高效地运行了两年,就算在重大敏感时期也都可以正常使用。当然,一个良好的使用习惯也是很重要的,那就是:尽量不要分享给他人来使用你的私人服务器,就算分享,也是很熟悉的亲朋好友,并千叮万嘱不要再次分享。以我的经验,一旦被多次分享、多人使用后,该服务器就很容易猝死:被墙掉,乖乖掏钱换IP吧。另外,不要用来源不明的各种客户端,尤其是Android和iOS上的各种层出不穷的山寨APP,比方说山寨小火箭等等,把你的服务器参数填进去,就等于变成了一条机场跑道。

Windows 推荐使用 Shadowsocks-win 下载地址:https://github.com/shadowsocks/shadowsocks-windows/releases 

MAC OS X 推荐使用 ShadowsocksX-NG 下载地址: https://github.com/shadowsocks/ShadowsocksX-NG/releases

Android 上始终没有很好用的客户端,建议就用 shadowsocks-android 下载地址: https://play.google.com/store/apps/details?id=com.github.shadowsocks

还可以参考《SS,SSR,V2Ray,Clash等科学上网安卓与Windows桌面客户端合集

iOS上精品客户端就多了,特别昂贵但是好用的Surge,性价比极高而且也很好用的Shadowrocket,以及Quantumult等等。就个人来说,只推荐这三个。在AppStore中用美国、加拿大、香港等地区的AppleID账号登陆即可购买下载。

如果你什么不明白,第一次搞这些东西,那么就从这里先开始我们的搬瓦工+Shadowsocks翻墙之路,本篇从新手的角度出发,将经验分享给大家,并尽量避开复杂的技术细节。

  1. 首先点击 这里 开始注册一个你的搬瓦工账号,按图填写即可。

点击提交之后,会有一个考验眼力的验证码,要求你点击道路、汽车、消防栓、自行车、猫猫狗狗之类的,按照要求将所有的东西都点掉即可。成功完成后,会自动进入后台页面,先不要管它。请问这时候你考虑好买哪一款了吗?页面往上拉,我们在上面刚才已经推荐过了。

2.点击商品的链接进入购买界面:

Billing Cycle是支付周期,分为 Monthly月、 Quarterly季度、 Semi-Annually半年、 Annually年。

Location是这VPS的可选机房,我们选择的CN2 GT线路仅位于LA的DC3和DC8机房,本例中这里仅有DC3可以选择,点击Add to Cart。(在这里,能选DC8就选DC8,DC8机房更好一些,具体就不展开讲了。另外,买过之后是可以迁移机房的,当你觉得不够稳定,可以尝试迁移到别的地区机房看看。)

3.结算页面

此处在下方输入优惠码 BWH3HYATVBJW 再点击右方的Validate Code,即可获得6%的优惠,再点击右下方的Checkout进入支付选择。

4.确认订单

选择Alipay,打勾,确定订单,到了支付环节

4.支付

右上方选择Alipay,然后点击那个巨大的 Pay now,掏出手机打开支付宝扫一下,确认支付即可。

5.确认主机正常运行

当支付完成后,我们回到搬瓦工的后台页面,点击Services / My Services,即可看到刚才购买的主机:

这时候可以泡杯咖啡奖励一下自己,等上几分钟让系统装好。

然后我们就可以点右边的 KiwiVM Control Panel按钮对这台VPS进行一些必要的管理操作了。

6.重装系统

进入KiwiVM管理面板后,我们首先可以看到一些基本信息,比如VPS的IP地址、SSH管理端口号等。我们要做的第一件事是重装系统为新版的Ubuntu,默认给你安装的是CentOS 6,这个不太好用(其实都差不多,看习惯)。此时我们先点击stop按钮,将vps关机,然后左边侧栏中的Install new OS,

选择ubuntu-18.04-x86_64,打勾同意,再点击Reload。再喝一杯咖啡等待,同时,在这个时候,页面会告诉你新系统的SSH端口号,以及新系统的root用户密码,请一定要记下来,复制粘贴到一个稳妥的地方保存。

 

7.几分钟后,新系统安装好,我们该远程连接它开始配置了。下载安装Xshell, 选择家庭和学校用户可以免费授权。

 

安装好Xshell后运行它,新建一个会话,填入我们VPS主机的IP和端口,点击确定,然后连接它,会出现一个主机密钥的提示,接受并保存即可。

输入用户名root,再输入密码,就是刚才重装后让你记下来的那个,当出现Welcome to Ubuntu等字样时,就代表连接成功了:

 

8.系统初始化操作,接下来我们对刚装好的系统进行一系列的命令行操作,以优化它的环境和依赖。

系统更新,复制粘贴以下命令并回车,当出现y/n提示时,输入y并回车,如果出现红蓝背景等的各种更新时需要选择的界面,直接一路回车即可:

apt update && apt upgrade

当出现done时,代表更新已经完成。接下来我们采用一键命令的方式来完成一个复杂的操作:更新系统内核并开启BBR拥塞控制算法,可以简单理解为采用该算法后将会拥有更稳定、快速的网络连接, 请复制以下命令、粘贴并回车,注意这是一整行,请全部复制:(在此致谢teddysun提供该脚本)

wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh

由于搬瓦工的Ubuntu18系统映像其内核已经较新,该脚本便直接开启了BBR。

9.安装Shadowsocks-libev,该版本的Shadowsocks服务端为C语言编写,与Python、Go等版本的服务端相比,可以开启AEAD方式的加密,大大增强了安全性(更不容易被GFW老大哥干倒),以及略微提升了性能。缺点就是安装配置复杂,需要进行编译,对于新手非常不友好。但好在我们有一键脚本:),请复制以下命令、粘贴并回车,注意这是一整行,请全部复制:(在此致谢Unbinilium所编写的该脚本)

sudo wget https://raw.githubusercontent.com/Unbinilium/Twist/master/twist -O twist.sh && chmod -x twist.sh && bash twist.sh

此脚本会自行下载源码、编译和安装Shadowsocks-libev以及AEAD加密所用的库;同时集成了simp-obfs用于混淆流量(进一步提升安全性);安装了Fake Web Redirect对本服务器进行了伪装;还安装了fail2ban,避免服务器被长时间的SSH密码猜解爆破攻击,总共需要大概十多分钟时间来完成。

这一步可能会出现 Cannot download libsodium-1.0.18-RELEASE source. Aborting!的问题,那是因为libsodium的1.0.18版本释出后又被发布者撤回了的缘故。

解决方法是将脚本中获取线上Last版本的代码直接指定为1.0.17,也就是说使用上一版本的 libsodium包即可。

1.使用vi 来编辑已经在本地的脚本

vi twist.sh

跳到503行,将这一行的原本内容:

[ -z "$libsodiumver" ] && libsodiumver="$(wget -qO- https://api.github.com/repos/jedisct1/libsodium/releases/latest | grep 'tag_name' | cut -d\" -f4)"

修改为:

[ -z "$libsodiumver" ] && libsodiumver="1.0.17"

保存后退出编辑。注意,复制粘贴后请检查上面的代码,因为Medium自动格式转换的原因,这一行代码的双引号可能存在问题,请确保修改后的格式符合bash脚本规范。

2.在命令行执行已经下载在本地并编辑过的脚本

chmod -x twist.sh && bash twist.sh

完成后会有提示,按下回车将会显示一个巨大的二维码,以及各方面信息,包含了服务器地址,Shadowsocks的加密方式、端口(可能不提示,默认是443,伪装成了一个https的网站。)、密码、混淆方式和参数等等相当多的必要信息,请复制下来并妥善保存。然后按下回车,VPS服务器将会进行重启,以完成相关配置和启动工作。

此时基本所有工作都已经完成,您已经可以使用电脑端、手机端或者路由器端的Shadowsocks客户端填入上方获得的必要信息进行连接使用了。而更加详细的配置、修改以及优化,这将是进阶的一个话题和经验。

当然,还可以参考《V2ray多合一脚本,支持VMESS+websocket+TLS+Nginx、VLESS+TCP+XTLS、VLESS+TCP+TLS等》,搭建V2ray安全性以及体验度更加。

如果需要帮助,可以在评论区留言,我会回复您。

发表回复