当前位置:网站首页 > 更多 > web > 正文

[玩技术] 内网穿透反代哈课表资源站实现校外下载

作者:CC下载站 日期:2021-09-02 09:26:45 浏览:19 分类:web

背景

近日,z同学欲下载专业音乐制作软件FL Studio。四处寻找破解版无果。

我便看了一眼哈课表的资源列表。

[玩技术] 内网穿透反代哈课表资源站实现校外下载

我发现FL Studio赫然在列。接下去就是如何把这个软件分享给她的问题了。

众所周知,在哈课表资源列表中的链接是校园内网的链接。很显然,哈课表技术部在学校某台服务器上存储了这些 软件的安装包,并提供了一个下载服务。

z同学在校外,无法访问学校内网,那是不是我只能先下载好后再发给她呢?这未免有些麻烦了。

解决过程

我们先观察下载链接。


http://10.245.146.27:8008/FL%20Studio/flstudio_win_20.7.2.1863.exe

首先我在实验室的主机是能够直接访问到该ip的。那我们可以先用做个反代,先让服务看起来是我的主机提供的2333。以下是nginx配置文件。


server
{
  listen 8008;
  server_name  127.0.0.1;
  location / {
     root  /var/www/html;
     proxy_pass http://10.245.146.27:8008/;
  }
}

这样做完后,从表面看,资源下载的服务就是我的实验室机器的8008端口提供的了。

然后我们就得把"我的服务"实现公网访问了。

要实现公网访问,必然需要内网穿透。考虑到下载速度因素,我在我带宽较大的洛杉矶的主机上下了个frp。开启frps。配置如下。


[common]
bind_port = 7000
vhost_http_port = 8080

然后让我的实验室主机的frpc去连接,因为我的实验室主机一直与阿里云服务器内网穿透着。我们需要新建一个新的frpc.ini。这里就叫做frpc2.ini。配置如下。


[common]
server_addr = california.wuuconix.xyz
server_port = 7000

[hit]
type = http
local_port = 8008
custom_domains = hit.wuuconix.link

然后运行一个新的frp客户端程序。


nohup ./frpc -c ./frpc2.ini >frpc2.log 2>&1 &

这样实现了访问http://hit.wuuconix.link:8080/FL%20Studio/flstudio_win_20.7.2.1863.exe就能够下载文件了。

接下来我们再配置一下洛杉矶主机的nginx,操作一波,去掉端口并实现https。配置如下。


server
{
  listen 443 ssl;# https 监听的是 443端口
  server_name  hit.wuuconix.link;

  keepalive_timeout 100;

  ssl_session_cache   shared:SSL:10m;
  ssl_session_timeout 10m;

  ssl_certificate /etc/nginx/ssl-link/fullchain.crt; # 证书路径
  ssl_certificate_key /etc/nginx/ssl-link/private.pem; # 请求认证 key 的路径

  ssl_protocols TLSv1.1 TLSv1.2;
  ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
  ssl_prefer_server_ciphers on;
  ssl_session_cache shared:SSL:10m;

  index index.html index.htm;
  location / {
     root  /var/www/html;
     proxy_pass http://hit.wuuconix.link:8080;
  }
}

server
{
  listen 80;
  server_name  hit.wuuconix.link;
  rewrite ^(.*) https://$server_name$1 permanent;
}

这样就能实现这样的效果。

用户访问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反代都派上了用场,在生活中真正派上了用尝。

如果你在校外,但想下载哈课表提供的资源的话,欢迎访问这个链接。

https://hit.wuuconix.link/ ?


您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