고객사 ssl 인증서 교체 작업 도중 httpd.service 가 실행되지 않는 이슈가 발생되었다.
[root@localhost ~]# systemctl restart httpd
job for httpd.service failed. see “systemctl status httpd.service” and “journalctl -xe” for details.
해당 스크린샷에서 systemctl restart httpd 명령어를 실행했을 때 HTTPD 서비스가 실패한 것을 확인할 수 있습니다.
문제의 원인을 파악하기 위해 journalctl -xe 명령어를 사용하여 로그를 확인하라고 안내하고 있습니다.
apachectl 로는 실행이 잘 되고 있어서 문제가 되지 않았지만
찜찜하니 우선 해결시도
오류메시지 확인 결과 apachectl start 에는 아래와 같은 메시지가 나왔고
apachectl stop 을 한 이후에는 아래와 같은 메시지가 발생되었다.
Private key not found:
/etc/httpd/conf.d/ssl/newkey.pem 파일에서 개인 키를 찾지 못했다는 오류가 발생했습니다. 이 오류는 Apache 서버가 HTTPS로 실행되기 위해 필요한 SSL 개인 키 파일이 존재하지 않거나, 경로가 잘못되었음을 의미합니다.
암호화된 키 사용:
“Some of your key files are encrypted for security reasons.”라는 메시지가 보이는 것으로 보아, SSL 인증서 파일이 암호화되어 있어 Apache가 이를 해독하기 위한 패스프레이즈를 요구하고 있습니다.
확인해보니 /etc/httpd/conf.d/ssl/newkey.pem 경로의 해당 파일이 암호화 되어 있었고 암호화를 해제 하는 것이 우선 이었다.
root@localhost:/etc/apache2/ssl/ssl.key# openssl rsa -in newkey.pem -out newkey_nopass.pem
Enter pass phrase for key.pem.orig: [비밀번호 입력]
writing RSA key
root@localhost:/etc/apache2/ssl/ssl.key# [완료]
root@localhost:/etc/apache2/ssl/ssl.key# mv newkey_nopass.pem newkey.pem
root@localhost:/etc/apache2/ssl/ssl.key# apachectl stop
root@localhost:/etc/apache2/ssl/ssl.key# systemctl start httpd
root@localhost:/etc/apache2/ssl/ssl.key# apachectl
위 작업으로 처리 완료 되었고 apachectl 도 systemctl start httpd 도 모두 잘 되었다.
끝