Нужен бесплатный SSL-сертификат? Легко / Хабр

Пришлось искать способ защитить домены в зонах RU, РФ…

Если вам нужен SSL-сертификат, но вы не являетесь специалистом в веб-технологиях, то эта заметка для вас. Описан простой способ выпуска базового SSL-сертификата Let’s Encrypt в ручном режиме, на локальном компьютере с Windows, с помощью приложения Certbot. Этот способ позволяет получить файлы SSL-сертификата в папку на своём локальном компьютере, после чего можно установить сертификат на свой хостинг.

Потребность в SSL-сертификатах возникла у меня в связи с тем, что срок старых истёк, а создать новые оказалось невозможным из-за возникших ограничений на доменные зоны RU и РФ. Если у вас такая же проблема или вам просто надоело искать веб-сервис для выпуска SSL-сертификатов, то эта заметка вам поможет.

Поскольку я пока не знаю наилучшего пути, то ниже просто опишу ту последовательность действий, которую сам выполнил и которая позволила мне создать SSL-сертификаты для десяти своих доменов (в том числе в зонах RU и РФ), а значит и вам этот способ может помочь.

Создание SSL-сертификата на локальном компьютере

  1. Установил на свой локальный компьютер (с операционной системой Windows 11) программу Certbot.

    Установочный файл Certbot взял с официального сайта здесь (см. ссылку на загрузку дистрибутива в п.3 на открывшейся по ссылке странице).

    Запустил скачанный установщик и в диалоге установки изменил адрес установки на: C:\Certbot

Работа с программой Certbot осуществляется через командную строку или PowerShell (я использовал PowerShell). На время выпуска сертификата, естественно, компьютер должен быть подключен к сети Интернет.

  1. Открыл PowerShell (х86) с правами администратора.

    Для этого нажал на кнопку «Пуск» и набирая первые буквы названия PowerShell увидел нужный пункт в результатах поиска, затем правым щелчком мыши по названию найденной программы открыл контекстное меню и в нём выбрал пункт «запуск от имени администратора».

  2. В окне PowerShell с помощью команд cd перешёл в каталог Certbot (вводил как показано на скриншоте и нажимал в конце строки клавишу Enter):

  1. Вставил из буфера обмена команду для создания сертификата (можете скопировать её из этой строки):

    certbot certonly --authenticator manual

    И нажал клавишу Enter.

    Перед нажатием Enter окно PowerShell выглядело с этой командой так:

  1. Система предложила ввести свой email (я ввёл), согласился с условиями (нажимая клавишу Y), в следующий раз программа на этом шаге уже не просила вводить email, а сразу предлагала ввести имена доменов (я вводил сразу по два – второй с www, через запятую):

  1. Программа попросила создать файл проверки прав на домен. При этом показано какую строку символов и в файл с каким именем поместить, по какому адресу на веб-сервере этот файл положить:

Поскольку я вводил по два доменных имени (обычное и с www), то после нажатия Enter программа точно так же просила создать ещё один проверочный файл.

С помощью Filezilla Client я создал нужные файлы по требуемому адресу, создав нужные директории. Выделенный текст из окна PowerShell можно копировать просто правым кликом, или привычным сочетанием клавиш Ctrl+C.

  1. Нажал клавишу Enter для создания сертификата, но только после того, как проверочные файлы на веб-сервере были созданы.

    Система сообщила об успешном создании файлов сертификата, которые я нашёл на своём локальном компьютере, в папке:

    C:\Certbot\archive\[имя домена]

    Если бы сертификат не был создан, то программа сообщила бы об ошибке.

Вот и всё, сертификаты готовы!

Для установки их на хостинг мне потребовались три файла из четырёх, из данной папки:

cert1.pem – сертификат
chain1.pem – промежуточный сертификат
privkey1.pem – приватный ключ

Эти файлы со своего компьютера не удаляйте, поскольку при следующем выпуске сертификатов (их приходится создавать заново каждые 90 дней) Certbot проверит их наличие и создаст рядом новые, со следующим порядковым номером. Для установки на хостинг нужно будет использовать, конечно, новые.

