* 테스트 환경 : Windows 32bit / Apache2.2 + SSL

* ssl 인증서는 cert.pem, key.pem, 체인키.pem 으로 httpd-ssl.conf 에 다음과 같이 설정

SSLCertificateFile "D:/Apache22/conf/ssl/cert.pem"
SSLCertificateKeyFile "D:/Apache22/conf/ssl/key.pem"
SSLCertificateChainFile "D:/Apache22/conf/ssl/Symantec-Chain_sha2.pem"

 

httpd.exe -t 으로 syntax 체크 하고나서 기동하였는데 아래와 같은 에러가 발생하며 기동이 되지 않음.

-. error.log 일부

[Thu Oct 20 15:23:40 2016] [error] Init: SSLPassPhraseDialog builtin is not supported on Win32 (key file D:/engn001/Apache22/conf/ssl/key.pem)

1) 첫번째 시도 : httpd-ssl.conf에서 SSLPassPhraseDialog builtin 설정을 주석처리하고 재기동

=> 동일 로그 발생

2) 두번째 시도 : 위 로그로 검색해보았더니, 아래와 같은 방법으로 해결했다는 사례 발견 (성공)

https://support.quovadisglobal.com/kb/a90/i-get-error-message-error-init-sslpassphrasedialog-builtin-is-not-supported-on-win32.aspx

-. 기존 key 파일 복사 후 아래 명령어로 새 키 생성

openssl rsa -in .key -out .key

-. 기존 key 파일명 : key.pem

※ 위 명령어 입력 후 인증서 암호를 입력, key2.pem 생성 확인

-. httpd-ssl.conf 에 새로 생성된 key2.pem 으로 변경 설정

SSLCertificateKeyFile "D:/Apache22/conf/ssl/key2.pem"

-. httpd.exe -t 로 syntax 체크 후 기동 : 정상 기동 확인 / 포트 리슨 확인

jei httpd 20161121 1

jei httpd 20161121 2

-. https 로 웹 접속 확인, 인증서 적용 확인

jei httpd 20161121 3

※ 관련 이슈 추가 링크 : 아래는 링크의 일부 내용입니다.

https://www.ssl247.com/kb/ssl-certificates/troubleshooting/apache/tn-5634-error-sslpassphrasedialog-not-supported-win32

Problem
Upon Apache startup with SSL, the log shows the following error:

"[error] Init: SSLPassPhraseDialog builtin is not supported on Win32."


Cause

The SSLPassPhraseDialog is a directive within the Apache httpd.conf or ssl.conf that is not supported by Windows

Resolution

1. Remove the encryption from the RSA private key (while preserving the original file).


2. Remark out - SSLPassPhraseDialog in the appropriate apache conf file with a # in front of the directive.

  • Make a copy of the private key and call it "server.key.org"
  • Use the OpenSSL command to remove the passphrase such as:
    openssl rsa -in server.key.org -out server.key; server.key will be your new private key with the passphrase removed.
  • Move this new key to the same path as where your original was kept. Verify that the directive called "SSLCertificateKeyFile" in your Apache config file points to the new private key.
  • Find the directive "SSLPassPhraseDialog" and put a # in front to comment out the line.
  • You will now be able to startup Apache with SSL on Windows.