如何让家人通过 VPN 远程访问摄像头
私有 VPN 路径可以替代公网摄像头端口,但前提是你限定观看者、服务和路由。这就是需要设计和验证的边界。
三个问题决定家用摄像头是否应当通过 VPN 访问,而它们都与摄像头品牌无关。谁需要看,究竟要访问到什么,以及即使对他们而言什么必须不可达。在购买网关之前先回答这些问题,因为答案决定网络形态,而不是反过来。VPN 入口的私密程度,只取决于你挂在它上面的路由和账户。
决定谁能进来,以及用什么身份
从观看者清单开始,网关支持时为每个人分配独立的 VPN 身份。独立身份让移除变成一步操作,而不是全家人共用的一次改密码。共用配置还会让日志失去意义,因为每条连接看起来都是同一个人。
写下每个观看者被允许访问什么。通常的答案是一台摄像头的观看服务,而不是摄像头的管理页面,当然更不是路由器。
这份清单就是授权模型,它应当能在更换网关后继续成立。如果新路由器无法表达按用户的路由,设计就已经悄悄变成了全有或全无。优先选择能把身份绑定到目的地的网关,而不是只分发地址的那种。
把路由限定在一台摄像头服务上
把手机放进家庭局域网的 VPN 授予的远不止观看。把允许的路径限定在摄像头地址及其应用实际使用的端口。如果应用需要发现广播,那是一项需要刻意放行的独立依赖,而不是打开整个子网的理由。
当摄像头无法运行 VPN 客户端时,在网关上终止隧道,只路由被批准的目的地。摄像头不必变成服务器。
手机上的商业出口 VPN 不是这个。它改变的是手机流量看起来来自哪里;它并不会造出回到你家庭网络的路径。混淆两者,是 VPN 方案仍然看不到摄像头的最常见原因。
把观看和管理分开
摄像头自身的账户与网络路径同样重要。产品提供时,为普通家庭成员使用只读观看角色,并把管理员密码留在群聊之外。网络过滤无法分开共用同一个 HTTPS 监听器的两种功能,所以如果观看和管理在同一个端口上,摄像头自身的授权控制就是边界。
检查厂商应用是否在悄悄使用云中继进行远程观看。如果是,VPN 路径可能被完全绕过。
云访问并非自动就是错的,但它必须是一个决定。当私有路径才是本意时关闭它,并注意关闭它也可能关闭应用所依赖的固件更新或通知。
庆祝之前先关上其他门
删掉一条端口转发,并不能证明摄像头从互联网上不可达。残留的 UPnP 映射、已启用的厂商云功能,或第二条中继,都可能提供你已忘记的路径。盘点受支持的远程访问设置,并决定你真正需要哪些。
当路由器能清楚表达时,独立的摄像头网段会有帮助。允许从被批准的路径观看,并阻止摄像头访问笔记本电脑和手机。
不要隔离到更新或观看流程停摆的程度。与其日后在压力下放宽规则,不如记录例外。还要记住,分段并不能修好使用默认管理员账户或不受支持固件的摄像头;它只是限制被攻陷的摄像头能触及的范围。
从两侧检验边界
合格与否是一组观察,而不是感觉。从被批准的远程客户端确认画面能加载。从未被批准的账户确认加载不了。从互联网确认摄像头端口是关闭的。
从网络外部的主机做一次快速外部检查:
nmap -Pn -p 443,554,8000 203.0.113.10
curl -sS -o /dev/null -w "%{http_code}" --max-time 5 http://203.0.113.10/
然后测试移除与重启。删除一个观看者的身份,确认应用停止工作且不影响其他人。重启网关,确认路由和拒绝规则都回来了,因为只存在于内存里的规则不是边界。如果有意移除了公网访问,也要验证那条拒绝,而不是想当然。