Ограничения

Через каждые 90 дней нужно перевыпускать сертификат заново.

P.S.:

Я ещё не озадачился тем, как автоматизировать описанный выше процесс (мне интересен перевыпуск сертификата именно на локальном компьютере с Windows). Было бы здорово, если бы знающий человек написал в комментариях как это сделать.

Бесплатный SSL — SSL.com

Базовый SSL — один из самых популярных сертификатов прямо сейчас! Попробуйте прямо сейчас, бесплатно в течение 90 дней!

Бесплатная пробная версия SSL — это домен, подтвержденный и полностью автоматизированный, что означает, что вы сможете начать защищать свою электронную торговлю, логины и многое другое всего за несколько минут. Бесплатная пробная версия SSL активирует замок браузера и https и убеждает ваших клиентов, что вы серьезно относитесь к безопасности.

Чтобы получить еще больше вариантов цифровых сертификатов от SSL. com, включая Wildcard, S/MIMEи Подписание кода EV, проверить наш выбор.

Надежная безопасность

Получение сертификата от SSL.com означает, что вы получаете защиту от доверенного центра сертификации. С помощью PKI технологии, SSL.com обеспечивает надежную и надежную безопасность с помощью любого из наших сертификатов SSL.

Вы также можете использовать утилиту Протокол ACME заказать бесплатный 90-дневный DV SSL /TLS сертификаты от SSL.com. Эти сертификаты включают один домен и, возможно, субдомен www. Бесплатные 90-дневные сертификаты DV выдаются автоматически, если на вашем SSL.com недостаточно свободных средств для покрытия годового сертификата, когда вы запрашиваете сертификат в ACME.

Совместимость браузера 99%

Совместимость всегда вызывает беспокойство при добавлении в технологический стек или покупке сертификата SSL. К счастью, сертификатам SSL.com доверяют более 99% веб-браузеров, в том числе: 

  • Google Chrome
  • Mozilla Firefox
  • Microsoft Edge и IE
  • Apple Safari
  • Opera

Неограниченные серверные лицензии, перевыпуск и пары ключей

Приобретая сертификат на SSL. com, у вас будет доступ к нашему расширенному пользовательскому порталу, на котором вы узнаете о ключевых элементах вашей покупки и управления сертификатами. Если у вас возникнет необходимость изменить ключ или перевыпустить сертификат, вы можете полностью инициировать процесс с портала.

Быстрая выдача SSL: доставка за считанные минуты для мгновенной защиты

Вероятно, вы не хотите ждать выдачи сертификата. Не волнуйтесь, после прохождения краткой проверки ваш сертификат будет выпущен в считанные минуты, а это значит, что вы недалеко от надежной защиты.

Попробуйте доступную безопасность от доверенного центра с сертификатами SSL

Не каждый день лучшее можно получить бесплатно, но сегодня можно. Бесплатные сертификаты SSL.com предлагают настоящую защиту от доверенного центра сертификации.

Улучшает SEO и рейтинг Google

Поисковая оптимизация (SEO) — это практика оптимизации вашей страницы с помощью контента, ориентированного на клиентов, а также с помощью внутренних технических усилий, чтобы повысить рейтинг в Google и других поисковых системах.

Высокий рейтинг жизненно важен для привлечения трафика на ваш сайт и увеличения конверсии и продаж.

Наличие SSL /TLS сертификат является важным элементом хорошей практики SEO. Если у вас его еще нет, вы, скорее всего, упускаете значительный трафик, который может помочь развитию вашего бизнеса. Сертификат от SSL.com может помочь решить эту проблему.

Полная совместимость со всеми версиями SSL и TLS

Хотя всегда рекомендуется использовать текущие версии SSL /TLS протокол, сертификаты SSL.com оснащены для работы со всеми версиями TLS или SSL.

Наличие SSL.com Site Seal поможет указать посетителям, что веб-сайт безопасен и заслуживает доверия. Повышение конверсии и удержания посетителей в клиентов.

Начало работы — Let’s Encrypt

