Чи існує спосіб використання HTTPS з Amazon CloudFront CDN та CNAME?


16

Ми використовуємо CloudNext CDN Amazon зі спеціальними CNAME, підвішеними під основним доменом (static1.example.com). Хоча ми можемо зламати цей рівномірний зовнішній вигляд і використовувати оригінальні URL-адреси Any123wigglyw00.cloudfront.net для використання HTTPS, чи є інший спосіб?

Чи пропонують Amazon або будь-який інший подібний провайдер хостинг HTTPS CDN?

Чи TLS та його вибіркове шифрування доступні для використання десь (SNI: Вказівка ​​імені сервера)?

Примітка для ніг: якщо припустити, що відповідь "ні", але просто в надії, що хтось знає.

РЕДАКТУВАННЯ : Тепер використовуйте https://developers.google.com/appengine/docs/ssl для сервісу CDN з підтримкою SSL.

Відповіді:


18

CloudFront із CNAMEs та HTTPS не підтримується, див. Першу примітку в документації CloudFront CNAME .

Я не думаю, що жоден із недорогих CDN не підтримує CNAME та HTTPS разом, щоб зробити це, вони повинні мати певний спосіб для завантаження незашифрованого сертифіката до їх CDN-мережі.


2
Або брокер таким же чином, як Google пропонує конфігурацію DNS з Google Apps та eNom / GoDaddy. В майбутньому є надія на en.wikipedia.org/wiki/Server_Name_Indication Мені було цікаво, чи ще хтось провайдер почав перевіряти цю здатність.
Metalshark

1
Примітка 2016 року: ця відповідь застаріла, див. Відповідь Джона Марка Мітчелла нижче.
Бенджамін

16

ВИМОГАЙТЕ ЗВЕРНЕННЯ ВИДАЛЕННЯ І ОНОВЛЕННЯ ВНУТРІ

Як я писав це (23 травня 2012 року), SSL підтримується через URL-адресу розповсюдження CloudFront тільки. Це означає, що ви не можете НАЗНАЧАЙТЕ SSL-URL. Конкретно, ви можете посилатись на предмет через SSL як:

https://[distribution].cloudfront.net/picture.jpg

але не:

https://cdn.mydomain.com/picture.jpg

де cdn.mydomain.com є CNAME для [розповсюдження] .cloudfront.net. В даний час ви отримаєте помилки SSL.

Це означає, що ви не можете використовувати своє доменне ім’я або SSL cert. Це може спричинити проблеми з політиками перехресних доменів у веб-переглядачі, а також додасть скасування складності в обслуговуванні сайту.

Мене запевнили співробітники AWS, що підтримка HTTPS для розповсюдження CNAME входить до їх списку функцій, але йому потрібна підтримка громади для визначення пріоритетності. Щоб допомогти в цьому, заповніть опитування CloudFront (див. Нижче) та відзначте цей запит на функцію. Співробітники AWS використовують дані, отримані з опитування, для планування та визначення пріоритетності дорожньої карти CloudFront.

Не забудьте зауважити, що HTTPS CNAME потрібна підтримка під час опитування CloudFront: http://aws.qualtrics.com/SE/?SID=SV_9yvAN5PK8abJIFK

EDIT: Помітив повідомлення від 11 червня 2012 року, що AWS оновила посилання на опитування:

Нове посилання для опитування: http://aws.qualtrics.com/SE/?SID=SV_e4eM1cRblPaccFS

Я думаю, що варто витратити час, щоб надати їм відгуки про те, щоб CNAME + SSL підтримувала функцію.

EDIT: Оголошено 11 червня 2013 року, спеціальні сертифікати SSL з виділеними IP-адресами тепер підтримуються CloudFront на AWS:

Дивіться про функцію оголошення в блозі AWS: http://aws.typepad.com/aws/2013/06/custom-ssl-domain-names-root-domain-hosting-for-amazon-cloudfront.html

