如何通过 php 确定连接是否安全?

How can I determine via php whether the connection is secure?

如何使用php判断是否使用连接 用户是安全的(例如通过 VPN),如图所示?

Click here to see the example img

TIA

理论上,没有办法做到这一点。

实际上,您可以决定将哪些 VPN 提供商定义为 "secure",找出他们使用的 IP 范围,并根据该组 IP 范围检查每个请求的源 IP 地址。

更好的方法是更深入地考虑安全性。从理论的角度来看,安全性可以被认为是对您的服务及其处理的信息的机密性、完整性和可用性保证的组合。您必须问问自己,用户的 VPN 是否加强了这些保证。

例如,为了保护在您的客户端和您的服务之间传输的信息,通过 TLS(例如用于 Web 服务的 HTTPS)为您的所有协议提供服务可能就足够了,也更实用。

如果您的目标(无论出于何种原因)是保护用户 IP 地址的机密性,则无法强制执行。如果您的用户选择使用一个永远不会被看到的 IP 地址向您的服务发送任何内容,那么如果您的服务具有可公开路由的 IP 地址,则无法阻止这种情况。有一种方法可以让您忽略或拒绝该流量,但是用户和您的服务之间的路由上的任何人都可以看到明文形式的源和目标 IP 地址(也就是说,除非您使用 Tor [请参阅 https://en.wikipedia.org/wiki/Onion_routing ]).在很大程度上,none 应该适用于任何实际应用。

归根结底,您应该问自己一些不同的问题,例如您正在保护哪些信息、您可能会遇到什么样的攻击者以及您的应用程序的攻击面是什么样的。识别潜在风险,评估其优先级并实施控制以控制风险。请记住,您永远无法完全消除风险。