Процедуры кодирования SSL .csr asn1: ASN1_CHECK_TLEN: неправильный тег

Я создал файлы .csr и .key в / etc / apache2 / ssl / domain / like

openssl req -new -newkey rsa:2048 -nodes -keyout domain.key -out domain.csr

, как сказал GoDaddy, а затем связал эти файлы с помощью директив apache :

<VirtualHost *:443>

SSLEngine on
SSLCertificateFile /etc/apache2/ssl/domain/domain.com.csr
SSLCertificateKeyFile /etc/apache2/ssl/domain/domain.com.key
DocumentRoot /clients/domain.com/www/
ScriptAlias /cgi-bin/ /clients/domain.com/cgi/
ServerAlias domain.com www.domain.com *.domain.com
ServerName www.domain.com
ErrorLog /clients/domain.com/logs/error_log
LogFormat "%h %l %u %t \"%r\" %>s %b" common
CustomLog "|/usr/bin/cronolog /clients/domain.com/logs/%Y/%m/%d/access_log" combined
AddType application/x-httpd-php .html
    <Directory />
            Options -Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order deny,allow
            Allow from all
    </Directory>

и когда я делаю

apachectl configtest

, он говорит, что синтаксис ОК, но запуск не работает с:

[error] Init: Unable to read server certificate from file /etc/apache2/ssl/domain/domain.csr
[error] SSL Library Error: 218529960 error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[error] SSL Library Error: 218595386 error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error

, который, кажется, предполагает либо недопустимую команду сертификата openssl, либо несоответствие в директиве apache2, я бы предположил, но я могу ' не вижу ничего очевидного. У меня есть еще один сертификат SSL GoDaddy, работающий в другом виртуальном домене в этом ящике. Я упустил что-то очевидное? Мой csr выглядит так:

-----BEGIN CERTIFICATE REQUEST-----
MIICiTCCAXECAQAwRDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMREwDwYDVQQH
EwhTYW5EaWVnbzEVMBMGA1UEChMMRmxpeXByb2R1Y3RzMIIBIjANBgkqhkiG9w0B
AQEFAAOCAQ8AMIIBCgKCAQEA0ZxcveaAefauZvSMiEAJZjhAKRqgym++IeIHEZ2D
PZ5vgp8vB4/UXUBtXQoEKrviCqJDkgzXUAviR3RLpbEMtS3RQdNjBnsVAe7GuAJ9
...
R5Bi9PaKwVOchbnKICZHWSiaDqIv3TOfT+KBcMDsnUzJbdhteUnIfk5VLdgJEuyS
IZiPnEHSh8aVhtfKzrnWYcY9ce3PEQZKfyF+o1lf7vEw80PTUfTD0PysOp20MmJK
5TaF8Zu0waKyilEhWyo7uKX8AsX/mjkl1QljPyHb+uGa7wIDAQABoAAwDQYJKoZI
hvcNAQEFBQADggEBAIVHReg+
-----END CERTIFICATE REQUEST-----
0
задан 16 January 2016 в 20:56
1 ответ

CSR! = CER

Вы перепутали запросы сертификатов и сертификаты.

Вам необходимо отправить CSR в центр сертификации (CA).

Они будут затем превратите свой CSR (и свои деньги) в надлежащий CER.

(Вы можете изучить https://letsencrypt.org , если хотите пропустить этап «деньги».)

Примечание: сообщения об ошибках OpenSSL обычно ужасны.

1
ответ дан 4 December 2019 в 16:43

Теги

Похожие вопросы