Данная процедура поможет Вам перенести или скопировать SSL сертификат, установленный на сервере с IIS, на сервер с Apache.
Шаг 1: Экспорт IIS сертификата в .PFX файл
- Запускаем mmc.exe
- Заходим в меню ‘Console’ и нажимаем ‘Add/Remove Snap-in’.
- Нажимаем кнопку ‘Add’, выбираем ‘certificates’ и нажимаем ‘Add’.
- Выбираем ‘Computer Account’ и нажимаем ‘Next’.
- Выбираем ‘Local Computer’ и нажимаем ‘OK’.
- Нажимаем ‘Close’ и затем ‘OK’.
- Разворачиваем меню ‘Certificates’ и нажимаем на папку ‘Personal’.
- Делаем правый клик на сертификате который будем экспортировать и выбираем ‘All tasks’ -> ‘Export’.
- Появляется мастер. Убеждаемся что стоит галочка добавления приватного ключа и продолжаем выполнять инструкции мастера пока не будет сгенерирован .PFX файл.
Шаг 2: Извлекаем приватный ключ
Экспортируем приватный ключ из .PFX файла.
$ openssl pkcs12 -in filename.pfx -nocerts -out key.pem
Шаг 3: Извлекаем сертификат
Экспортируем сертификат из .PFX файла.
$ openssl pkcs12 -in filename.pfx -clcerts -nokeys -out cert.pem
Шаг 4: Удаляем секретную фразу
Следующая команда удалит пароль из приватного ключа, чтобы Apache не запрашивал его во время старта.
$ openssl rsa -in key.pem -out server.key
Дополнительные Шаги
Убедитесь в том, что следующие строки присутствуют в конфигурационном файле виртуального хоста и они соответствующие:
SSLEngine on SSLOptions +StrictRequire SSLCertificateFile /path/to/certificate/cert.pem SSLCertificateKeyFile /patch/to/key/server.key
Не забудьте в конце перезапустить Apache.