Страница 1 из 1

OpenSSL генерирует неверный сертификат

Добавлено: 2010-12-08 15:15:00
Raven_kg
Был у меня батник генерирующий клиентские сертификаты, жил под виндами у нашего менеджера - он занимается выдачей сертов. На днях мы было решено переселить менеджера под линукс, соответственно встал вопрос о конвертировании батника в шелл, что и было сделано спустя полдня мучений. Скопировал его в корень папки, запустил, серт сгенерировал. Но! Сертификат созданный шелл-скриптом не проходит проверку на сайте для которого он создавался - ошибка 42, недействительный сертификат.

Вот батник:

Код: Выделить всё

@echo off
if "%1" == "" goto error

del clients\%1.p12

echo "Generating public/private key"
openssl genrsa -des3 -out clients/%1.key -passout pass:temppass 1024

echo "Generating request"
openssl req -new -key clients/%1.key -subj "/O=site.kg/OU=Administration/CN=%1" -passin pass:temppass -out clients/%1.csr

echo "Generating certificate"
openssl x509 -req -in clients/%1.csr -out clients/%1.crt -sha1 -CA ca.crt -CAkey ca.key -CAcreateserial -days 3650

echo "Generating p12 file"
openssl pkcs12 -export -in clients/%1.crt -inkey clients/%1.key -name "Svyaznoy Ltd." -out clients/%1.p12 -passin pass:temppass

echo "Deleting temporary files"
del clients\%1.key
del clients\%1.csr
del clients\%1.crt

pause
goto end

:error
echo "Usage: createClientPair.bat <username>"

:end
Вот его шелл-реализация:

Код: Выделить всё

#!/bin/bash

SSL=/usr/local/bin/openssl

if [ "$1" = "" ]; then
	echo "Usage: createClientPair.bat <username>"
	exit 0
else

rm -f clients/$1.p12

echo "Generating public/private key"
$SSL genrsa -des3 -out clients/$1.key -passout pass:temppass 1024

echo "Generating request"
$SSL req -new -key clients/$1.key -subj "/O=site.kg/OU=Administration/CN=$1" -passin pass:temppass -out clients/$1.csr 

echo "Generating certificate"
$SSL x509 -req -in clients/$1.csr -out clients/$1.crt -sha1 -CA ./ca/ca.crt -CAkey ./ca/ca.key -CAcreateserial -days 3650 

echo "Generating p12 file"
$SSL pkcs12 -export -in clients/$1.crt -inkey clients/$1.key -name "Svyaznoy Ltd." -out clients/$1.p12 -passin pass:temppass

echo "Deleting temporary files"
rm -f clients/$1.key
rm -f clients/$1.csr
rm -f clients/$1.crt
fi
OpenSSL. По умолчанию у меня был установлен OpenSSL 1.0.0b, после фиаско с сертификатом установил 0.9.8m - результата не дало.

Буду рад любой подсказке, а то у меня уже идеи иссякли...

Re: OpenSSL генерирует неверный сертификат

Добавлено: 2010-12-08 15:27:31
Raven_kg
Извиняюсь за оверпостинг, не нашел кнопки редактирования.

Батник под виндой работает отлично. Версия openssl там 0.9.8k

Re: OpenSSL генерирует неверный сертификат

Добавлено: 2010-12-09 11:11:12
Raven_kg
Неужели никто не сталкивался с этим?