ssl ca cert что это

Цифровые SSL сертификаты. Разновидности, как выбрать?

Существует достаточно много цифровых сертификатов, каждый из которых служит для своих целей. Самые распространенный тип сертификатов это естественно SSL сертификаты, которые также имеют несколько подвидов. Также существуют Code Signing сертификаты, Website Anti Malware Scanner сертификаты и Unified Communications сертификаты.

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

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

Начнем с самых распространенных SSL сертификатов.

SSL сертификаты самый распространенный на данный момент тип сертификатов в Интернет. Чаще всего они используются в интернет-магазинах, то есть на сайтах, где есть функция заказа и где клиент вводит свои персональные данные. Для того, чтобы эти данные в момент передачи из браузера на сервер невозможно было перехватить используется специальный протокол HTTPS, который шифрует все передаваемые данные.

Для того, чтобы активировать возможность работы протокола HTTPS как раз и нужны цифровые SSL сертификаты (также потребуется выделенный IP для конкретного сайта).

Что такое SSL сертификат?

SSL — это сокращение от Secure Socket Layer — это стандартная интернет технология безопасности, которая используется, чтобы обеспечить зашифрованное соединение между веб-сервером (сайтом) и браузером. SSL сертификат позволяет нам использовать https протокол. Это безопасное соединение, которое гарантирует, что информация которая передается от вашего браузера на сервер остается приватной; то есть защищенной от хакеров или любого, кто хочет украсть информацию. Один из самых распространенных примеров использования SSL — это защита клиента во время онлайн транзакции (покупки товара, оплаты).

Как получить SSL сертификат?

Самый простой и бесплатный способ — это использовать, так называемый, самоподписной сертификат (self-signed), который можно сгенерировать прямо на веб-сервере. К слову во всех самых популярных панелях управления хостингом (Cpanel, ISPmanager, Directadmin) эта возможность доступна по умолчанию, поэтому техническую сторону процесса создания сертификата мы сейчас опустим.

Плюс самоподписного сертификата — это его цена, точнее ее отсутствие, так как вы не платите ни копейки, за такой сертификат. А вот из минусов — это то, что на такой сертификат все браузеры будут выдавать ошибку, с предупреждением, что сайт не проверен.

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

Почему же браузеры выдают такое предупреждение для самоподписных сертификатов и как этого избежать? Чтобы ответить на этот вопрос потребуется немного рассказать про сами принципы работы SSL сертификатов.

По какому принципу работает SSL сертификат?

Итак для того, чтобы получить SSL сертификат самое первое, что нужно сделать, это сформировать специальный запрос на выпуск сертификата, так называемый (Certificate Signing Request). При формировании этого запроса вам будет задан ряд вопросов, для уточнения деталей о вашем домене и вашей компании. После завершения ваш веб сервер создаст 2 типа криптографических ключей — приватный ключ и публичный ключ.

