群晖可以访问公网当然很方便,但很多时候并不需要这样做,只是临时的访问资料,所以一直在琢磨怎么可以实现有选择性的对特定 IP 开放访问.
最初使用的方案是梅林固件+entware,安装了 knockd 敲门插件,指定若干个端口开门,开门程序是用 IOS 自己写的,这个方案还不错,只是互动性很差.
后来了解到阿里云有物联网协议,可以一直在线,1 元 100 万分钟应该可以跑一年多了,于是全部重写了路由器端代码用 Python+aliyun iot SDK,实现响应.而客户端则是 IOS+aliyun iot SDK,这样一个操作逻辑.
后来添加了一些小功能,比如路由器问题,启动时间什么的,全当是增加点色彩.
核心的思路是:
所以本质就是,路由器在看守,给必要访问的 IP 放行一些时间,这样应该不管哪方面都不算是开放 Web 服务器对外访问了...
手机端界面:
V2EX 不能插入图片,我贴在知乎吧:
1
Buges 2019-12-21 18:53:17 +08:00 via Android
你是为了安全还是防查封 Web ?
路由器上暴露 ssh,然后通过脚本操作防火墙就能达到这种效果了。 当然,只为了安全的话,我用 basicauth |
3
linbenyi 2019-12-23 09:51:00 +08:00 via iPad
高手哇。于是为了传文件给朋友。要发 ios 程序给他了。
|
4
SLboat OP @linbenyi 如果真有这样的需要,让它把 IP 发给你,你给它开门也可以的.但对于公网严格的地区,有些牺牲似乎是必然的.
|
5
linbenyi 2019-12-24 15:10:25 +08:00 via iPad
能完成网页端的比较好。放到虚拟主机上。
|