Chcę utworzyć samopodpisany certyfikat dla witryny. Stary certyfikat wygasł kilka dni temu. W systemach jest więcej niż jeden NameVirtualHosts. Polecenia, których używam do utworzenia certyfikatu, pochodzą z jednej witryny z samouczkami i są to:
openssl genrsa -des3 -out server.key 1024
openssl req -new -key server.key -out server.csr
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Następnie w pliku ssl.conf podałem w sekcji VirtualHost wraz ze starymi ustawieniami dokonanymi przez innego administratora
SSLEngine on
SSLCertificateFile <full_path>/server.crt
SSLCertificateKeyFile <full_path>/server.key
Po uruchomieniu serwera otrzymuję następujące komunikaty w pliku dziennika i serwer nie uruchamia się.
W pliku dziennika błędów znajduje się komunikat
[Mon Jun 01 23:52:46 2009] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
W pliku ssl_error_log są wiadomości
[Mon Jun 01 23:52:46 2009] [error] Init: Private key not found
[Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218710120 error:0D094068:asn1 encoding routines:d2i_ASN1_SET:bad tag
[Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218529960 error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218595386 error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error
[Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218734605 error:0D09A00D:asn1 encoding routines:d2i_PrivateKey:ASN1 lib
Byłbym bardzo wdzięczny, gdyby ktoś potrafił wyjaśnić, jak to rozwiązać. Wypróbowałem już kilka innych witryn z samouczkami na temat certyfikatów SSL z podpisem własnym, ale żaden ze wspomnianych kroków nie działa.
źródło
-nodes
opcji szyfrowania klucza za pomocą Triple-DES. (Hasło klucza należy oczywiście podać przy każdym uruchomieniu serwera).req
Polecenie OpenSSL nie obsługuje generowania silniej zaszyfrowanych kluczy, ale może używać wcześniej wygenerowanych silnie zaszyfrowanych kluczy.Może się to wydawać nieco trywialne, ale sprawdź uprawnienia do pliku .key
źródło
Możesz użyć,
openssl req -newkey rsa:1024 -keyout privkey.pem
aby zaoszczędzić wygenerowany klucz SSL, na wypadek, gdyby generowanie klucza nie było w porządku.źródło