Публичный ключ не является секретным и он помещается в запрос CSR.
Вот пример такого запроса:
——BEGIN CERTIFICATE REQUEST——
MIIC3zCCAccCAQAwgZkxCzAJBgNVBAYTAlVBMQ0wCwYDVQQIEwRLaWV2MQ0wCwYD
VQQHEwRLaWV2MRQwEgYDVQQKEwtIb3N0QXV0b21hdDEQMA4GA1UECxMHaG9zdGlu
ZzEmMCQGCSqGSIb3DQEJARYXc3VwcG9ydEBob3N0YXV0b21hdC5jb20xHDAaBgNV
BAMTE3d3dy5ob3N0YXV0b21hdC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
ggEKAoIBAQDTg7iUv/iX+SyZl74GcUVFHjFC5IqlTNEzWgLWrsSmxGxlGzXkUKid
NyXWa0O3ayJHOiv1BSX1l672tTqeHxhGuM6F7l5FTRWUyFHUxSU2Kmci6vR6fw5c
cgWOMMNdMg7V5bMOD8tfI74oBkVE7hV95Ds3c594u7kMLvHR+xui2S3z2JJQEwCh
mflIojGnSCO/iv64RL9vjZ5B4jAWJwrruIXO5ILTdis41Z1nNIx3bBqkif0H/G4e
O5WF6fFb7etm8M+d8ebkqEztRAVdhXvTGBZ4Mt2DOV/bV4e/ffmQJxffTYEqWg8w
b465GdAJcLhhiSaHgqRzrprKns7QSGjdAgMBAAGgADANBgkqhkiG9w0BAQUFAAOC
AQEAuCfJKehyjt7N1IDv44dd+V61MIqlDhna0LCXH1uT7R9H8mdlnuk8yevEcCRI
krnWAlA9GT3VkOY3Il4WTGg3wmtq6WAgLkVXQnhIpGDdYAflpAVeMKil8Z46BGIh
KQGngL2PjWdhMVLlRTB/01nVSKSEk2jhO8+7yLOY1MoGIvwAEF4CL1lAjov8U4XG
NfQldSWT1o8z9sDeGsGSf5DAXpcccx0gCyk90HFJxhbm/vTxjJgchUFro/0goVpB
credpKxtkwBMuCzeSyDnkQft0eLtZ9b9Q4+ZNDWsPPKxo/zWHm6Pa/4F4o2QKvPC
Px9x4fm+/xHqkhkR79LxJ+EHzQ==
——END CERTIFICATE REQUEST——

Данные которые содержатся в этом ключе можно легко проверить с помощью сервисов CSR Decoder. Как пример: CSR Decoder 1 или CSR Decoder 2. Второй сервис выдает больше информации о CSR и проверяет ее на валидность, поле Signature в результатах проверки.

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

CSR Information:
Common Name: tuthost.ua — доменное имя, которое мы защищаем таким сертификатом
Organization: TutHost — название организации, которой принадлежит домен
Organization Unit: Hosting department — подразделение организации
Locality: Kiev — город, где находится офис организации
State: Kiev — область или штат
Country: UA — двухбуквенный код, страны офиса.
Email: support@tuthost.com — контактный email технического администратора или службы поддержки

Важный момент — обратите внимание на поле Country — формат этого поля подразумевает только двухбуквенный код по стандарту ISO 3166-1, если вы не уверены в коде вашей страны, то проверить его можно например тут: Таблица ISO-3166-1. Я обращаю внимание на это поле, потому, что самая частая ошибка у наших клиентов при генерации запроса CSR — это неправильный код страны. И как следствие с такой CSR произвести выпуск сертификата невозможно.

После того как CSR сгенерирован вы можете приступать к оформлению заявки на выпуск сертификата. Во время этого процесса центр сертификации (CA — Certification Authority) произведет проверку введенных вами данных, и после успешной проверки выпустит SSL сертификат с вашими данными и даст возможность вам использовать HTTPS. Ваш сервер автоматически сопоставит выпущенный сертификат, со сгенерированным приватным ключем. Это означает, что вы готовы предоставлять зашифрованное и безопасное соединение между вашим сайтом и браузером клиентов.

Какие данные содержит в себе SSL сертификат?
Что такое центры сертификации (CA)?

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

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

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

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

Читайте также:  какие сорта арбузов выращивают в казахстане

Центров сертификации существует достаточно много, вот перечень самых популярных:
Comodo — работает с 1998 штабквартира в Jersey City, New Jersey, США.
Geotrust — основан в 2001, в 2006 продан Verisign, штабквартира Mountain View, California, США
Symantec — бывший Verisign в состав которого входит и Geotrust. Купил всех в 2010 году.
Thawte — основан в 1995, продан Verisign в 1999.
Trustwave — работает с 1995, штабквартира Chicago, Illinois, США.

Как видим самый крупный игрок на рынке SSL сертификатов это Symantec, который владеет тремя крупнейшими центрами сертификации — Thawte, Verisgin и Geotrust.

Есть ли разница в каком центре сертификации заказывать сертификат?

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

