Управление ключами и сертификатами осуществляется с помощью программы openssl. Чтобы сгенерировать новый самоподписанный сертификат выполните следующие команды:
1) Создаем ключ и запрос: openssl req -new > new.cert.csr (Или openssl req -new -nodes -keyout privkey.pem -out new.cert.csr) 2) openssl rsa -in privkey.pem -out new.cert.key (Или openssl rsa -in privkey.pem -des3 -out new.cert.key) Этот шаг опциональный. Если его пропустить, переименовав privkey.pem в new.cert.key, то шаг №4 не понадобится. По ходу Вам будет задан ряд вопросов по информации о содержимом сертификата, на вопрос "Common Name (eg, YOUR name) []:" введите имя сайта, для которого создается сертификат. 3) Теперь сами подписываем сертификат: openssl x509 -in new.cert.csr -out new.cert.crt -req -signkey new.cert.key -days 365 (Или openssl req -new -x509 -days 365 -key new.cert.key -out new.cert.crt) 4) Чтобы Apache не натыкался на пароль (после шага №2): cp new.cert.key new.cert.key~ openssl rsa -in new.cert.key~ -out new.cert.key Будет запрошен пароль для дешифровки. Для подключения сертификатов к Apache необходимо сделать следующее: <VirtualHost xxx.xxx.xxx.xxx:443> ... SSLEngine on SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL SSLCertificateFile /path/to/certs/new.cert.crt SSLCertificateKeyFile /path/to/certs/new.cert.key SSLCACertificateFile /usr/local/ssl/certs/new4/Корневой_сертификат_подписавшей_организации.crt # - если подписан не самостоятельно SSLOptions +StdEnvVars SetEnvIf User-Agent ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 ... </VirtualHost> |