Over the limit
SSL 인증서 오류 해결: OpenSSL로 인증서 체인 추출 및 적용 본문
SSL 인증서 오류 해결: OpenSSL로 인증서 체인 추출 및 적용
SSL 인증서 오류는 웹사이트의 보안 연결에 영향을 미치며, 특히 원본 서버와 엣지 서버 간의 HTTPS 연결이 제대로 이루어지지 않을 때 발생할 수 있다.
이를 해결하기 위해 OpenSSL을 사용하여 인증서 체인을 추출하여 필요한 서비스에 적용하자
1. 문제 상황
SSL 인증서 오류는 주로 아래의 이유로 발생함
- 인증서 체인이 불완전하거나 누락됨
- 엣지 서버가 원본 서버의 인증서를 검증하지 못함
- 루트 또는 중간 인증서가 올바르게 설정되지 않음
2. 사전 준비
Windows 환경에서 OpenSSL 설치
- OpenSSL은 기본적으로 Windows에 설치되어 있지 않으므로, 먼저 설치해야 함
- Shining Light Productions에서 "Win64 OpenSSL"을 다운로드하고 설치
- 설치 시 OpenSSL 실행 파일 경로를 PATH 환경 변수에 추가
3. 인증서 체인 추출 방법
1. 명령 프롬프트 실행
- Windows 키 + R을 누르고 cmd를 입력하여 명령 프롬프트를 실행
- OpenSSL이 설치된 디렉토리로 이동
- cd "C:\Program Files\OpenSSL-Win64\bin"
2. OpenSSL 명령어 실행
- 다음 명령어를 입력하여 원본 서버의 SSL 인증서 체인을 확인
echo | openssl s_client -showcerts -connect '원본 IP주소' : '포트번호'
3. 출력 결과 분석
- 명령어 실행 후 출력된 결과에서 인증서 체인을 확인
- -----BEGIN CERTIFICATE-----부터 -----END CERTIFICATE-----까지의 모든 내용을 복사
- 출력된 인증서는 최종 인증서(서버 인증서)와 중간 인증서로 구성됨 이 둘을 모두 복사해야 함
4. 인증서 체인 적용 방법
PEM 형식으로 저장
- 복사한 인증서 체인을 메모장 등 텍스트 편집기에 붙여넣고 파일 확장자를 .pem으로 저장 예:
- -----BEGIN CERTIFICATE----- ... 인증서 데이터 ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... 체인에 포함된 추가 인증서 ... -----END CERTIFICATE-----
주의사항
- SSL 인증서는 유효 기간이 있음 만료 전에 갱신해야 함
- 인증서 체인이 올바르지 않으면 HTTPS 연결이 실패할 수 있으므로 반드시 테스트를 수행해야 함
- OpenSSL로 출력된 인증서는 공개 키 정보만 포함하며, 비밀 키는 원본 서버에 보관되어야 함
'Security' 카테고리의 다른 글
CSR(Certificate Signing Request) 란? (0) | 2025.01.07 |
---|---|
[Security] Tampering 템퍼링이란 (0) | 2024.12.17 |