티스토리 뷰
개요
어제 저녁 예정된 특정 서비스 변경 작업을 준비하던 중,
인프라 구조 검토 과정에서 한 가지 고민이 생겼다.
기존에는 하나의 VIP에 여러 서비스가 묶여 있었는데,
이번 작업을 통해 이를 신규 VIP로 분리해야 하는 상황이었다.
문제는 분리하려는 신규 VIP 산하의 서비스들도 도메인이 모두 제각각 상이하다는 점이었다.
'IP는 하나인데, 서로 다른 도메인들의 SSL 인증서 처리를 어떻게 해야 하지?'
단일 VIP 환경에서 다중 도메인 인증서를 적용해야 할 때,
웹방화벽에 등록된 현황을 검토하며 알게 된 점들을 정리해 둔다.
현황
일단 신규 VIP에 애플리케이션들에 대한 정보를 매핑(비활성화 상태에서)해놓고,
기존 VIP에 멀티 도메인으로 등록되어 있는 인증서를 제거해야 했다.
멀티 도메인으로 등록이 되어 있다는 것은,
동일 VIP에 다른 도메인의 인증서를 추가 등록하여
상이한 도메인의 인증서를 웹방화벽이 연결해줄 수 있다는 것이다.
확인 내용
CN
먼저 인증서를 확인하면
주체(Subject, 필수 필드)에 co.kr로 끝나는 CN(Common Name)이 등록돼있다.
그럼 co.kr로 접근했을 때 웹방화벽이 이 인증서를 리턴한다.

openssl x509 -in cert.crt -noout -subject 명령어를 통해,
바로 CLI에서도 확인이 가능하다.
SAN
확장 필드 중 '주체 대체 이름'이라는 필드가 있다.
이것은 SAN(Subject Alternative Name)이라고 불리는 필드이고,
기본 CN뿐만 아닌 상이한 도메인도 이 인증서로 인증한다는 명시이다.
현황을 확인해보면 co.kr 를 비롯해, co.kr로 리다이렉트되기 위한 .kr, .net 도메인도 등록되어 있다.

CN vs SAN?
그리 어려운 고민은 아니긴 하지만.
CN과 SAN이 있다면 웹사이트에 Request를 던졌을 때
어떤 것을 우선으로 할지 궁금해졌다.
# https://datatracker.ietf.org/doc/html/rfc2818#section-3.1
If a subjectAltName extension of type dNSName is present, that MUST be used as the identity.
Otherwise, the (most specific) Common Name field in the Subject field of the certificate MUST be used.
위처럼 RFC 2818의 HTTP Over SSL 부분에서
Section 3.1. Server Identity를 보면 아래와 같이 명시된 부분이 있다.
1) SAN이 있는 경우는 이것이 서버의 identity로 사용되어야 하며,
2) SAN이 없다면 Subject 필드의 CN이 사용되어야 한다.
그럼 SAN 인증서만 쓰면 좋은 거 아닌가?
그렇다면 우리가 운영하는 서비스들을 SAN으로 싸그리 묶어서,
인증서 발급, 폐기, 갱신에 필요한 비용, 인력을 줄이면 안될까?
앞으로 인증서 유효기간도 짧아진다는데 말이다.
근데 그렇게 하면 치명적인 운영 리스크가 있다.
인증서에 문제라도 생기면 모든 서비스에 장애가 발생할 수 있고,
인증서와 개인키 유출 시 모든 서비스가 피해 영향 범위가 된다.
그리고 누구나 openssls_client-connect www.company.com:포트 와 같은 명령어로
인증서 내 포함된 전반적인 정보를 알 수 있기에,
내부 도메인과 외부 도메인을 SAN에 때려박고 운영하면 당연히 노출이 된다.
(그렇게 운영하는 인프라 담당자는 없을 거고 없어야 한다;;)
결론
이번 경험을 통해 크게 뭔가를 배울 정도는 아니었지만,
.kr와 .net에 대한 인증서도 별도로 발급 받아서 등록해줘야 하나? 라는 궁금증은 잘 해소됐던 것 같다.
웹방화벽의 기능뿐 아니라 X509 인증서 자체로도 도메인 정보를 여러 개 명시해줄 수 있구나.
사실 이 내용에 대해 엔지니어분에게 물어보고 작업하라는 지시를 받았었는데,
메일을 발송하기 직전에 직접 인증서를 확인해본 건 잘한 것 같다.
'보안운영 > 보안솔루션 운영 이야기' 카테고리의 다른 글
| [WAF] 펌웨어 업그레이드 이후 장애 대응기 - (1) 업그레이드를 고려하게 된 계기 (0) | 2026.03.12 |
|---|---|
| [WAF] 카카오톡 링크 썸네일 차단 건 해결하기 (카카오톡 스크랩 봇) (0) | 2025.12.30 |
| [WAF] Spring Boot Actuator 모니터링 엔드포인트의 접근 탐지 (/actuator/health) (2) | 2025.02.17 |
- Thanks for comming.
- 오늘은
- 명이 방문했어요
- 어제는
- 명이 방문했어요