Чтобы включить HTTPS на вашем веб-сайте, вам необходимо получить сертификат (тип файла) от центра сертификации (ЦС). Let’s Encrypt — это ЦС. Чтобы получить сертификат для домена вашего сайта от Let’s Encrypt, вы должны продемонстрировать контроль над доменом.

С Let’s Encrypt вы делаете это с помощью программного обеспечения, которое использует протокол ACME, который обычно работает на вашем веб-хостинге.

Чтобы выяснить, какой метод подойдет вам лучше всего, вам нужно знать, у вас есть доступ к оболочке (также известный как SSH-доступ) к вашему веб-хосту. Если вы полностью управляете своим веб-сайтом через панель управления, такая как cPanel, Plesk или WordPress, есть большая вероятность, что у вас нет оболочки доступ. Вы можете уточнить у своего хостинг-провайдера.

Мы рекомендуем большинству людей с доступом к командной оболочке использовать ACME-клиент Certbot. Он может автоматизировать выпуск и установку сертификатов без простоев. Он также имеет экспертные режимы для людей, которые не хотят автоконфигурации. Его легко использовать, работает на многих операционных системах и имеет отличную документацию. Посетить Сайт Certbot для получения индивидуальных инструкций для вашей операционной системы и веб-сервера.

Если Certbot не соответствует вашим потребностям или вы хотите попробовать что-то еще, есть многие другие клиенты ACME на выбор. После того, как вы выбрали клиент ACME программное обеспечение, см. документацию для этого клиента, чтобы продолжить.

Если вы экспериментируете с разными клиентами ACME, используйте наш промежуточная среда, чтобы избежать попадания лимиты скорости.

Лучший способ использовать Let’s Encrypt без доступа к оболочке — использовать встроенную поддержку от вашего хостинг-провайдера. Если ваш хостинг-провайдер предлагает Let’s Encrypt поддержку, они могут запросить бесплатный сертификат от вашего имени, установить его и поддерживать его в актуальном состоянии автоматически. Для некоторых хостинг-провайдеров это параметр конфигурации, который необходимо включить. Другие провайдеры автоматически запрашивать и устанавливать сертификаты для всех своих клиентов.

Проверьте наш список хостинг-провайдеров чтобы увидеть, если ваш на нем. Если это так, следуйте их документации, чтобы настроить Давайте зашифруем сертификат.

Если ваш хостинг-провайдер не поддерживает Let’s Encrypt, вы можете связаться с ним, чтобы запросить поддержку. Мы делаем все возможное, чтобы добавить Let’s Encrypt было очень просто поддержку, и провайдеры часто рады услышать предложения от клиентов!

Если ваш хостинг-провайдер не хочет интегрировать Let’s Encrypt, но поддержка загрузки пользовательских сертификатов, вы можете установить Certbot самостоятельно компьютер и использовать его в ручном режиме. В ручном режиме вы загружаете определенный файл на свой веб-сайт, чтобы подтвердить свою контроль. Затем Certbot получит сертификат, который вы можете загрузить на свой хостинг-провайдер. Мы не рекомендуем этот вариант, поскольку он занимает много времени. и вам нужно будет повторять его несколько раз в год в качестве сертификата истекает. Для большинства людей лучше запросить поддержку Let’s Encrypt у вашего хостинг-провайдера, или сменить провайдера, если они не планируют это реализовывать.

Если у вас есть вопросы о выборе клиента ACME, использовании определенного клиента или о чем-то еще, связанном с Let’s Encrypt, посетите наши полезные форумы сообщества.

Новая жизнь списков отзыва сертификатов

В этом месяце Let’s Encrypt запускает новую инфраструктуру для поддержки отзыва сертификатов через списки отзыва сертификатов. Несмотря на то, что уже более десяти лет он в значительной степени вытесняется протоколом статуса онлайн-сертификата, списки отзыва сертификатов обретают новую жизнь с последними обновлениями браузера. Собирая и обобщая CRL для своих пользователей, браузеры делают надежным отзыв сертификатов реальностью, повышая как безопасность, так и конфиденциальность в Интернете. Давайте поговорим о том, что именно делает эта новая инфраструктура и почему это важно.

