我们目前的设置是:
Client -> ALB -> Target Group -> auto-scaled instances
我们希望在VPN访问后“隐藏”一些urls,例如:
Client -> VPN -> ALB -> Target Group -> auto-scaled instances
对于具有静态IP地址的实例,可以从VPN实例的安全组配置对端口的安全组访问。但是我们的VPN被设置为只路由内部流量,而不是internet流量,因此它不路由所需的url。
例如,URL应该是:"https://www.something.com/admin“
我们的一个想法是使用自定义端口:"https://www.something:8099/admin",然后在ALB安全组中将该端口配置为只能从VPN实例的安全组访问。但这仍然不起作用,因为VPN不会路由互联网流量。
我曾试图更改VPN (openVPN访问服务器)配置,但没有成功。即使当我将VPN配置为路由所有互联网流量时,它仍然不起作用。
我在网上找到的关于这个主题的每一篇材料都建议修改VPN配置,将域路由到特定的IP。
有没有办法做到这一点,而不必硬编码IP地址?显然,我不能硬编码内部ALB IP,因为它一直在变化,我也不能硬编码最终实例流量,因为它是自动缩放的,而且一直在改变。
发布于 2017-06-05 11:20:53
通过发送查询DNS服务器将域名解析为IP地址。如果我正确理解,当人们使用VPN时,您希望将域名解析到内部IP地址。
这可以通过实现您自己的DNS服务器并告诉您的VPN客户端在通过VPN连接时使用该DNS服务器来实现。在DNS服务器中,您将为something.com设置区域,在其中为指向要使用的内部IP地址的域/子域添加A记录。
否则,此DNS服务器可以充当正常的递归DNS解析器。
发布于 2017-06-06 05:33:10
我能想到的一个解决方案是使用两个记录集,如www.example.com和admin.example.com。
www.example.com -> Public ALB(Open to internet) --> Target Group (other then /admin) -> auto-scaled instances
在此中,再附加一个目标组,将/admin转发到404或error。
admin.example.com -> Internal ALB(Open to VPN) --> Target Group (/admin) --> autoscaled instances
如果在Route53中管理区域/记录,AWS支持拆分域。
https://serverfault.com/questions/854006
复制相似问题