Wildcard SSL-сертификат (Wildcard TLS-сертификат) — тип SSL/TLS-сертификата, в поле Subject Alternative Name (SAN) или Common Name (CN) которого указана маска *.example.com. Символ * (wildcard) заменяет один уровень имени — сертификат действует для всех поддоменов первого уровня, но не для самого домена (example.com) и не для поддоменов второго уровня (sub.sub.example.com).
Что покрывает Wildcard
www.example.com— даmail.example.com— даapi.example.com— даexample.com— нет (нужна отдельная запись в SAN или сертификат)sub.api.example.com— нет (два уровня вглубь)
Современные CA (Let's Encrypt, DigiCert и др.) выпускают сертификаты с несколькими SAN-записями: один сертификат может покрывать example.com, *.example.com и *.api.example.com одновременно.
Wildcard через Let's Encrypt
Let's Encrypt поддерживает Wildcard-сертификаты с марта 2018 года, но только через DNS-01 challenge — проверку через добавление TXT-записи в DNS. HTTP-01 challenge (через файл на сервере) для Wildcard не работает. Это требует автоматизации через ACME-клиент с поддержкой DNS API (Certbot + DNS-плагин, acme.sh). Сертификат Let's Encrypt действует 90 дней — автоматическое продление обязательно.
История
Wildcard-сертификаты существуют с начала 2000-х. RFC 2818 (2000) формализовал использование wildcard в Common Name HTTP-сертификатов. RFC 6125 (2011) уточнил правила матчинга wildcard в SAN. Долгое время Wildcard-сертификаты стоили $100-300/год у коммерческих CA (Comodo, DigiCert, GeoTrust). Поддержка Let's Encrypt в 2018 году сделала их бесплатными.
Wildcard vs Multi-Domain (SAN)
| Параметр | Wildcard (*.example.com) | Multi-Domain (SAN) |
|---|---|---|
| Покрытие | Все поддомены одного уровня | Конкретный список доменов |
| Новые поддомены | Покрываются автоматически | Нужен перевыпуск |
| Разные домены | Нет | Да (example.com + another.com) |
| Стоимость | Бесплатно (Let's Encrypt) | Бесплатно (Let's Encrypt) |
На что обращать внимание
Wildcard-сертификат — единственный секретный ключ для всех поддоменов. Компрометация ключа затрагивает все поддомены. Хранение приватного ключа требует повышенной защиты через certbot и ротацию. При использовании на нескольких серверах (CDN, балансировщик, почтовый сервер) ключ приходится копировать — это увеличивает поверхность атаки. Для высоконагруженных систем Multi-Domain сертификат с конкретными доменами безопаснее.
История Wildcard SSL
Wildcard SSL появился в конце 1990-х как решение для хостинг-провайдеров, предоставляющих сервисы на поддоменах (user.example.com). До 2018 года Let's Encrypt не поддерживал wildcard-сертификаты. В марте 2018 года поддержка wildcard через ACME v2 (RFC 8555) добавлена. Для выпуска wildcard через Let's Encrypt обязательна DNS-01 валидация (добавление TXT-записи в DNS).
Типичные ошибки
Первая ошибка — считать wildcard покрывающим все уровни: *.example.com не покрывает a.b.example.com (нужен отдельный wildcard *.b.example.com). Вторая ошибка — хранить один приватный ключ на всех серверах: при компрометации придётся перевыпускать сертификат для всех. Используйте ACME для автоматического перевыпуска.