本人是外宿在校生,透过朋友的了解得知阿里云有学生优惠活动“飞天加速计划·高校学生在家实践”,于是我马上进行了学生验证,按照要求一步步完成任务,整个流程下来大概半个小时就搞定了,从一开始不知道ECS云服务器是什么,到创建ECS云服务器实例,通过SSH远程连接再进行FRP服务端部署,然后在学校的服务器上部署FRP的客户端。整个部署过程也很简单,①具有公网IP的ECS云服务器将作为frp服务端(frps),首先去项目地址的releases页面下载与服务端系统匹配的文件并解压,编辑frps.ini文件绑定端口7000,进行到解压后的frp目录,然后通过./frps -c frps.ini命令即可启动服务端,另外,想要开机自启可以添加到systemd的service服务。②具有内网IP的校园网服务器将作为客户端(frpc),编辑frpc.ini文件,其中server_addr=ECS云服务器的IP,server_port=7000,然后就是添加想要穿透的应用,我这里是SSH,所以协议选择tcp,本地端口22,远程端口可以自定义。用命令 frpc -c frpc.ini即可启动客户端,同样地,可以通过天剑systemd的服务后台运行和开启自启。
在部署完之后记得在阿里云的控制中心添加安全组,也就是开放端口7000和应用绑定的远程端口。我后面还遇到一个很普遍的问题:login to server failed: EOF。可能是校园网防火墙的问题,解决的办法很简单,在服务端和客户端原来的[common]配置中加入tls_enable = true即可! 注意:服务端和客户端都要配置!可以通过frp的日志调试BUG,调试通了又可以快乐的玩耍了,访问速度是真的快,感谢阿里云的免费ECS!另外,ECS服务器还可以做很多其他的应用,比如Web服务器,HTTPS服务器,代理等等,性价比挺高的,以后购买的话也会优先考虑阿里云。
说到收获总结,为了使用ECS云服务器,我还去了解了云服务器与VPS的区别,也算是增加了一个知识点吧, VPS,虚拟服务器,就是在一台物理服务器(我们称之为母鸡)上根据某种虚拟方式划分出虚拟机,说白了,和你自己在你的电脑上装个Virtualbox,开几个虚拟机没啥区别。也就是说,这个VPS是依赖于这台母鸡的,一旦母鸡挂了,那你的VPS肯定会挂。另外,这台母鸡上的所有的VPS全部依赖于母鸡的资源,平分母鸡的资源(当然这要看VPS服务商如何去划分VPS了),共享母鸡的带宽,共享母鸡的CPU、硬盘、内存等等资源。也就是说,你在VPS里面看到的硬盘,就是存放在母鸡的硬盘上的某个很大的文件,所以VPS的磁盘IO是要看母鸡的硬盘好坏的,母鸡的磁盘越好,比如SSD,那么你的VPS的磁盘IO速度越高。同理,其他的资源,如带宽、CPU、内存也类似。那么,如果你在VPS里面写入一个文件,就是写到了母鸡的硬盘上,和你自己用台式机新建一个文件到你的硬盘上,基本没有区别。而云主机则不一样。云主机是架构在“云”上的,我这么说是有点玄乎,所以很多站长其实不懂什么叫云。云简单地说,或者说我的理解,就是集群。对于阿里云的云服务器,很重要的一个区别就是,你在阿里云的云服务器里面看到的硬盘,肯定不是和你的云服务器在一台物理服务器上的。阿里云的云服务器中的硬盘完全是放在单独的网络存储集群上。根据我自己跟阿里云同事的了解,阿里云的存储集群是网络存储,每份数据会在集群上的不同位置保存3份,任何一份丢失都不影响,这样完全保证了存储的高可用性和数据完整性。也就是说,你在云服务器里面写入一个文件,那么其实是通过网络(内网)的传输到另外某n台服务器上,写到他们的硬盘上。这就是集群。这就是云主机和VPS的主要区别。