我需要阻止用户通过Compute Engine上的外部IP地址访问网站,他们应该只能通过域名(www.some-domain.com)访问网站,而不能通过IP地址本身访问网站。
让我们说实例引擎的Compute Engine的IP地址为A.A.A.A。我正在使用Load Balancer通过以下设置将其重定向到安全连接:
我将DNS(A)指向B.B.B.B。
现在,我可以访问https://www.some-domain.com。但是问题是,我仍然可以使用A.A.A.A和B.B.B.B.访问该网站。
如何防止这种情况?谢谢。
答案 0 :(得分:0)
好吧,您可以做几件事:
1-从VM实例中删除外部IP
2-创建特定的防火墙规则,仅允许访问特定的子网范围
我来详细说明:
对于1:
使用Web控制台,您只需要编辑VM详细信息,转到网络接口设置,然后在“外部IP”下拉菜单中选择“无”,保存新配置。所有这些都可以在不停止VM实例的情况下完成。
对于2:
使用default-allow-http和default-allow-https创建几个firewall rules,它们具有相同的配置,但是在“过滤器”中,您需要指定要允许的“公共”子网范围(您的数据中心范围例如)。这些新的防火墙规则必须具有较低的优先级值,以具有比现有规则更高的优先级。验证工作正常后,您可以删除旧的Video GCP Firewall。
我希望能对您有所帮助,如果您需要更多帮助,请给我写评论
答案 1 :(得分:0)
您的问题与配置Google Identity Aware Proxy非常相似,后者是Google Beyond Corp架构的一部分,并且为您的用户提供Google ID非常有效。
docs解释了设置IAP的过程,但也有助于解释如何配置活动部件。您需要:
然后,您的负载均衡器将使用HTTP / S流量,并使用您在配置它时设置的转发规则转发到后端。如果您尝试直接转到实例IP,则防火墙将阻止您,为了进行测试,您可以从客户端IP启用允许,然后您会看到没有标题
答案 2 :(得分:-1)
这是我解决此问题的方法: