🚀 IT/✏️TIL

🛠️인증서 설치부터 만료일 확인, Apache 재기동까지 한눈에!

higyeong 2025. 4. 17. 15:20

오늘은 SSL 인증서 설치 실무에서 자주 마주치는 상황.

인증서 설치 후에는 반드시 확인해야 할 것들을 정리했다.

단순히 .pem 파일만 넣고 끝나는 게 아니라는 점, 직접 겪어보면 확실히 이해할 수 있다.


🔐 1. 인증서 설치할 때 꼭 확인해야 할 것들

SSL 인증서를 설치하면, 다음 항목들을 체크해야 한다:

  • 📂 인증서 파일이 정확한 경로에 존재하는가? (.pem, .crt 등)
  • ⚙️ Apache 설정파일에 해당 경로가 제대로 지정되었는가?
  • 🔁 설치 후 Apache 재기동을 했는가?

Apache 설정 예시 (보통 ssl.conf 또는 httpd-ssl.conf 안에 있음):

SSLCertificateFile /etc/pki/tls/certs/example.crt
SSLCertificateKeyFile /etc/pki/tls/private/example.key
SSLCertificateChainFile /etc/pki/tls/certs/ca-bundle.crt
 

해당 경로에 파일이 없으면 서버 재기동 시 오류가 납니다.


📅 2. 인증서 만료일 확인 방법 (openssl 사용)

✅ 파일 기반 확인

 
openssl x509 -in /경로/인증서.pem -noout -enddate

예시 출력 :

notAfter=Jun  3 12:00:00 2025 GMT
 
 

✅ 원격 인증서 확인 (서버에서 바로) - 많이 사용 🌟

echo | openssl s_client -connect example.com:443 2>/dev/null | openssl x509 -noout -enddate
 

해당 도메인에 적용된 인증서의 만료일을 직접 확인할 수 있다.


🔎 3. Apache 포트 상태 확인 - 왜 netstat -rn | grep httpd?

설정은 다 했는데 접속이 안 되는 경우, 포트가 제대로 열려 있는지 확인해야 한다.

netstat -rn | grep httpd
 

Apache 프로세스가 https (443) 포트를 LISTEN 중인지 확인 가능하며, 포트가 열려 있지 않다면 인증서나 설정 문제로 서비스가 기동되지 않았을 가능성이 큽니다.


🔄 4. Apache 재기동은 꼭 필요합니다!

인증서를 새로 넣거나 설정 파일을 수정한 경우에는 반드시 재기동이 필요하다. - root 로 실행해야함

sudo apachectl restart
 

재기동을 해야만 새로운 설정이나 인증서가 반영된다.

 

💡 apachectl이란?

  • Apache 서버를 제어하는 명령어
  • 내부적으로 httpd 명령어를 호출
  • 주요 명령어:
    • apachectl start : 시작
    • apachectl stop : 중지
    • apachectl restart : 재기동
    • apachectl configtest : 설정 문법 검사
apachectl configtest
 

설정파일을 저장한 뒤, 위 명령어로 문법 오류가 없는지 먼저 확인하고 재기동하는 걸 추천.


✅ 실무 QA 체크리스트


항목 확인
인증서 파일 경로에 위치했는가?
Apache 설정에서 해당 경로가 지정되었는가?
인증서 유효기간이 충분한가? (openssl)
HTTPS 포트가 Listen 상태인가? (netstat)
재기동 후 정상 기동되는가? (apachectl)

인증서 하나 바꾸는 것처럼 보여도, 실제로는 여러 조건이 유기적으로 맞아야 정상 작동합니다. 실무에서는 각 단계마다 꼼꼼한 체크가 필수입니다. 🧑‍💻