Важный момент — частенько у клиентов возникала ситуация, когда SSL сертификат на серверe установлен, но при заходе на сайт браузер все равно выдает ошибку. Такая ситуация может возникнуть или из-за отсутствия в файле ca-bundle.crt корневого сертификата центра выдавшего сертификат или из-за того, что корневой сертификат устарел. Корневые сертификаты также имеют свой срок действия (в браузерах они обновляются при обновлении браузера).

С июля 2010 года сертификационные центры перешли на использование ключей 2048bit RSA Keys, поэтому для корректной работы всех новых сертификатов необходимо устанавливать новые корневые сертификаты.
Если новые корневые сертификаты не установлены — это может вызвать проблемы с корректной установкой сертификата и распознаванием его некоторыми из браузеров.
Ссылки на странички центров сертификации, где можно скачать новые корневые сертификаты даны ниже.

Итак мы вплотную подошли к видам SSL сертификатов.

Какие виды SSL сертификатов существуют?

Между собой сертификаты отличаются свойствами и уровнем валидации.

Типы сертификатов по типу валидации

Сертификаты, подтверждающие только домен

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

Важный момент, что это письмо может быть отправлено только на так называемый approver email, который вы указываете при заказе сертификата. И к адресу approver email есть определенные требования, он должен быть либо в том же домене для которого вы заказываете сертификат, либо он должен быть указан в whois домена.
Если вы указываете email в том же домене, что и сертификат, то указывать любой emal тоже нельзя, он должен соответствовать одному из шаблонов:
admin@
administrator@
hostmaster@
postmaster@
webmaster@

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

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

Сертификаты с валидацией организации.

В таком сертификате уже будет указано название организации. Такой сертификат частное лицо получить не может. Срок выдачи таких сертификатов как правило от 3 до 10 рабочих дней, зависит от центра сертификации.

Процесс выдачи сертификатов OV

После получения запроса на выпуск сертификата с проверкой организации центр сертификации производит проверку, реально ли существует такая организация, как указано в CSR и принадлежит ли ей указанный домен.

Что проверяется в таких случаях?

У разных центров сертификации проверка несколько отличается, поэтому приведу общий список пунктов, которые могут быть проверены или запрошены:

Сертификаты с расширенной проверкой.

Это самые дорогие сертификаты и получить их сложнее всего. В таких сертификатах есть так называемый «green bar» — то есть при входе не сайт, где установлен такой сертификат в адресной строке браузера посетителя появится зеленая строка, в которой будет указано название организации, получившей сертификат.

Вот как это выглядит на сайте у Thawte.

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

Список того, что конкретно будут проверять такой же как и для сертификатов с проверкой организации.

EV сертификаты используются для всех типов бизнеса, в том числе для государственных и некоммерческих организаций. Для выпуска необходимо 10-14 дней.

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

Типы SSL сертификатов по своим свойствам.

Обычные SSL сертификаты

Тут все понятно, это сертификаты, которые выпускаются автоматически и подтверждают только домен. Подходят для всех сайтов.
Цена: от 20$ в год

SGC сертификаты
Wildcard сертификаты

Нужны в том случае, когда вам кроме основного домена нужно обеспечить шифрование также на всех поддоменах одного домена. Например: есть домен domain.com и вам нужно установить такой же сертификат на support.domain.com, forum.domain.com и billing.domain.com

Совет: посчитайте количество поддоменов, на которые нужен сертификат, иногда бывает выгодней купить отдельно несколько обычных сертификатов.
Цена: от 180$ в год. Как видите, если у вас меньше 9 поддоменов, то дешевле купить обычный сертификат, хотя в использовании будет удобней один wildcard.

SAN сертификаты
EV сертификаты
Сертификаты c поддержкой IDN
Как выбрать самый дешевый сертификат?

У Geotrust самые дешевые SAN сертификаты. Сертификаты с валидацией только сайта, а также wildcard выгоднее всего у RapidSSL. EV сертификаты самые дешевые также у Geotrust. SGC сертификаты есть только у Thawte и Verisign, но у Thawte дешевле.

Чем еще отличаются сертификаты между собой

Полезные утилиты:

В следующих частях постараюсь рассказать про остальные виды сертификатов.

Источник

Своё Certificate Authority — в 5 OpenSSL команд