Когда сертификат становится ненадежным (например, из-за того, что его закрытый ключ был скомпрометирован), этот сертификат должен быть отозван, а эта информация опубликована, чтобы никто не полагался на нее в будущем. Однако в мире сетевой инфраструктуры открытых ключей (Web PKI) существует известная поговорка о том, что отзыв не работает. За всю историю Web PKI существовало два основных механизма для объявления о том, что сертификату TLS/SSL больше нельзя доверять: списки отзыва сертификатов (CRL) и онлайн-протокол статуса сертификата (OCSP).

К сожалению, у обоих есть существенные недостатки.

CRL

— это, по сути, просто списки всех отозванных сертификатов, выпущенных данным центром сертификации (CA). Это означает, что они часто бывают очень большими — размером с целый фильм. Для вашего браузера неэффективно загружать гигантский список отозванных сертификатов только для того, чтобы проверить, не отозван ли единственный сертификат для сайта, который вы сейчас посещаете. Эти медленные загрузки и проверки замедляли загрузку веб-страниц, поэтому в качестве альтернативы был разработан OCSP.

OCSP — это что-то вроде «а что, если бы для каждого отдельного сертификата был отдельный CRL»: когда вы хотите проверить, был ли отозван данный сертификат, ваш браузер может проверить статус только этого одного сертификата, связавшись со службой CA OCSP. . Но поскольку инфраструктура OCSP должна работать постоянно и может страдать от простоев, как и любой другой веб-сервис, большинство браузеров рассматривают полное отсутствие ответа как эквивалент получения ответа «не отозван». Это означает, что злоумышленники могут помешать вам обнаружить, что сертификат был отозван, просто заблокировав все ваши запросы на информацию OCSP. Чтобы снизить нагрузку на службы OCSP ЦС, ответы OCSP действительны и могут кэшироваться примерно на неделю. Но это означает, что клиенты не очень часто получают обновления и часто продолжают доверять сертификатам в течение недели после их отзыва. И, возможно, хуже всего: поскольку ваш браузер делает запрос OCSP для каждого веб-сайта, который вы посещаете, злонамеренный (или юридически вынужденный) ЦС может отслеживать ваше поведение в Интернете, отслеживая, для каких сайтов вы запрашиваете OCSP.

Таким образом, оба существующих решения на самом деле не работают: CRL настолько неэффективны, что большинство браузеров их не проверяют, а OCSP настолько ненадежен, что большинство браузеров его не проверяют. Нам нужно что-то получше.

Одним из возможных решений, которое в последнее время набирает обороты, является идея проприетарных списков отзыва сертификатов для конкретных браузеров. Хотя разные браузеры реализуют это по-разному (например, Mozilla называет их CRLite, а Chrome — CRLSets), основная идея одна и та же.

Вместо того, чтобы браузер каждого пользователя загружал большие CRL, когда они хотят проверить отзыв, браузер поставщик загружает CRL централизованно. Они преобразуют CRL в меньший формат, такой как фильтр Блума, а затем передают новый сжатый объект во все установленные экземпляры браузера, используя ранее существовавшие механизмы быстрого обновления. Firefox, например, отправляет обновления каждые 6 часов.

Это означает, что браузеры могут заранее загружать списки отзыва, обеспечивая быструю загрузку страниц и устраняя самые серьезные проблемы обычных CRL. Он поддерживает локальные проверки отзыва, а принудительные обновления могут вступить в силу немедленно, не дожидаясь истечения срока действия кэша OCSP, который может длиться несколько дней, что предотвращает все самые серьезные проблемы с OCSP.

Благодаря обещанию этих сводных CRL для браузера корневые программы Apple и Mozilla требуют, чтобы все центры сертификации начали выдавать CRL до 1 октября 2022 года. В частности, они требуют, чтобы центры сертификации начали выдавать один или несколько CRL, которые вместе охватывают все сертификаты, выданные этим ЦС, и чтобы список URL-адресов, указывающих на эти CRL, был раскрыт в Общей базе данных ЦС (CCADB). Это позволит Safari и Firefox переключиться на использование сводного CRL браузера для проверки отзыва.