Один із предметів розгляду, перш ніж рахуватись за проходження цього маршруту, вам слід побачити значну цінність відхилення від маршруту https: // [розповсюдження] .cloudfront.net, оскільки ціна становить 600 доларів США на місяць для розміщення спеціальних сертифікатів SSL.

EDIT: Оголошено 5 березня 2014 року, спеціальні сертифікати SSL, що використовують індикацію імені сервера (SNI) , зараз підтримуються CloudFront на AWS - НЕ ДОПОЛНУЄ ЗАРЯД:

Тепер AWS підтримує спеціальні SSL-серти через SNI. Це ВЕЛИЧЕЗНО, оскільки це відкриває можливість використання існуючої інфраструктури AWS (IP-адреси). Таким чином, AWS не стягує додаткову плату за цю послугу! Щоб дізнатися більше, прочитайте про це у публікації блогу AWS: http://aws.typepad.com/aws/2014/03/server-name-indication-sni-and-http-redirection-for-amazon-cloudfront.html

Хоча слід зазначити, що один із елементів, що вказує на ім'я сервера (SNI), має деякі недоліки, які слід враховувати, перш ніж покластися на нього. Зокрема, це не підтримується деякими старими браузерами. Якщо ви хочете зрозуміти це краще, дивіться: /programming/5154596/is-ssl-sni-actically-used-and-supported-in-browsers

EDIT: AWS оголосили 21 січня 2016 року, вони нададуть спеціальні SSL-сертифікати БЕЗКОШТОВНО!

Щоб прочитати про повне оголошення на сайті AWS: https://aws.amazon.com/blogs/aws/new-aws-certificate-manager-deploy-ssltls-based-apps-on-aws/

Amazon оголосила про нову послугу під назвою AWS Certificate Manager, що пропонує безкоштовні сертифікати SSL / TLS для ресурсів AWS.

Ці сертифікати зазвичай купуються у сторонніх постачальників сертифікатів, таких як Symantec, Comodo та RapidSSL і можуть коштувати від 50 до сотень доларів, залежно від рівня перевірки посвідчення особи.

Процес отримання нового сертифіката завжди був дещо безладним, вимагаючи створення запиту підпису сертифіката на захищеному сервері, відправлення цього запиту постачальнику сертифікатів, а потім встановлення сертифікату після його отримання. Оскільки Amazon керує всім процесом, все це проходить і сертифікати можна швидко видавати та надавати на ресурси AWS автоматично.

У сертифікатах є кілька обмежень. Amazon надає лише підтверджені домени сертифікати, просту перевірку, коли перевірка домену відбувається електронною поштою. Якщо ви хочете сертифікат розширеної валідації, ви можете дотримуватися їх поточних постачальників сертифікатів. Крім того, сертифікати не можна використовувати для підписання коду або шифрування електронною поштою.


3
developers.google.com/appengine/docs/ssl документує це. Після 2-х років спроб отримати AWS для підтримки цієї функції, запропонувавши голосування за неї, коли конкурент вже випустив цю функцію, занадто пізно.
Metalshark

cmon AWS, я згоден з @Metalshark та всіма учасниками цієї теми. Щойно я заповнив абсурдно довгу форму зворотного зв’язку AWS Cloudfront, щоб пропагувати CNAME-HTTPS, але якщо Google App Engine пропонує це питання, і це питання 2 роки, ви повинні зробити щось якнайшвидше !!!
Тім Петерсон

Я нічого не бачу на сторінці Google App Engine про CDN. AWS вже пропонує безкоштовну підтримку SSL для всього іншого, але підтримка CDN важче. Не цитуйте мене, але я підозрюю, що це тому, що тут задіяно кілька IP-адрес.
Руперт Раунслі

Дякую, що постійно оновлювали цю відповідь, Джон. Я щойно видалив купу застарілих коментарів, які були включені у відповідь. Напевно, було б простіше прочитати відповідь, якби ви просто видалили застарілу інформацію, а не використовували закреслення. Повна історія редагування вашої відповіді доступна, натиснувши посилання, яке відображається, коли ви востаннє редагували відповідь.
Стівен Остерміллер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.