Зачем это нужно?

Представим, у нас есть два сервера, работают они себе, и переодически они хотят, что-то друг у друга спросить по протоколу HTTP/HTTPS.

Протокол HTTP не безопасен и логично использовать протокол HTTPS для общения меду серверами.

Для организации такого общения нам нужно 2 SSL сертификата.

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

Создаем наше CA

Первая команда создаёт корневой ключ

Читайте также:  какие фольксвагены собирают в германии

Для меня ключ 2048 bit достаточен, если вам хочется, вы можете использовать ключ 4096 bit.

Вторая команда создаёт корневой сертификат.

Отвечать на вопросы тут можно как душе угодно.

10000 дней срок его годности, примерно столько живет сертификат, которым google требует подписывать андроид приложения для Google Play. Если вы паникер, подписывайте на год или два.

Все! Теперь мы можем создавать сертификаты для наших серверов и устанавливать корневой сертификат на наши клиентские машины.

Создаем сертификат подписаный нашим СА

Создаем запрос на сертификат.

Тут важно указать имя сервера: домен или IP (например домен server101.mycloud)

и подписать запрос на сертификат нашим корневым сертификатом.

Теперь на клиенты нужно установить корневой сертификат rootCA.crt

rootCA.crt — можно давать друзьям, устанавливать, копировать не сервера, выкладывать в публичный доступ
rootCA.key — следует держать в тайне

Установка корневого сертификата

Windows

IE, Chrome — используют репозиторий сертификатов Windows.

Мой путь к нему таков:

Chrome — Settings — Manage Certificates…
Выбрать таб Trusted Root Certificate Authorities — Import — rootCA.crt
перезапустить Chrome

FireFox на виндоус имеет свой репозиторий.

Java имеет свой репозиторий.

Mac OS X

Safari, FireFox, Chrome — используют системный репозиторий.

Запускаем KeyChain Access.
Идём в меню File — Import Items (login или System) — выбираем файл rootCA.crt.
Когда нас спросят, отвечаем — Always Trust.

Для вашего личного Safari достаточно выбрать login.

В Ubuntu
Программа сервера на Go

Программа сервера на Go myserver.go, которая использует наш подписаный сертификат.

запустив программу на сервере server101.mycloud, ваш броузер не будет ругаться на страничку https://server101.mycloud:8443/, и откроет её как родную, если перед этим вы установили rootCA.crt в систему как корневой сертификат.

Источник

ИТ База знаний

Полезно

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Навигация

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Руководство по OpenSSL: SSL-сертификаты, ключи и CSR

Онлайн курс по Linux

Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps

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

Про Linux за 5 минут

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

Как правило, сертификаты SSL используются на веб-страницах, которые передают и получают конфиденциальные данные конечного пользователя, такие как номер социального страхования, данные кредитной карты, домашний адрес или пароль. Онлайн формы оплаты являются хорошим примером и обычно шифруют вышеупомянутую деликатную информацию с использованием 128 или 256-битной технологии SSL.

Сертификаты SSL обеспечивают идентификацию удаленного компьютера, чаще всего сервера, но также подтверждают идентификацию вашего компьютера с удаленным компьютером для установления безопасного соединения. Обеспечение безопасности в Интернете всегда было улицей с двусторонним движением, и благодаря SSL-шифрованию сервер «пожимает руку» вашему персональному компьютеру, и обе стороны знают, с кем они общаются.

В чем разница между TLS и SSL?

Как я могу узнать, защищена ли веб-страница с помощью SSL?

Зачем мне нужен SSL-сертификат?

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

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

Где получить сертификат SSL?

Нередко популярные браузеры не доверяют всем сертификатам, выпущенным одним центром сертификации. Например, Google Chrome не доверяет корневым сертификатам Symantec, поскольку Symantec несколько раз нарушала отраслевые политики. Это означает, что все сертификаты, укоренившиеся в Symantec, стали недействительными независимо от даты их действия.

Типы SSL-сертификатов

Убедитесь, что вы выбрали центр сертификации, который поддерживает необходимый вам тип сертификата. Для вашего удобства ниже приведено описание каждого типа сертификата:

