четверг, 21 ноября 2013 г.

Как из явавского хранилища ключей получить файлы сертификата и ключа для curl

Для начала нам нужно перефести формат ключей из jks в pkcs12. Также если у нас в хранилище несколько ключей нужно указать алис ключа, который и будет сохранен в другом формате
keytool -importkeystore -srckeystore jvmkeystore.jks \
   -destkeystore somesite_key_and_cert.p12 \
   -srcalias keycert_alias_in_keystore \
   -srcstoretype jks \
   -deststoretype pkcs12

Теперь нам нужно получить отдельно файл ключа и файл сертификата чтобы передать их в curl
openssl pkcs12 \
  -in somesite_key_and_cert.p12 \
  -out somesite_key.pem -nocerts
openssl pkcs12 \
  -in somesite_key_and_cert.p12 \
  -out somesite_cert.pem -clcerts -nokeys

Теперь обращаемся по curl к интересуещему нас сайту по SSL(https)
curl -vvv --cert somesite_cert.pem \
  --key somesite_key.pem \
  "https://somesite.com:443/intr/source"



Наверно бывают случаи когда нам нужно, чтобы ключ и сертификат были в отдельних файлах, но если нам это не нужно мы можем сделать все за меньшее количество шагов и введенного текста:
openssl pkcs12 \
  -in somesite_key_and_cert.p12 \
  -out somesite_key_and_cert.pem -clcerts
И обращение:
curl -vvv --cert somesite_cert.pem \
  "https://somesite.com:443/intr/source"

Комментариев нет:

Отправить комментарий