我们希望为Windows Azure Cloud中的应用程序配置SSL。根据windows azure(ref:http://msdn.microsoft.com/en-us/library/windowsazure/ff795779.aspx),
中的说明1)我们已从我们的域名* .mydomain.com获取来自CA(godaddy)的SSL通配符证书
2)CSR是从托管域的网络服务器(mydomain.com)生成的。此托管域指向该Web服务器。
3)为了完成证书,我们将安全证书(.crt)上传到托管服务器,并从该服务器导出到个人信息交换(.pfx)文件。 (我确定友好名称与CN匹配)。
4)然后我们将.pfx文件上传到windows azure webrole(云服务)。
5)根据说明,我们将证书指纹添加到服务配置文件中,并设置证书名称=“MySSLCert”。
<Certificates>
<Certificate name="MySSLCert" thumbprint="1234567890" thumbprintAlgorithm="sha1" />
</Certificates>
6)然后,我们在Azure项目的服务定义文件中添加了设置的HTTPS端点。等,
<ServiceDefinition name="AzureSSLTest" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
<WebRole name="SSLTestproject" vmsize="Small">
<Sites>
<Site name="Web">
<Bindings>
<!--<Binding name="Endpoint1" endpointName="Endpoint1" />-->
<Binding name="Endpoint2" endpointName="Endpoint2" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<!--<InputEndpoint name="Endpoint1" protocol="http" port="80" />-->
<InputEndpoint name="Endpoint2" protocol="https" port="443" certificate="MySSLCert" />
</Endpoints>
<Certificates>
<Certificate name="MySSLCert" storeLocation="LocalMachine" storeName="My" />
</Certificates>
<Imports>
<Import moduleName="Diagnostics" />
<Import moduleName="RemoteAccess" />
<Import moduleName="RemoteForwarder" />
</Imports>
</WebRole>
</ServiceDefinition>
发布后,当我们尝试使用Azure云URL访问应用程序时,我们会收到“身份未验证”警告。(来自Chrome浏览器)
在Firefox浏览器中,我们会收到错误详情,
testssl.cloudapp.net使用无效的安全证书。
证书仅对以下名称有效:
* .mydomain.com,.mydomain.com(错误代码:ssl_error_bad_cert_domain)
然后,我们创建了子域名(test.mydomain.com)并将该子域名转移到Cloud URL(testssl.cloudapp.net),现在我们尝试使用托管子域名URL访问我们的应用程序,我们收到错误,< / p>
此网页不可用
https://testssl.cloudapp.net/的网页可能暂时关闭 或者它可能永久移动到新的网址。
错误501(net :: ERR_INSECURE_RESPONSE):未知错误。
请帮我解决这个问题。
答案 0 :(得分:4)
您需要create a DNS CNAME - 您无法在Azure云服务和SSL中使用屏蔽转发。请参阅MSDN for reference - 特别是第6项。
创建 CNAME ,指向test.iclassicmdm.com
→testssl.cloudapp.net