Уровни проверки SSL-сертификатов

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

Этот тип сертификата SSL идеально подходит для защиты блогов, приложений социальных сетей и личных веб-сайтов. Центр сертификации не гарантирует идентичность организации, и проверяется только владение доменом.

Центр сертификации проверяет право собственности на домен и проводит тщательное расследование организации, связанной с сертификатом EV. При рассмотрении расширенного запроса проверки соблюдаются строгие правила, и центр сертификации должен проверить следующее:

Как создать сертификат SSL

То, как сгенерировать запрос на подпись сертификата (CSR), зависит исключительно от платформы, которую вы используете, и конкретного выбранного вами инструмента.

Мы будем генерировать CSR с использованием OpenSSL.

Установка OpenSSL в Debian и Ubuntu

Сначала проверим, установлена ли у нас утилита OpenSSL при помощи команды:

Если пакет OpenSSL установлен, мы получим следующий результат:

Если вы не видите такого результата, выполните следующую команду для установки OpenSSL:

Установка OpenSSL в Red Hat и CentOS

Red Hat (версия 7.0 и более поздние) должна поставляться с предустановленной ограниченной версией OpenSSL. Он предлагает только ограниченную поддержку для IDEA, RC5 и MDC2, поэтому вы можете установить недостающие функции.

Чтобы проверить, установлен ли OpenSSL на сервере yum (например, Red Hat или CentOS), выполните следующую команду:

Эта команда должна вернуть следующий результат:

Если ваш формат вывода отличается, это означает, что OpenSSL не установлен на вашем сервере. Выполните следующую команду для установки OpenSSL:

Что такое запрос на подпись сертификата (CSR)?

Обычно вы генерируете пару CSR и ключ локально на сервере, где будет установлен сертификат SSL. Однако это не строгое правило. Вы можете сгенерировать пару CSR и ключ на одном сервере и установить сертификат на другом. Однако это усложняет ситуацию. Мы рассмотрим и этот сценарий.

SSL использует две длинные строки случайно сгенерированных чисел, которые известны как закрытые и открытые ключи. Открытый ключ доступен для публичного домена, так как он является частью вашего SSL-сертификата и сообщается вашему серверу.

Читайте также:  аниме да я паук и что кумоко девушка

Закрытый ключ должен соответствовать CSR, с которым он был создан, и, в конечном счете, он должен соответствовать сертификату, созданному из CSR. Если закрытый ключ отсутствует, это может означать, что сертификат SSL не установлен на том же сервере, который сгенерировал запрос на подпись сертификата.

CSR обычно содержит следующую информацию:

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

Как создать CSR

Целостность сертификата зависит от того, что только вы знаете закрытый ключ. Если вы когда-либо скомпрометированы или утеряны, как можно скорее введите новый сертификат с новым закрытым ключом. Большинство ЦС не взимают плату за эту услугу.

Большинство пар ключей состоят из 2048 битов. Хотя пары ключей длиной 4096 бит более безопасны, они замедляют SSL-рукопожатия и создают нагрузку на серверные процессоры. Из-за этого большинство сайтов по-прежнему используют 2048-битные пары ключей.

Вариант 1: создать CSR

Чтобы создать открытый и закрытый ключ с запросом на подпись сертификата (CSR), выполните следующую команду OpenSSL:

Что эта команда означает:

Далее ваша система должна запустить текстовую анкету для заполнения, которую мы описывали в таблице выше:

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

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

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

Вариант 2. Создание CSR для существующего закрытого ключа

Рекомендуется выдавать новый закрытый ключ всякий раз, когда вы генерируете CSR. Если по какой-либо причине вам необходимо сгенерировать запрос на подпись сертификата для существующего закрытого ключа, используйте следующую команду OpenSSL:

Вариант 3. Создание CSR для существующего сертификата и закрытого ключа

Вариант 4: Генерация самоподписанного(self-signed) сертификата

Самозаверяющий сертификат обычно используется для сред тестирования и разработки, а также в интрасети. Давайте создадим самозаверяющий сертификат, используя следующую команду OpenSSL:

