Получить общее имя (CN) из сертификата SSL?
У меня есть файл SSL CRT в формате PEM. Есть ли способ, которым я могу извлечь общее имя (CN) из сертификата из командной строки?
Если вы openssl установили, вы можете запустить:
Обратите внимание, что это направляет файл на стандартный ввод через < , а не использует его в качестве аргумента. Без egrep этого будет распечатан весь сертификат, но CN находится в Subject: поле рядом с верхом (будьте осторожны, есть также значение CN в Issuer: поле).
certtool является частью gnutls, если он не установлен, просто найдите его. GnuTLS немного лучше OpenSSL, IMO.
Я нашел приведенный выше ответ и нашел его очень полезным, но я также обнаружил, что certtool синтаксис команды (в Ubuntu Linux, сегодня) заметно отличался от описанного в goldilocks, как и вывод. Поэтому я подумал, что лучше дополнить этот превосходный ответ тем, что может быть «сегодняшней версией».
«i» Вариант (теперь?) Означает «импорт» в соответствии с man certtool , так что собственно команда , как представляется «d» , «дисплей» . Итак, эта команда:
(Расширение файла в моем случае просто .crt не .pem . это не имеет значения.)
. производит вывод, который в соответствующей части выглядит следующим образом:
Несомненно, ленок был прав: certtool выход гораздо проще проще работать, чем openssl в данном случае.
How to check certificate name and alias in keystore files?
I have a bunch of .keystore files and need to find one with specific CN and alias. Is there a way to do it with keytool, jarsigner or some other tool? I found a way to check if specific keystore was used to sign a specific apk, but I also need to get the alias and certificate name in each of the files.
12 Answers 12
You can run the following command to list the content of your keystore file (and alias name):
If you are looking for a specific alias (for example foo), you can also specify it in the command:
If the alias is not found, it will display an exception:
keytool error: java.lang.Exception: Alias does not exist
![]()
In order to get all the details I had to add the -v option to romaintaz answer:
Подготовка данных для заказа SSL
Перед заказом SSL-сертификата нужно создать адрес электронной почты для получения проверочного запроса от Удостоверяющего центра (УЦ). Адрес электронной почты должен принимать одно из следующих значений:
admin@[имя_домена]
administrator@[имя_домена]
hostmaster@[имя_домена]
postmaster@[имя_домена]
webmaster@[имя_домена]
Значение [имя_домена] — это домен, для которого заказывается сертификат. Оно также соответствует полю «Common Name» (CN), указанному в CSR, если запрос на получение сертификата вы генерируете самостоятельно на веб-сервере.
В случае, если сертификат заказывается для поддомена, в e-mail допускается использовать домен второго уровня. Например, при заказе сертификата для домена www.test.ru можно использовать любой из адресов: admin@www.test.ru или admin@test.ru.
Генерация запроса CSR на получение сертификата (для OV и EV сертификатов)
CSR (Certificate Signing Request) — это запрос на получение сертификата, который представляет собой текстовый файл, содержащий в закодированном виде информацию об администраторе домена и открытый ключ.
CSR вы можете сгенерировать одним из способов:
1. В процессе заказа SSL-сертификата — CSR генерируется автоматически и сразу доступен для скачивания на компьютер.
2. Самостоятельно на стороне вашего веб-сервера. В этом случае вам нужно вручную заполнить информацию для выпуска сертификата.
При генерации CSR на стороне сервера необходимо заполнить латинскими символами следующие поля:
- Имя сервера (Common Name) — полностью определенное доменное имя, например, «www.nic.ru». Если Вы генерируете CSR для wildcard сертификата, то в поле CN должна быть указана запись вида *.domain.com. Символ звездочки (*) позволяет использовать сертификат для любого количества поддоменов одного уровня на неограниченном количестве серверов. При этом будут покрываться только поддомены того уровня, на котором стоит символ *.
- Название страны (Country Name) — двухбуквенный код страны, для РФ — «RU»
- Область (State or Province Name) — регион, например, «Moscow»
- Город или населенный пункт (Locality Name)
- Название организации или ФИО физического лица (Organization Name)
Рекомендации по заполнению полей при генерации CSR:
- При заказе сертификата Thawte SSL123 или Geotrust Rapid Wildcard в поле Organization Name могут быть указаны данные Администратора домена из сервиса Whois, либо другого лица или компании, для которых выпускается сертификат.
- При заказе других сертификатов в поле Organization Name необходимо указать название организации, на которую выпускается сертификат, без кавычек на латинице соответственно Свидетельству о регистрации юридического лица.
Генерация запроса на получение сертификата для Microsoft IIS
При создании CSR для веб-сервера Microsoft IIS мы рекомендуем сделать это на самом веб-сервере, чтобы в дальнейшем избежать проблем с установкой SSL-сертификата.
CSR также можно сгенерировать вместе с закрытым ключом на стороне сервера, где будет устанавливаться сертификат.
What is Common Name (CN) in our SSL certificate?
![]()
In our CSR/certificate, the Common Name, also known as CN, represents the server name (FQDN¹) protected by the SSL certificate. Note that the certificate is valid only for the exact FQDN (mentioned as CN) indicated in our CSR/certificate. SSL certificates are specific to the Common Name that they have been issued for at the host level. The Common Name must be the same as the Web address we access when connecting to a secure site.
The Common Name field is often misinterpreted and filled out incorrectly with our organization’s actual name. Most web browsers display a warning message (“host name mismatch error”) when connecting to an address that does not match the common name in the certificate. The Common Name is technically represented by the commonName field in the X.509 certificate specification.
In the case of a single-name certificate, the Common Name consists of a single host name (e.g. example.com , www.example.com ), or a wildcard name in the case of a wildcard certificate (e.g. *.example.com ).
An SSL certificate activated with the CSR code generated for www.example.com will not cover security.example.com or any other subdomain of example.com. On the other hand, SSL activated with the CSR code generated for security.example.com will cover neither www.example.com nor example.com.
Common Name Format
The Common Name is not a URL. It doesn’t include any protocol (e.g. http:// or https://), port number, or pathname. For instance, https://example.com or example.com/path are incorrect. In both cases, the common name should be example.com .
Common Name is not mandatory
As far as X.509 is concerned, the Common Name is not mandatory.
Common Name vs. Subject Alternative Name
The Common Name can only contain up to one entry: either a wildcard or non-wildcard name. It’s not possible to specify a list of names covered by an SSL certificate in the common name field.
The Subject Alternative Name extension (also called Subject Alternate Name or SAN) was introduced to solve this limitation. The SAN allows the issuance of multi-name SSL certificates.