SSL 인증서 검사기
인증서 프로브
서버에서 직접 TLS 핸드셰이크를 시작하여 인증서를 읽고 프로토콜을 협상하며 남은 유효기간을 확인합니다.
온라인에서 SSL/TLS 인증서를 검사하세요. 도메인을 입력하면 인증서 유효성, 도메인 일치, 남은 일수, TLS 버전, 암호 스위트, SAN 목록을 확인할 수 있습니다. 백엔드에서 핸드셰이크를 시작하므로 CORS 문제가 없습니다.
서버에서 직접 TLS 핸드셰이크를 시작하여 인증서를 읽고 프로토콜을 협상하며 남은 유효기간을 확인합니다.
온라인에서 SSL/TLS 인증서를 검사하세요. 도메인을 입력하면 인증서 유효성, 도메인 일치, 남은 일수, TLS 버전, 암호 스위트, SAN 목록을 확인할 수 있습니다. 백엔드에서 핸드셰이크를 시작하므로 CORS 문제가 없습니다.
인증서 만료, 도메인 불일치, 구성 오류는 HTTPS 웹사이트에서 가장 흔한 장애 유형입니다. 인증서가 만료되면 브라우저에 '안전하지 않음' 경고가 표시되어 방문자가 이탈하고 Google 검색 순위에도 영향을 미칩니다. 정기적인 검사와 조기 갱신은 HTTPS가 정상적으로 작동하도록 하는 기본적인 운영 작업입니다.
SSL Labs는 심층적인 점수 매기기(프로토콜, 스위트, 취약점 등 포괄적인 테스트를 포함하며 약 2분 소요)를 수행하지만, 이 도구는 빠른 기본 검사(1-3초 내 결과 반환)를 수행합니다. 인증서 유효성, 유효기간, TLS 버전, 암호 스위트, SAN 목록 등 핵심 정보를 다루며 서비스 출시 전 빠른 검증, 갱신 확인, 문제 해결에 적합합니다.
가능한 원인: 1) 웹사이트가 해외 IP를 차단함(검사 서버는 해외에 있음); 2) 서버가 SNI로 구분하지만 구성이 불완전함; 3) 기업 인트라넷 자체 서명 인증서를 사용함; 4) 방화벽이 검사 노드를 차단함. 검사 실패가 인증서에 문제가 있음을 의미하지는 않으며 구체적인 오류 메시지를 바탕으로 판단해야 합니다.
TLS 1.3(2018년, RFC 8446)은 최신 버전으로, 핸드셰이크 속도가 TLS 1.2의 2-RTT에서 1-RTT, 심지어 0-RTT로 향상되었으며 RSA 키 교환, RC4, SHA-1 등 안전하지 않은 알고리즘을 제거하고 전방 안전성(Forward Secrecy)을 기본으로 활성화하여 보안성과 성능이 모두 크게 향상되었습니다. 새로 배포할 때는 TLS 1.3 지원을 우선적으로 고려하고 이전 클라이언트와의 호환성을 위해 TLS 1.2를 유지하는 것이 좋습니다.
만료 30일 전에 갱신 준비를 시작하고 최소 7일 전에 배포를 완료하는 것이 좋습니다. 이 도구는 색상 알림을 사용합니다: >30일 녹색(정상), 7-30일 노란색(갱신 필요), <7일 빨간색(긴급). Let's Encrypt 인증서는 유효기간이 90일이므로 자동 갱신 구성을 권장합니다.
Let's EncryptSAN(Subject Alternative Name, 주체 대체 이름)은 인증서에서 사용이 허용된 도메인/IP 목록입니다. 최신 브라우저(Chrome 58+)는 더 이상 Common Name(CN) 필드를 신뢰하지 않고 SAN만 검사합니다. 접근 중인 도메인이 SAN 목록에 없으면 브라우저에서 '도메인 불일치' 오류를 보고합니다. 하나의 인증서로 SAN을 통해 여러 도메인(예: example.com, www.example.com, api.example.com)을 보호할 수 있습니다.
인증서 지문(SHA-1/SHA-256)은 인증서 내용의 해시 값으로, HPKP(폐기됨), 인증서 고정(Certificate Pinning), 배포된 인증서가 예상과 일치하는지 수동 검증하는 데 사용할 수 있습니다. 예를 들어 CDN이 새 인증서를 올바르게 로드했는지 확인하거나 여러 서버 간에 인증서가 동일한지 검증할 때 유용합니다. 참고: SHA-1 지문은 식별 용도로만 사용해야 하며 보안 검증에는 사용해서는 안 됩니다.
SSL/TLS 인증서 검사는 클라이언트에서 TLS 핸드셰이크를 시작하여 대상 서버가 반환하는 인증서 정보를 가져와 분석함으로써 HTTPS 구성이 올바른지 판단하는 과정입니다. 핵심 검사 항목에는 다음이 포함됩니다: 인증서가 유효기간 내인지, 접근 중인 도메인이 인증서 허용 목록에 있는지(SAN 일치), 인증서 체인이 완전하고 신뢰할 수 있는지, 사용된 TLS 프로토콜 버전과 암호 스위트가 안전한지 등.
**인증서 검사가 왜 그렇게 중요한가요?** SSL 인증서는 HTTPS의 신뢰 기반입니다. 인증서에 문제가 발생하면(가장 흔한 것은 만료) 브라우저가 직접 접근을 차단하고 '연결이 비공개로 설정되어 있지 않습니다'라는 빨간색 경고 페이지를 표시하여 웹사이트 트래픽, 전환율, SEO 순위, 브랜드 신뢰에 직접적인 타격을 줍니다. 모니터링에 따르면 인증서 만료는 HTTPS 장애의 가장 흔한 원인으로 모든 HTTPS 사고의 40% 이상을 차지합니다.
**브라우저에서 직접 접속하는 것과 무엇이 다른가요?** 브라우저 접속은 캐시, HSTS, 기업 프록시, 클라이언트 인증서 등의 요인으로 인해 편향이 발생할 수 있습니다; 반면 인증서 검사 도구는 독립된 노드에서 표준 TLS 핸드셰이크를 시작하여 운영 검증 시나리오에 적합한 객관적이고 표준화된 인증서 정보를 반환합니다. 이 도구는 백엔드 서버에서 직접 TLS 핸드셰이크를 시작하므로 **브라우저 CORS 제한이 없으며** 공개적으로 접근 가능한 모든 HTTPS 도메인을 검사할 수 있습니다.
**이 도구가 검사하는 핵심 정보**: 인증서 권한 부여 상태(유효 여부), authorizationError 구체적인 오류 메시지, TLS 프로토콜 버전(TLS 1.2/1.3), 협상된 암호 스위트(Cipher), ALPN 프로토콜 협상 결과(h2/http/1.1), 인증서 발급자(Subject/Issuer), 유효기간 시작 및 종료 날짜(validFrom/validTo), 남은 일수(색상 알림 포함), SAN 주체 대체 이름 목록, SHA-1/SHA-256 지문, 응답 시간, 그리고 전체 JSON 세부 정보.
검사 결과는 보통 1-3초 내에 반환되며 서비스 출시 전 빠른 검증, 갱신 확인, 문제 해결 등의 시나리오에 적합합니다. 심층적인 점수 매기기(SSL Labs의 A+-F 등급처럼 재협상, 취약점 테스트, 프로토콜 지원도 등을 포함)가 필요한 경우 SSL Labs Server Test와 함께 사용하는 것이 좋습니다.
| 프로토콜 버전 | 출시 연도 | 현재 상태 | 비고 |
|---|---|---|---|
SSL 1.0-3.0 | 1995-1996 | ❌ 폐기/안전하지 않음 | POODLE 등 심각한 취약점이 존재하며 모든 최신 브라우저에서 비활성화됨 |
TLS 1.0 | 1999 | ❌ 폐기 | BEAST, CRIME 등 취약점이 있으며 PCI DSS 2018부터 사용 금지 |
TLS 1.1 | 2006 | ❌ 폐기 | RFC 8996에서 공식 폐기, Chrome/Firefox 2020년부터 지원 제거 |
TLS 1.2 | 2008 | ⚠️ 널리 지원(전환기) | 현재 가장 널리 배포되고 호환성이 가장 좋지만 일부 약한 암호 스위트 위험이 있음 |
TLS 1.3 | 2018 (RFC 8446) | ✅ 권장 | 핸드셰이크가 더 빠르고(1-RTT/0-RTT), 약한 알고리즘을 제거했으며 최신 브라우저에서 선호 |
| 남은 일수 | 상태 색상 | 권장 조치 |
|---|---|---|
| >30일 | 🟢 녹색(정상) | 조치가 필요 없으며 정기적으로 검사하면 됨 |
| 7-30일 | 🟡 노란색(경고) | 가능한 빨리 갱신 절차를 시작하여 만료 전 교체 완료 |
| <7일 | 🔴 빨간색(긴급) | 즉시 갱신하세요. 만료 후 브라우저가 접근을 차단함 |
| 0일/만료됨 | 🔴 빨간색(만료됨) | 인증서가 무효화되었습니다. 사용자가 보안 경고를 보게 되므로 즉시 처리해야 함 |
| 오류 유형 | 일반적인 원인 | 해결 방향 |
|---|---|---|
| 인증서 만료 (expired) | 인증서가 validTo 날짜를 초과하여 갱신되지 않음 | 신속하게 갱신하고 새 인증서를 배포하세요 |
| 도메인 불일치 (name mismatch) | 인증서 SAN 목록에 현재 접근 중인 도메인이 없음 | 대상 도메인을 포함한 인증서를 재발급하거나 CDN 원본 구성을 확인하세요 |
| 불완전한 인증서 체인 (incomplete chain) | 서버가 중간 인증서를 올바르게 구성하지 않음 | 중간 인증서와 리프 인증서를 결합하여 배포하세요 |
| 자체 서명 인증서 (self-signed) | 인증서가 개인 CA에서 발급되어 공개적으로 신뢰되지 않음 | Let's Encrypt 등 공개적으로 신뢰된 CA에서 인증서를 발급받으세요 |
| 신뢰할 수 없는 발급자 (untrusted issuer) | CA 루트 인증서가 브라우저 신뢰 저장소에 없음 | 신뢰할 수 있는 CA가 발급한 인증서로 교체하세요 |