Я создал файлы .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-----
Вы перепутали запросы сертификатов и сертификаты.
Вам необходимо отправить CSR в центр сертификации (CA).
Они будут затем превратите свой CSR (и свои деньги) в надлежащий CER.
(Вы можете изучить https://letsencrypt.org , если хотите пропустить этап «деньги».)
Примечание: сообщения об ошибках OpenSSL обычно ужасны.