Когда была основана компания Let’s Encrypt, мы приняли четкое решение поддерживать только OCSP и вообще не создавать CRL. Это было связано с тем, что требования корневой программы в то время требовали только OCSP, а поддержка обоих механизмов отзыва увеличила бы количество мест, где ошибка могла привести к инциденту соответствия.

Когда мы приступили к разработке инфраструктуры отзыва сертификатов, мы знали, что нам необходимо масштабировать ее, и сделать это таким образом, чтобы отразить наш акцент на эффективности и простоте. За последние несколько месяцев мы разработали несколько новых элементов инфраструктуры, позволяющих нам публиковать CRL в соответствии с будущими требованиями. Каждый компонент легкий, предназначен для выполнения одной задачи и делает ее хорошо, и его можно масштабировать намного выше наших текущих потребностей.

Let’s Encrypt в настоящее время имеет более 200 миллионов активных сертификатов в любой день. Если бы у нас был инцидент, когда нам нужно было отозвать каждый из этих сертификатов одновременно, результирующий список отзыва сертификатов превышал бы 8 гигабайт. Чтобы сделать вещи менее громоздкими, мы разделим наши CRL на 128 сегментов, каждый из которых в худшем случае будет иметь максимальный размер 70 мегабайт. Мы используем тщательно продуманную математику, чтобы гарантировать, что — пока количество сегментов не изменится — все сертификаты останутся в своих сегментах при перевыпуске CRL, чтобы каждый сегмент можно было рассматривать как мини-CRL. с постоянным размахом.

В соответствии с теми же рекомендациями, которым мы следуем при выпуске сертификатов, все наши CRL будут проверены на соответствие RFC 5280 и базовым требованиям, прежде чем они будут подписаны нашими промежуточными звеньями. Хотя популярная библиотека zlint еще не поддерживает linting CRL, мы написали собственную коллекцию проверок и надеемся в будущем добавить их в zlint. Эти проверки помогут предотвратить инциденты с соблюдением требований и обеспечат беспрепятственный цикл выдачи и продления.

В рамках разработки этих новых возможностей мы также внесли несколько улучшений в реализацию генерации и анализа CRL в стандартной библиотеке Go. Мы с нетерпением ждем возможности внести больше улучшений, поскольку в будущем мы и остальная часть сообщества Go будем чаще работать с CRL.

Хотя мы будем создавать списки отзыва сертификатов, охватывающие все выдаваемые нами сертификаты, мы не будем включать эти URL-адреса в расширение точки распространения списков отзыва сертификатов для наших сертификатов. На данный момент, как того требуют базовые требования, наши сертификаты будут по-прежнему включать URL-адрес OCSP, который может использоваться любым пользователем для получения информации об отзыве для каждого сертификата. Наши новые URL-адреса CRL будут раскрыты только в CCADB, чтобы корневые программы Apple и Mozilla могли использовать их, не подвергая их потенциально большому трафику загрузки из остальной части Интернета в целом.

Еще предстоит пройти долгий путь, прежде чем аннулирование в Web PKI будет действительно исправлено. Проблемы конфиденциальности, связанные с OCSP, будут смягчены только после того, как все клиенты перестанут полагаться на него, и нам все еще нужно разработать хорошие способы надежной проверки информации об отзыве для небраузерных клиентов.

Мы с нетерпением ждем возможности продолжить работу с остальным сообществом Web PKI, чтобы сделать проверку отзыва конфиденциальной, надежной и эффективной для всех.

Если вам нравится наша работа по разработке более надежных и конфиденциальных механизмов отзыва, вы можете поддержать нас пожертвованием или призвать свою компанию или организацию спонсировать нашу работу. Поскольку это некоммерческий проект, мы на 100 % финансируемся за счет взносов нашего сообщества и сторонников, и мы рассчитываем на вашу поддержку.