Вече съм писал веднъж как се инсталират SSL сертификати под различни web сървъри.
В случай, че имате Apache 2 сървър и SSL частен ключ с парола при всяко стартиране на Apache ще излиза съобщение като това:
1 2 3 4 5 6 7 8 9 |
root@Server:/home/plamen# apachectl -k start Apache/2.2.15 mod_ssl/2.2.15 (Pass Phrase Dialog) Some of your private key files are encrypted for security reasons. In order to read them you have to provide the pass phrases. Server server.xyz:443 (RSA) Enter pass phrase: OK: Pass Phrase Dialog successful. |
Това е secure, но със сигурност inconvenient в повечето случаи. Има (поне) два варианта за решение:
1. Може да се махне паролата на сертификата като се използва информацията от bloga на Chris Schuld и OpenSSL
1 |
[root@w2 conf]# openssl rsa -in chrisschuld.com.key -out chrisschuld.com.key.nopass |
Не съм го пробвал, но би трябвало да работи според коментарите
2. Автоматично да се извлича паролата от stdin с допълнително приложение – информацията намерих във форума на LinuxQuestions
В httpd-ssl.conf се подменя начина да запитване за парола от bultin на изпълним файл
1 |
SSLPassPhraseDialog exec:/path/to/passphrase-file |
а самия изпълним файл е нещо от сорта на (Apache трябва да има права да изпълни файла):
1 2 |
#!/bin/sh echo "passphrase" |
И двата метода намаляват сигурността на частния ключ – в единия случай премахваме паролата от файла, в другия предоставяме паролата в относително plain text. Въпрос на избор 🙂