SSL сертификат. Виды. Генерация. Бесплатная подпись.

Обновлено 15 янв. 2022 г.

SSL сертификат. Виды. Генерация. Бесплатная подпись.

Что такое SSL сертификат и как он работает

SSL сертификат состоит из 3 частей: закрытого ключа, открытого ключа и файла подписи. Первый нужен, чтобы зашифровать сообщения. Второй - чтобы расшифровать. То есть, то что зашифровано закрытым ключом, может быть расшифровано только отрытым, причём оба этих ключа генерируются в паре.

Файл подписи генерируются доверенным центром сертификации. Вы отправляете ему свой открытый ключ и проходите процедуру верификации. После этого вы получаете файл подписи, он же сертификат.

Далее всё происходит следующим образом:

  1. Пользователь заходит на страницу вашего сайта.
  2. Браузер инициирует установку защищённого соединения.
  3. Ваш сервер отправляет ему открытый ключ и сертификат.
  4. Благодаря сертификату браузер пользователя понимает, что открытый ключ принадлежит исключительно владельцу сайта.
  5. Ваш сервер зашифровывает все данные закрытым ключом и отправляет их пользователю.
  6. Браузер пользователя расшифровывает все данные открытым ключом и отображает их.

Виды сертификатов

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

Сертификаты бывают 3 уровней доверия: - Domain Validation. Центр верификации проверяет только то, что вы - владелец домена. - Organisation Validation. Центр верификации проверяет регистрационные данные вашей компании. - Extended Validation. Тоже что и Organisation Validation, только в браузере пользователя отображается название вашей компании.

Строка с названием компании у сертификата с Extended Validation вызывает больше доверия у пользователей.

Один сертификат может использоваться для одного или нескольких доменов. Количество и тип доменов зависит от типа сертификата: - Single Domain. Такой сертификат предоставляется только для одного домена. Наиболее популярный тип сертификатов. - Wildcard. Этот тип сертификата выпускается для основного домена и всех его субдоменов. Например, для доменов example.com, www.example.com, cabinet.example.com, ftp.example.com, imap.example.com можно выпустить 1 Wildcard сертификат. Этот тип сертификата используется на крупных проектах, состоящих из большого количества различных сервисов. Например, отдельные поддомены используются для почтовых серверов, служб технической поддержки, файлообменного сервера и т. д. - Multi Domain. Этот тип сертификата выпускается для нескольких разных доменов. Например example.com, second-example.com, cdn.second-example.com. Обычно заверение такого сертификата стоит дороже всего.

Как сгенерировать надёжный сертификат

Сертификат состоит из открытого и закрытого ключей. Закрытый ключ нельзя никому раскрывать. Поэтому лучше сгенерировать сертификат самостоятельно. Для этого можно воспользоваться любым веб-сервером на Linux. Откройте командную строку и выполните следующие шаги:

  1. Генерируем закрытый ключ. Значение 4096 - длина ключа. Чем оно больше, тем сложнее его взломать.
openssl genrsa -out server.key 4096
  1. Далее генерируем CSR файл. CSR файл содержит открытый ключ и данные о вашем домене и компании.
openssl req -new -key server.key -out server.csr
  1. Ответьте на вопросы:
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]: Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []:
Email Address []:
  1. Следующие вопросы надо пропустить нажатием клавиши Enter
Please enter the following "extra" attributes to be sent with your certificate request A challenge password []:
An optional company name []:

После этого вы получите 2 файла: server.key и server.csr.

Заверение открытого ключа удостоверяющим центром

Вам нужно отправить файл server.csr в центр сертификации для подписи. После прохождения процедуры верификации удостоверяющий центр выдаст вам новый файл. Этот файл и есть сертификат.

Бесплатное заверение сертификата

Компания https://letsencrypt.org может бесплатно заверить ваш сертификат. Есть 2 способа воспользоваться этой услугой: сервис https://www.sslforfree.com/ и программа Certbot. Программа Certbot заверит сертификат для вашего веб-сервера и автоматически продлит его действие.

Тестирование сертификата

Есть специальный сервис, анализирующий не только ваш сертификат, но и возможные уязвимости вашего веб-сервера связанные установкой защищённого соединения https://www.ssllabs.com/ssltest/.

Безопасное соединение между вашим сервером и пользователем является не только важным фактором доверия, но и обязательным юридическим требованием некоторых стран. От наличия зашифрованного соединения зависит от позиции в результатах выдачи поисковых систем. Уделите время этому вопросу, тем более что установка сертификата занимает 5 минут.

Мы используем cookie. Продолжая пользоваться сайтом, вы соглашаетесь на обработку персональных данных в соответствии с политикой конфиденциальности. Ладушки