最近在浏览YouTube时偶然发现一款强大的内网穿透工具:loophole,要知道,目前市面上号称免费的内网穿透工具大部分有以下几个缺点:
- 限制带宽和流量
- 不能指定二级域名或者不能免费指定
- 不断变化的域名(不能在内网建站,只能短时间使用)
- 需要公网ip做转发(都有公网ip了我还折腾什么)
- 需要开启vpn,不能暴露公网,只能自己组局域网使用(zerotier之类)
但是,loophole就不存在以上问题。
1、什么是loophole
Loophole.cloud是若干免费内网穿透工具中提供公共服务且相对稳定的一个,支持Windows、Linux(包括嵌入式设备)、MacOS,同时提供cli和desktop程序。目前,loophole服务仅在欧洲托管。loophole的客户端cli是开源的,官方自述“就目前而言,我们希望通过测试期以稳定系统,希望明年能提供自托管服务”。loophole服务提供的功能包括:
- 公开本地HTTP服务器
- 公开在网络中任何计算机上运行的HTTP服务器
- 通过HTTPS公开本地目录
- 通过WebDav公开本地目录
- 基本身份验证
功能上公开本地HTTP服务器,就是网站发布,这个网站可以是一个博客、一个影视库,也可以是一个论坛系统等。另外一款工具zrok将这类功能总结为共享文件,定义很准确,无论是html、css、js还是其他文件,无非都是公布出去别人能获取到并在浏览器或其他程序中解析、渲染、呈现。因此,webdav公开本地目录、前端调试等都是以为网站发布/文件共享功能为基础的。
2、安装
无需安装,只需要解压对应的压缩包即可,这里引用作者的Cli版本的压缩包链接:
Linux或者MacOS也可以直接拉取:
wget https://github.com/loophole/cli/releases/download/1.0.0-beta.15/loophole-cli_1.0.0-beta.15_linux_armv7.tar.gz
#github无法下载时可使用以下备用链接#wget
https://appscross.com/Sharetools/Tools%20Share/loophole/cli/linux/loophole-cli_1.0.0-beta.15_linux_armv7.tar.gz
#解压并进入loophole目录
tar zxvf loophole-cli_1.0.0-beta.15_linux_armv7.tar.gz && cd loophole-cli_1.0.0-beta.15_linux_armv7/shell
3、网站发布
然后我们在命令行下打开,在发布内网网站之前,我们需要先登录,以Windows为例:
loophole account loginpowershell
然后会给我们一个链接和验证码,只需打开验证即可,然后会要求我们登录,可以使用GitHub账号直接登录,之后返回cmd,我们可以通过指定端口和ip来映射到公网,或者开启https:
loophole http [端口] [ip] [--https]powershell
可以映射局域网内的所有设备,只需端口和ip即可,十分方便。
在默认情况下,loophole会给我们分配一个随机的二级域名,在我们退出之前,这个二级域名不会发生变化。
如果想要自定义二级域名,只需在后面加上–hostname [自定义],例如:
loophole http [端口] [ip] [--https] [--hostname][自定义]powershell
如果自定义的域名没有被占用的话,loophole会为我们分配一个自定义.loophole.site的域名,这时我们就可以在公网访问这个域名了。而且虽然服务器在欧洲,实测不需要科学也能访问。
请注意,如果报错,请尝试更换一个域名
当然了,loophole还有其他玩法,后面我会继续分享。