[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: curl и самоподписанные сертификаты



On 16.12.2010 13:59, Ed wrote:
Victor Wagner wrote:
Другой вопрос, что самоподписанный сертификат, НЕ СОДЕРЖАЩИЙ расширения
basicConstraints считается сертификатом CA, а рассматриваемый сертификат
содержал это расширение со значеним CA:FALSE.

так что делать? ;)
можно как-то сказать curl'у - "этому сертификату я верю"?



надо что бы оба сертификата:
 curl-ca-bundle.crt
и вашего сайта, были подписанны одним ключом, umho.
А сами сертификаты имели отрибуты "использовать для клиента" "использовать для сервера".
Причем оба серта могут иметь оба атрибута и еще несколько.


По крайней мере у opnenvpn так.


----------------------------------------------------
Может пригодиться - из заметок:

Сертификат содержит публичный ключ, подписанный CA (или комплементарным секретным ключом), данные об организации, выдавшей сертификат и, в некоторых случаях, зашифрованный секретный ключ, а также отпечаток (хеш) публичного ключа.
x509 - стандарт определяющий общее содержание сертификатов
PKCS#10 (формат записи сертификата, в openssl по умолчанию )
PKCS#12 (или pfx)  - формат записи сертификата от m$.

DER - при использовании DER-формата убираются маркеры начала и конца сертификата, а его содержимое кодируется base64, поэтому в файле DER можно хранить только один сертификат, с другой стороны DER сертификаты поддерживаются M$ (стандартное расширение .cer). Может использоваться для запроса на серт. keytool -list -v -keystore keystore.jks -storepass changeit (посмотреть сертификаты в jks) openssl rsa -noout -text -in client01.key (посмотреть данные ключа) openssl req -noout -text -in client01.csr (посмотреть данные запроса на серт) openssl x509 -in file(ca).crt -text (посмотреть данные сертификата)
openssl pkcs12 -in file.p12 -info -nodes > file
openssl s_client -connect server:port -showcerts # Команда для того, чтобы вытащить из ssl-enabled сервиса серверный сертификат

openssl x509 -inform PEM -in cert.pem -outform DER -out cert.cer (конвертировать pem в der) openssl x509 -inform DER -in cert.cer -outform PEM -out cert.pem (конвертировать der в pem)
openssl pkcs8 - преобразование в pkcs8 и обратно

openssl pkcs12 -export -in client.pem -inkey client-key.pem -out client.p12 -name "Client certificate from our organization" (конвертировать pem в pkcs12)
openssl pkcs12 -in client.p12 -out client.pem (конвертировать pkcs12 в pem)

openssl genrsa -out ng_ca_key.pem -rand randfile -des3 4096 (создать приватный ключ) openssl req -new -x509 -key ca_key.pem -out ca_cert.pem -days 3650 ( -config cfg) (создать self-signed на основе приватного)

--
Sincerely,
	Nicholas


Reply to: