Чи потрібен мені SSL сертифікат для включення до списку попереднього завантаження HSTS?


9

Я хотів би подати свій особистий сайт у список попереднього завантаження HSTS Chrome .

На сайті там написано:

Для включення до списку попереднього завантаження HSTS ваш сайт повинен:

  • Майте дійсний сертифікат.
  • Перенаправляйте весь трафік HTTP на HTTPS - тобто використовуйте лише HTTPS.
  • Обслуговувати всі субдомени через HTTPS.
  • Подавайте заголовок HSTS на базовий домен:
    • Термін дії повинен бути не менше вісімнадцяти тижнів (10886400 секунд). Необхідно вказати маркер includeSubdomains. Необхідно вказати маркер попереднього завантаження. Якщо ви подаєте переспрямування, це перенаправлення повинно мати заголовок HSTS, а не сторінку, на яку він перенаправляє.

Чи означає це, що мій сертифікат повинен бути дійсним для всіх субдоменів, або лише те, що вони доступні / обслуговуються через HTTPS? (У мене є сертифікат на sub.example.com, але не корінь.)

Чи можна застосувати до списку попереднього завантаження HSTS з піддоменом, наприклад sub.example.com?

Відповіді:


5

Чи всі субдомени повинні використовувати HTTPS?

Технічно для включення тільки кореневий домен потрібно використовувати HTTPS, але як тільки ви потрапите, будь-які сайти під кореневим доменом повинні використовувати HTTPS, інакше підключення не вдасться, тому практично ви хочете, щоб усі піддомени використовували HTTPS.

Чи можна застосувати до списку попереднього завантаження HSTS з піддоменом, як sub.example.com?

Ні, якщо ви спробуєте протестувати субдомен, ви отримаєте таке попередження

example.jrtapsell.co.ukє субдоменом. Завантажте jrtapsell.co.ukзамість цього. (Зважаючи на розмір списку попереднього завантаження та поведінку файлів cookie в піддоменах, ми приймаємо лише автоматизовані подання списку попередніх завантажень цілих зареєстрованих доменів.)

Спосіб перевірки здійснюється через загальнодоступний список суфіксів, як цей: https://publicsuffix.org/list/

Чи потрібно використовувати сертифікат підстановки для подання списку попереднього завантаження?

Ні, якщо конфігурація SSL є дійсною, ви можете застосувати, тип сертифіката не має значення.


3

Хоча я не пробував це особисто, прочитавши стандарт HSTS ( RFC 6797 ), я тлумачу / розумію наступне:

  • Якщо батьківський домен сумісний з HSTS, він не повинен, але може застосовувати політику для піддоменів, які також сумісні з HSTS, видаючи директиву includeSubDomains у заголовку HTTP STS.

  • Якщо батьківський домен не відповідає HSTS, він не зупинить субдомен від сумісності HSTS. Піддомен повинен мати можливість повною мірою працювати з HSTS за умови, що він видає відповідні заголовки HTTP та працює належним чином за адресою https://subdomain.example.com/ .


3

Для включення до списку попереднього завантаження HSTS необов’язково мати сертифікат SSL для макіяжу.

Якщо у вас є один домен, ви можете використовувати будь-який сертифікований домен SSL- сертифікат для включення до списку попереднього завантаження HSTS, а не використовувати Wildcard SSL сертифікат.


1
Хоча я думаю, що це правда, чи є у вас посилання на це?
Ендрю Лотт

1

Необхідно включити всі субдомени як SSL, щоб потрапити до списку попереднього завантаження, який можна знайти тут https://hstspreload.appspot.com/

  1. Майте дійсний сертифікат.
  2. Перенаправляйте весь трафік HTTP на HTTPS - тобто використовуйте лише HTTPS.
  3. Обслуговувати всі субдомени через HTTPS.
  4. Подавайте заголовок HSTS на базовий домен:
    • Термін дії повинен бути не менше вісімнадцяти тижнів (10886400 секунд).
    • Необхідно вказати маркер includeSubdomains.
    • Необхідно вказати маркер попереднього завантаження.
    • Якщо ви подаєте переспрямування, це перенаправлення повинно мати заголовок HSTS, а не сторінку, на яку він перенаправляє.

Це означає, що вам потрібна підстановка? Ні. Ви можете отримати індивідуальні SSL-серти для кожного піддомену. Це, мабуть, найдешевший маршрут. Ви можете вибрати підстановку, але поки у вас є 5+ субдоменів, яких варто захистити, фінансово це не варто. У будь-якому випадку, усі субдомени повинні бути в режимі HTTPS, якщо ви хочете бути попередньо завантаженими.

Використовуючи цю думку, якщо ви використовуєте субдомен в якості кореня, вам доведеться таким же чином захищати піддомен субдомену :) Або звичайно, також назад, ви також не можете оголосити HSTS на суб, не захищаючи TLD корінь.


Тож, щоб було зрозуміло, я не міг надіслати sub.example.com, якщо example.com не підтвердив SSL.
Кевін Берк

@KevinBurke Правильна брота. Це як стосунки батька з дитиною, що вибухнуло з TLD. Я не впевнений, що для sub.sub.example потрібен буде TLD SSL (я ніколи не мав HSTS підрозділу на суб). Я припускаю, що це буде, оскільки його політика заснована на "root" доменних повноважень / сфери.
dhaupin

@KevinBurke Примітки: Також переконайтеся, що ваш кеш-пам'ять HSTS становить 180+ днів, щоб пройти Quelys / PCI, і що будь-який SSL, який ви придбаєте, є RSA2 (56). Якщо ви коли-небудь вирішите не завантажувати абонементи, встановіть кеш-пам'ять 0 на тиждень або 2, щоб очистити клієнтів, перш ніж видаляти прапор попереднього завантаження.
dhaupin
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.