Центры сертификации не проверяют самоподписанные сертификаты. Таким образом, они не так безопасны, как проверенные сертификаты. Если ЦС не подписал сертификат, каждый основной браузер отобразит сообщение об ошибке «Ненадежный сертификат», как показано на рисунке ниже.

Вариант 5: Генерация самоподписанного сертификата из существующего закрытого ключа и CSR

Если у вас уже есть CSR и закрытый ключ и вам нужно создать самозаверяющий сертификат, используйте следующую команду:

Как скопировать содержимое файла CSR

Откройте каталог, в котором находится ваш CSR-файл. Введите следующую команду:

Также рекомендуется обновить SSL-сертификат до истечения срока его действия. В противном случае потребуется покупать новый сертификат.

Как проверить свой CSR, SSL-сертификат и ключ

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

Эта команда проверит CSR и отобразит данные, указанные в запросе:

Следующая команда проверит ключ и его действительность:

SSL сертификат

Когда вам нужно проверить сертификат, дату его истечения и кто его подписал, используйте следующую команду OpenSSL:

Закрытый ключ

Закрытый ключ кодируется и создается в формате PEM на основе Base-64, который не читается человеком. Вы можете открыть его в любом текстовом редакторе, но все, что вы увидите, это несколько десятков строк, которые кажутся случайными символами, заключенными в открывающие и закрывающие заголовки. Ниже приведен пример закрытого ключа:

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

Проверьте, совпадают ли сертификат и закрытый ключ

Для проверки вам нужно вывести контрольные суммы md5 и сравнить их. Выполните следующую команду:

Устранение проблем с SSL

Система не извлекает закрытый ключ автоматически

Некоторые системы не автоматизируют процедуру извлечения закрытого ключа. Кроме того, если вам нужно установить существующий сертификат на другом сервере, вы, очевидно, не можете ожидать, что он получит закрытый ключ. Основная сложность здесь заключается в том, как найти точное местоположение ключа. Способ получения ключа зависит от используемой ОС сервера и от того, использовался ли интерфейс командной строки или панель управления веб-хостинга определенного типа для генерации CSR.

Как найти свой ранее установленный закрытый ключ?

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

Nginx

Вы сможете найти местоположение личного ключа вашего сервера в файле виртуального хоста вашего домена.

Apache

Выходные данные будут отображать каталог, который содержит закрытый ключ. Смотрите пример выходных данных ниже:

Windows (IIS)

На серверах, работающих под управлением Windows Internet Information Services, операционная система сохраняет закрытый ключ в скрытой папке, так же как любая обычная ОС Windows хранит важные системные данные.

Теперь у вас есть то, что вам нужно, если вы хотите сохранить резервную копию или установить сертификат на другом сервере Windows.

Как переместить SSL-сертификат с сервера Windows на сервер, отличный от Windows?

Команды OpenSSL для конвертации CSR

Файлы FKCS12 используются для экспорта или импорта сертификатов в Windows IIS.

Конвертировать PKCS12 в PEM CSR

Конвертировать PEM в DER

Конвертировать DER в PEM

Зашифровать незашифрованный закрытый ключ

Следующая команда OpenSSL возьмет незашифрованный закрытый ключ и зашифрует его с помощью определенной вами парольной фразы.

Определите ключевую фразу для шифрования закрытого ключа.

Расшифровать зашифрованный закрытый ключ

Следующая команда OpenSSL возьмет зашифрованный закрытый ключ и расшифрует его.

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

Проверить версию OpenSSL

Эта команда отображает версию OpenSSL, и ее параметры, с которыми она была скомпилирована:

Получим примерно такой вывод:

Заключение

Теперь вы знаете, как сгенерировать запрос на подпись сертификата с помощью OpenSSL, а также устранить наиболее распространенные ошибки.

Онлайн курс по Linux

Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps

Полезно?

Почему?

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

😍 Полезные IT – статьи от экспертов раз в неделю у вас в почте. Укажите свою дату рождения и мы не забудем поздравить вас.

Источник

Информ портал о технике и не только