目标: 使用AWS WAF过滤掉到达CloudFront的流量,以便只有连接到OpenVPN网络的用户才能访问Web应用程序。
OpenVPN将所有连接的用户分配给网络范围为172.xx.yyy.z / a的IP。
因此,我通过WAF规则将此范围列入Web ACL的白名单,并将任何其他IP列入黑名单。
但是,我无法访问该站点。
从CloudWatch来看,很明显,这是因为实际上并未使用VPN分配的IP来访问Web应用程序。这是一个修改后的IP,与我设备的公共IP非常相似。
据我所知,我无法确定这些“自定义” ip的范围。在这种情况下,如何确保只有连接VPN的用户才能访问该站点?
我错过了重要的事情吗?感谢您为解决此问题提供的任何帮助。
谢谢!
答案 0 :(得分:0)
172.16.0.0/12 IP地址是private addresses(172.16.0.0-172.31.255.255),并且不能在公共Internet上路由。
如果您引用的IP在此范围内,则该地址就是专用网络(即VPN隧道)上的地址。 VPN远端的设备将具有Internet访问权限,并将具有公共IP地址(可在公共Internet上路由)以及CloudFront看到的内容。
您需要了解访问者使用的VPN服务的所有Public IP CIDR阻止,否则您将无法按IP阻止。
尽管您可以通过HTTP标头进行限制。如果您检查通过的连接(没有WAF),则可以从请求中学习。
答案 1 :(得分:-2)
最终的解决方案是确保所有流量都通过OpenVPN强制执行。
这意味着连接到VPN的任何人都将拥有分配给VPN服务器的公共IP。
因此,该IP是唯一允许通过WAF访问该站点的IP。