我想设置一个安全组,它只允许我的静态IP访问EC2服务器,但因为我使用Cloudflare,它使用了一些IP /反向代理魔术,AWS安全组只能看到Cloudflare IP,而不是我的实际静态IP。我看了一遍,也找不到如何做到这一点的任何答案。有没有人知道这一点?在使用Cloudflare时在AWS安全组中设置静态IP
0
A
回答
2
您无法使用安全组设置进行此操作。
像Cloudflare这样的缓存代理使用其IP地址之一创建到原始服务器的单独连接。
您需要在安全组中使用这些地址,并在Cloudflare更改列表时维护这些规则。但是,名单是公开的。
https://www.cloudflare.com/ips/
接下来,你需要配置你的Web服务器拒绝请求时CF-Connecting-IP
HTTP头不包含您的IP地址。
你必须做两件事,因为如果不限制流量的CloudFlare的IP地址范围与您的安全组,然后从交通别处(不通过的CloudFlare)可以伪造包含IP报头地址。
完成这两件事后,您几乎完成了您的目标,但并不完全......因为Cloudflare会缓存响应。
因此,接下来的问题是,您还需要在Cloudflare中禁用缓存,因为一旦您抓取页面,它可能位于Cloudflare缓存中,其他人可能会访问它。
https://support.cloudflare.com/hc/en-us/articles/200168306-Is-there-a-tutorial-for-PageRules-
真的,因为你需要限制访问单个IP(或一小部分)的情况下,通常不会做出很大的意义,通过CloudFlare的发送流量。
0
您可以设置一个lambda函数来解析Cloudflare中的IP file并动态更新您的安全组。 AWSlabs on github有一个用于CloudFront的示例lambda函数。您遇到的两个问题是,您必须安排lambda函数来运行,因为您无法像示例中那样订阅队列,并且可能会用尽安全组规则,即50 is the limit。
相关问题
- 1. 在AWS托管中设置安全组中的动态IP?
- 2. 使用静态IP安全
- 3. AWS - 静态IP
- 4. AWS在多个安全组中重复使用IP
- 5. 在使用New-AzureQuickVM时设置静态IP地址
- 6. 如何在AWS中的安全组内部配置安全组?
- 7. AWS Rds安全组设置考虑
- 8. Iphone SDK设置静态IP
- 9. 使用VMWare工作站在静态IP上设置Docker机器
- 10. tomcat7使用什么端口?我如何设置AWS安全组?
- 11. 为输出请求设置静态IP
- 12. AWS ElasticBeanstalk安全组
- 13. 在QT中为WiFi连接设置静态IP
- 14. 在Hana Express Edition中设置静态IP地址
- 15. AWS Cloudformation:如何在AWS弹性Beanstalk配置中引用多个安全组
- 16. 在非静态类中锁定静态变量是否安全?
- 17. AWS CloudFromation使用现有安全组
- 18. 带AWS Elastic Load Balancing的SSL - 静态IP?
- 19. AWS Cloudformation配置ICMP协议安全组
- 20. 在Realm中使用静态getter是否安全?
- 21. Cloudflare使用AWS ELB的AWS ELB
- 22. Azure资源管理器使用json模板设置静态IP
- 23. 如何在AWS托管网站上设置Cloudflare?
- 24. 使用.net静态路径类时使用TPL是否安全?
- 25. 注册商要求IP地址时的Cloudflare设置
- 26. 在ObjectInputStream.readObject()上设置超时安全吗?
- 27. 在Joomla中安装组件时设置为发布状态
- 28. 使用Powershell在断开的网卡上设置静态IP,有可能吗?
- 29. 在CC.NET 1.5中配置安全设置
- 30. 在使用cloudflare时获取客户端IP地址
如果我们设置了适当的安全组,为什么我们需要配置我们的Web服务器来检查CF-Connecting-IP头?安全组是否会负责过滤非cf流量? –
@geek_guy是的,安全组将阻止非Cloudflare流量,但这里涉及的问题只允许某个查看器IP地址访问该网站。安全组会看到Cloudflare IP,因此应用程序需要检查每个请求以查看Cloudflare报告其来源的IP地址。 –