内网穿透反代哈课表资源站实现校外下载
背景
近日,z同学欲下载专业音乐制作软件FL Studio。四处寻找破解版无果。
我便看了一眼哈课表的资源列表。
我发现FL Studio赫然在列。接下去就是如何把这个软件分享给她的问题了。
众所周知,在哈课表资源列表中的链接是校园内网的链接。很显然,哈课表技术部在学校某台服务器上存储了这些 软件的安装包,并提供了一个下载服务。
z同学在校外,无法访问学校内网,那是不是我只能先下载好后再发给她呢?这未免有些麻烦了。
解决过程
我们先观察下载链接。
1 |
|
首先我在实验室的主机是能够直接访问到该ip的。那我们可以先用做个反代,先让服务看起来是我的主机提供的2333。以下是nginx配置文件。
1 |
|
这样做完后,从表面看,资源下载的服务就是我的实验室机器的8008端口提供的了。
然后我们就得把"我的服务"实现公网访问了。
要实现公网访问,必然需要内网穿透。考虑到下载速度因素,我在我带宽较大的洛杉矶的主机上下了个frp。开启frps。配置如下。
1 |
|
然后让我的实验室主机的frpc去连接,因为我的实验室主机一直与阿里云服务器内网穿透着。我们需要新建一个新的frpc.ini
。这里就叫做frpc2.ini
。配置如下。
1 |
|
然后运行一个新的frp客户端程序。
1 |
|
这样实现了访问http://hit.wuuconix.link:8080/FL%20Studio/flstudio_win_20.7.2.1863.exe
就能够下载文件了。
接下来我们再配置一下洛杉矶主机的nginx,操作一波,去掉端口并实现https。配置如下。
1 |
|
这样就能实现这样的效果。
用户访问http://hit.wuuconix.link/FL%20Studio/flstudio_win_20.7.2.1863.exe
。会被重写为https://hit.wuuconix.link/FL%20Studio/flstudio_win_20.7.2.1863.exe
。然后用户的界面不会变了,开始下载了。但是实际上这个443端口是一层反代,实际上提供服务的还是我们的frp端口http://hit.wuuconix.link:8080
。
所以本质没变,但是表面上看着就很舒服了,没有端口,还是https,看着十分正式。
之后的故事
这样已经满足一开始的目的了,z同学可以在校外直接访问http://hit.wuuconix.link/FL%20Studio/flstudio_win_20.7.2.1863.exe
实现下载哈课表提供的资源。
速度也教快,呈波浪形233,平均速度大概是1MB/s
,峰值达到了3MB/s
。比我的阿里云主机可快多了😂。
然后我看着哈课表资源列表中的这么多资源 ,我打算做个列表开方便点击后直接下载。
我已经准备好vue,开始准备一个个写链接的时候,我访问了一下http://10.245.146.27:8008
。
原来它有一个网页(
而我是反代的它,那不是直接访问http://hit.wuuconix.link
就能访问到这个列表嘛!我还在哈课表上一个个软件复制链接做页面2333,感觉自己蠢爆了。
战术总结
这个暑假学到的内网穿透和nginx反代都派上了用场,在生活中真正派上了用尝。
如果你在校外,但想下载哈课表提供的资源的话,欢迎访问这个链接。