Я пытаюсь настроить сертификат SSL для поддержки HTTPS через AWS ELB. У меня все настроено:
1) SSL-сертификат GoDaddy настроен в AWS ELB (включая цепочку сертификатов).
2) Пусть слушатели ELB выглядят следующим образом:
client ---> HTTPS -> ELB порт 443 -> HTTP - -> порт сервера 80
3) В GoDaddy создайте запись CNAME, например:
service.acme.com CNAME для aws-some-region.elb.amazonaws.com
4) Если я скручиваю -kv https://service.acme.com/
* Trying 52.6.xxx.xx...
* Connected to service.acme.com (52.6.xxx.xxx) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
* Server certificate: pixxeen.com
* Server certificate: Go Daddy Secure Certificate Authority - G2
* Server certificate: Go Daddy Root Certificate Authority - G2
> GET / HTTP/1.1
> Host: service.acme.com
> User-Agent: curl/7.43.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Accept-Ranges: bytes
< Content-Type: text/html
< Date: Mon, 22 Feb 2016 14:06:08 GMT
< ETag: W/"154-1455797592000"
< Last-Modified: Thu, 18 Feb 2016 12:13:12 GMT
< Server: Apache-Coyote/1.1
< Content-Length: 154
< Connection: keep-alive
<
<html>
<head>
<title>Acme Service Application</title>
</head>
<body bgcolor=white>
<p>Acme Service Application</p>
</body>
* Connection #0 to host service.acme.com left intact
HTML - это страница index.html, которую я развернул для ELB, чтобы запросить подтверждение того, что экземпляр EC2 запущен и работает.
Однако проблема, с которой я сталкиваюсь, заключается в том, что если какая-либо платформа мобильного клиента попадает в конечные точки службы service.acme.com (okhttp или AFNetworking), я вижу следующее (это вызов okhttp):
02-22 08:52:10.513 2564-2564/com.acme W/System.err: javax.net.ssl.SSLPeerUnverifiedException: Hostname service.acme.com not verified:
02-22 08:52:10.513 2564-2564/com.acme W/System.err: certificate: sha1/+axZF3Oyaatuoio5rsmNhUUhOZE=
02-22 08:52:10.513 2564-2564/com.acme W/System.err: DN: CN=acme.com,OU=Domain Control Validated
02-22 08:52:10.513 2564-2564/com.acme W/System.err: subjectAltNames: [acme.com, www.acme.com]
Итак, есть ли у кого-нибудь идеи, где я ошибся?
Я гулял по StackOverflow и наткнулся на этот пост (один из самых подробных, что я видел): Установка сертификата SSL на Amazon EC2 ELB, и он, похоже, подтверждает все шаги, которые я сделал.