下面是我当前的架构:我有一个托管在云中的简单站点,需要我的公司提供服务。因此,mysite.com有一个CNAME重定向到1234.cloud.com。我知道需要为mysite.com创建SSL证书。
以下是我的问题:
( a) CNAME在获取内容时如何重定向工作?DNS是解析云IP地址,只允许一个HTTP连接到云,还是HTTP连接发送到我的服务器,然后中继到云?哪个服务器显示用于mysite.com的SSL证书?我认为我需要配置一个本地服务器来提供SSL证书,因为仅靠DNS是不够的,但我不确定体系结构。
如何确保我的服务器和云之间的通信也是加密的?我需要在两个服务器之间配置客户机/服务器SSL吗?
发布于 2016-02-01 22:11:15
我想你有点混淆了术语。CNAME本身并不是重定向。它只是DNS中的记录类型,也称为DNS别名。DNS协议最终是将名称映射到IP地址。最常见的记录类型是"A“记录,它是名称到IP的单向映射。相反,CNAME记录是Name1到Name2的单向映射。
在您的例子中,CNAME记录告诉请求IP "mysite.com“的客户端请求"1234.cloud.com”的IP。因此,客户机然后为1234.cloud.com请求IP,获取其IP (例如10.10.10.10)并继续连接。所有这些都是在客户端的网络堆栈上完成的。网络浏览器对这一交换一无所知。它只知道网络堆栈上写着"mysite.com“映射到"10.10.10.10”。
您的云服务器将同时承载站点和SSL证书(除非在云服务器前面有负载均衡器)。除了对您公司的DNS区域( mysite.com )具有权威性的DNS服务器之外,不涉及来自您公司的服务器。
确保客户端和云服务器之间通信加密的唯一方法是禁用云服务器上的非HTTPS请求。
发布于 2016-02-01 22:06:26
您必须理解DNS解析与任何HTTPS对话完全分离。您的系统将执行DNS请求,以便从DNS名称获得IP地址。CNAME只是DNS注册表中另一个记录的别名。但最终你有了一个IP地址。您还可以向/etc/host文件中添加一些记录。
一旦浏览器有了可以连接到服务器的IP地址,它就会启动SSL或TLS会话。服务器向浏览器发送证书,由浏览器检查证书是否与其请求的名称相对应。
通常DNS指向云,指向内容分发网络。然后,CDN为未缓存的元素调用您的服务器。
https://serverfault.com/questions/753317
复制相似问题