SSL/TLS는 인터넷에서 가장 널리 사용되는 암호화 프로토콜입니다. 기술적으로 TLS는 SSL의 후속 버전이지만 이 문서에서와 같이 두 용어가 같은 의미로 사용되는 경우가 있습니다.
전송 계층 보안(TLS)은 네트워크를 통해 정보가 전송되는 동안 암호화하는 데 사용되며 클라이언트와 서버 또는 부하 분산기 간의 개인정보 보호를 제공합니다. 전달 규칙이 대상 HTTPS 프록시 또는 대상 SSL 프록시를 참조하는 Google Cloud 프록시 부하 분산기에는 부하 분산기 대상 프록시 구성의 일부로 비공개 키와 SSL 인증서가 필요합니다.
인증서 구성 방법
Google Cloud는 HTTP(S) 및 SSL 프록시 부하 분산기에 SSL 인증서를 구성하는 두 가지 방법을 제공합니다. 두 방법 모두 자체 관리형 및 Google 관리형 SSL 인증서를 지원합니다.
Compute Engine SSL 인증서 리소스: 이 방법을 사용하면 전역 외부 애플리케이션 부하 분산기, 기본 애플리케이션 부하 분산기, 외부 프록시 네트워크 부하 분산기, 리전 외부 애플리케이션 부하 분산기또는 내부 애플리케이션 부하 분산기의 대상 프록시가 Compute Engine SSL 인증서 리소스를 참조하도록 구성됩니다. SSL 인증서 리소스에는 비공개 키, 해당 인증서, CA 인증서(선택사항)가 포함됩니다. 이 방법은 부하 분산기에서 지원하는 모든 네트워크 서비스 등급을 지원합니다.
인증서 관리자: 이 방법을 사용하면 전역 외부 애플리케이션 부하 분산기, 기본 애플리케이션 부하 분산기 또는 외부 프록시 네트워크 부하 분산기의 대상 프록시가 인증서 맵을 참조하도록 구성됩니다. 인증서 맵에는 하나 이상의 인증서 항목이 포함됩니다. 각 인증서 항목은 단일 Certificate Manager 인증서 리소스를 참조하며 각 인증서 리소스에는 비공개 키와 인증서가 포함됩니다. Certificate Manager를 사용하면 대상 HTTPS 프록시 또는 대상 SSL 프록시가 수천 개의 SSL 인증서 항목이 있는 인증서 맵을 참조할 수 있습니다. 이 방법은 부하 분산기가 프리미엄 네트워크 서비스 등급을 사용하는 경우에만 사용할 수 있습니다.
리전 간 내부 애플리케이션 부하 분산기, 리전 내부 애플리케이션 부하 분산기, 리전 외부 애플리케이션 부하 분산기의 경우 인증서 관리자 인증서가 대상 프록시에 연결됩니다. 인증서 맵은 지원되지 않습니다.
자세한 내용은 다음 문서를 참조하세요.
다음 표에는 Google Cloud 프록시 부하 분산기의 대상 HTTPS 프록시 또는 대상 SSL 프록시에 연결할 수 있는 다양한 유형의 인증서 리소스가 나와 있습니다. Compute Engine SSL 인증서는 대상 프록시에 직접 연결되는 반면 Certificate Manager SSL 인증서는 대상 프록시에 직접 연결하거나 인증서 맵을 통해 연결할 수 있습니다.
프록시 부하 분산기 | Compute Engine SSL 인증서 | 인증서 관리자 SSL 인증서 | |
---|---|---|---|
인증서 맵을 통해 대상 프록시에 연결됨 | 대상 프록시에 직접 연결됨 | ||
전역 외부 애플리케이션 부하 분산기 (HTTPS 프록시 포함) | |||
기존 애플리케이션 부하 분산기 (HTTPS 프록시 포함) | |||
전역 외부 프록시 네트워크 부하 분산기 (SSL 프록시 사용) | |||
기존 프록시 네트워크 부하 분산기 (SSL 프록시 사용) | |||
리전 간 내부 애플리케이션 부하 분산기 (HTTPS 프록시 포함) | |||
리전 외부 애플리케이션 부하 분산기 (HTTPS 프록시 포함) | |||
리전 내부 애플리케이션 부하 분산기 (HTTPS 프록시 포함) |
인증서 유형
자체 인증서를 만들거나 Google에서 인증서를 자동으로 관리할 수 있습니다.자체 관리형 SSL 인증서는 사용자가 직접 가져와 프로비저닝하고 갱신하는 인증서입니다. 자체 관리형 인증서는 다음 공개키 인증서 유형 중 하나일 수 있습니다.
- 도메인 유효성 검사(DV)
- 조직 유효성 검사(OV)
- 확장 유효성 검사(EV) 인증서
자체 관리형 Compute Engine SSL 인증서에 대한 자세한 내용은 자체 관리형 SSL 인증서 사용을 참조하세요.
자체 관리형 SSL 인증서 및 Certificate Manager에 대한 자세한 내용은 Certificate Manager 문서의 자체 관리형 인증서 업로드 또는 엔드 투 엔드 튜토리얼의 자체 관리형 인증서 배포를 참조하세요.
Google 관리형 SSL 인증서는 Google Cloud가 자동으로 가져오고 관리하며 갱신하는 인증서입니다. Google 관리형 인증서는 항상 도메인 유효성 검사(DV) 인증서입니다. 인증서와 연결된 조직이나 개인의 ID를 보여주지 않으며 와일드 카드 일반 이름을 지원하지 않습니다.
Google 관리형 Compute Engine SSL 인증서에 대한 자세한 내용은 Google 관리형 SSL 인증서 사용을 참조하세요.
Certificate Manager는 부하 분산기 승인, DNS 승인, Certificate Authority Service와의 통합을 사용하여 Google 관리형 SSL 인증서를 지원합니다. Google 관리 SSL 인증서의 인증서 관리자에 대한 자세한 내용은 인증서 관리자 문서의 배포 개요를 참조하세요.
인증서 및 Google Cloud 부하 분산기
다음 섹션에서는 각 애플리케이션 부하 분산기가 서로 다른 인증서 구성 방법을 지원하는 방법을 설명합니다.
Compute Engine SSL 인증서
다음 표에서는 자체 관리형 Compute Engine SSL 인증서나 Google 관리 Compute Engine SSL 인증서 또는 둘 다를 지원하는 Google Cloud 부하 분산기를 보여줍니다.
Compute Engine SSL 인증서 지원 | ||
---|---|---|
부하 분산기 | 자체 관리형 | Google 관리 |
전역 외부 애플리케이션 부하 분산기 * | sslCertificates |
sslCertificates |
기본 애플리케이션 부하 분산기 * | sslCertificates |
sslCertificates |
리전 외부 애플리케이션 부하 분산기 † | regionSslCertificates |
|
리전 내부 애플리케이션 부하 분산기 † | regionSslCertificates |
|
리전 간 내부 애플리케이션 부하 분산기 * | ||
외부 프록시 네트워크 부하 분산기(SSL 프록시 사용) ‡ | sslCertificates |
sslCertificates |
* 전역 외부 애플리케이션 부하 분산기, 리전 간 내부 애플리케이션 부하 분산기, 기본 애플리케이션 부하 분산기는 기본 애플리케이션 부하 분산기에서 표준 등급을 사용하는 경우에도 전역 대상 HTTPS 프록시를 사용합니다.
† 리전 외부 애플리케이션 부하 분산기와 내부 애플리케이션 부하 분산기는 리전 대상 HTTPS 프록시를 사용합니다.
‡ 외부 프록시 네트워크 부하 분산기는 표준 등급에서도 전역 대상 SSL 프록시를 사용합니다.
인증서 관리자 SSL 인증서
다음 표에서는 인증서 관리자 자체 관리형 인증서나 Google 관리형 인증서 또는 둘 다를 지원하는 Google Cloud 부하 분산기를 보여줍니다.
부하 분산기 | Google 관리 인증서 | 자체 관리형 인증서 | ||
---|---|---|---|---|
DNS 승인 | 부하 분산기 승인 | Certificate Authority Service(CA 서비스) | ||
전역 외부 애플리케이션 부하 분산기 | info |
info |
info |
info |
기본 애플리케이션 부하 분산기 | info |
info |
info |
info |
전역 외부 프록시 네트워크 부하 분산기 | info |
info |
info |
info |
리전 간 내부 애플리케이션 부하 분산기 | info |
info |
info |
|
리전 외부 애플리케이션 부하 분산기 | info |
info |
info |
|
리전 내부 애플리케이션 부하 분산기 | info |
info |
info |
여러 SSL 인증서
동일한 대상 HTTPS 프록시 또는 대상 SSL 프록시를 사용하여 여러 인증서를 호스팅할 수 있으며 이는 부하 분산기가 여러 도메인 이름을 지원하는 경우에 일반적입니다. 공통 대상 프록시를 참조하도록 단일 전달 규칙(단일 IP 주소 및 포트)을 구성하거나 공통 대상 프록시를 참조하도록 여러 전달 규칙(다른 IP 주소 및 포트)을 구성할 수 있습니다.
여러 Compute Engine SSL 인증서 리소스
Compute Engine SSL 인증서 리소스를 사용할 때 각 대상 프록시 리소스는 구성 불가능한 대상 HTTPS 또는 대상 SSL 프록시당 최대 SSL 인증서 수를 참조할 수 있습니다. 자세한 내용은 부하 분산 할당량 및 한도 문서의 대상 풀 및 대상 프록시를 참조하세요.
부하 분산기의 대상 프록시가 참조하는 첫 번째 Compute Engine SSL 인증서 리소스는 부하 분산기의 기본(주요) 인증서로 간주됩니다.
Certificate Manager를 사용하는 여러 SSL 인증서
부하 분산기에서 인증서 맵과 함께 Certificate Manager를 사용하는 경우 각 대상 프록시 리소스는 단일 인증서 맵을 참조합니다. 인증서 맵은 하나 이상의 인증서 항목을 참조하며 맵의 기본(주요) 인증서인 인증서 항목을 구성할 수 있습니다. 맵, 항목, Certificate Manager 인증서의 수는 프로젝트별 할당량으로 구성할 수 있습니다. 자세한 내용은 Certificate Manager 문서의 리소스 할당량을 참조하세요.
Certificate Manager를 지원하는 부하 분산기를 사용 중이고 대상 프록시당 SSL 인증서를 몇 개 이상 호스팅해야 하는 경우 Compute Engine SSL 인증서 리소스 대신 Certificate Manager를 사용하고 있는지 확인해야 합니다.
인증서 선택 방법
클라이언트가 HTTP(S) 또는 SSL 프록시 부하 분산기에 연결하면 클라이언트와 부하 분산기가 TLS 세션을 협상합니다. TLS 세션 협상 중에 클라이언트는 ClientHello
에서 지원하는 TLS 암호화 목록을 부하 분산기에 전송합니다. 부하 분산기는 공개 키 알고리즘이 클라이언트와 호환되는 인증서를 선택합니다. 클라이언트는 이 협상의 일부로 서버 이름 표시(SNI) 호스트 이름을 부하 분산기에 보낼 수도 있습니다. SNI 호스트 이름 데이터는 부하 분산기가 클라이언트에 보낼 인증서를 선택하는 데 도움이 되는 경우가 있습니다.
Google Cloud 프록시 부하 분산기는 이 섹션에 설명된 단계에 따라 인증서를 선택하고 클라이언트로 전송합니다. 다음 단계에서 사용되는 '기본(주요) SSL 인증서'라는 용어는 대상 프록시에서 참조하는 첫 번째 Compute Engine SSL 인증서를 나타냅니다.
부하 분산기는 단일 인증서 후보를 선택합니다.
부하 분산기의 대상 프록시가 하나의 Compute Engine SSL 인증서 리소스만 참조하는 경우 부하 분산기는 구성된 유일한 인증서를 인증서 후보로 사용합니다. SNI 호스트 이름(제공된 경우)의 값은 부하 분산기에 전혀 영향을 주지 않습니다. 2단계로 진행합니다.
부하 분산기의 대상 프록시가 두 개 이상의 Compute Engine SSL 인증서 리소스를 참조하는 경우 부하 분산기는 다음 프로세스를 사용하여 단일 인증서 후보를 선택합니다.
클라이언트가
ClientHello
에서 SNI 호스트 이름을 보내지 않으면 부하 분산기가 기본(주요) SSL 인증서를 인증서 후보로 사용합니다. 2단계로 진행합니다.클라이언트가 인증서 일반 이름(CN)과 일치하지 않고 인증서 주체 대체 이름(SAN)과 일치하지 않는 SNI 호스트 이름을 보내는 경우 부하 분산기는 기본(주요) SSL 인증서를 인증서 후보로 사용합니다. 2단계로 진행합니다.
부하 분산기는 클라이언트에서 전송된 SNI 호스트 이름과 일치하는 인증서 후보를 선택합니다. 일치는 RSA 인증서보다 ECDSA 인증서를 선호하며 일반 이름(CN)과 주체 대체 이름(SAN) 인증서 속성 모두에 대해 가장 긴 프리픽스를 사용하여 수행됩니다. 일치하는 방법을 설명하기 위해 CN이
cats.pets.example.com
인 인증서 하나와 CN이dogs.pets.example.com
인 다른 인증서를 참조하는 대상 프록시를 살펴보겠습니다. SAN에 각 CN 값을 포함하는 것 외에도 각 인증서는 SAN에*.pets.example.com
및*.example.com
이 포함됩니다.- 제공된 SNI 호스트 이름이
cats.pets.example.com
인 경우 부하 분산기는 CN이cats.pets.example.com
인 인증서를 인증서 후보로 사용합니다. 2단계로 진행합니다. - 제공된 SNI 호스트 이름이
ferrets.pets.example.com
인 경우 부하 분산기는 두 인증서 중 하나를 인증서 후보로 사용합니다. 구성된 두 인증서 모두*.pets.example.com
을 포함하는 SAN이 있기 때문입니다. 이 경우 두 인증서 중 어떤 것이 인증서가 될지 관리할 수 없습니다. 2단계로 진행합니다.
- 제공된 SNI 호스트 이름이
인증서 후보가 클라이언트가 지정한 암호화 중 하나와 호환되는 공개 키 알고리즘을 사용하는 경우 해당 인증서 후보가 클라이언트에 전송됩니다.
- 클라이언트가 인증서의 공개 키 알고리즘(ECDSA 또는 RSA)을 포함하는 암호화 스위트를 지원하지 않으면 TLS 협상이 실패할 수 있습니다.
- 부하 분산기는 인증서의
notValidBefore
및notValidAfter
속성을 후보 선택 방법의 일부로 사용하지 않습니다. 예를 들어 만료된 인증서가 인증서 후보로 선택된 경우 부하 분산기가 만료된 인증서를 제공할 수 있습니다.
가격 책정
Google Cloud 부하 분산기를 사용할 때 네트워킹 요금이 발생할 수 있습니다. 자세한 내용은 모든 네트워킹 가격 책정을 참조하세요. Certificate Manager 가격 책정에 대해서는 Certificate Manager 문서의 가격 책정을 참조하세요. Compute Engine SSL 인증서 리소스 사용에는 추가 요금이 발생하지 않습니다.
다음 단계
Compute Engine SSL 인증서에 대한 자세한 내용은 다음 페이지를 참조하세요.
- 자체 관리형 Compute Engine SSL 인증서에 대한 자세한 내용은 자체 관리형 SSL 인증서 사용을 참조하세요.
- Google 관리형 Compute Engine SSL 인증서에 대한 자세한 내용은 Google 관리형 SSL 인증서 사용을 참조하세요.
- Compute Engine SSL 인증서의 할당량 및 한도(지원되는 키 길이 포함)에 대해 자세히 알아보려면 부하 분산기 문서에서 SSL 인증서 및 대상 풀 및 대상 프록시를 참조하세요.
Certificate Manager에 대한 자세한 내용은 다음 페이지를 참조하세요.
- Certificate Manager 개요
- 자체 관리형 SSL 인증서 및 Certificate Manager에 대한 자세한 내용은 Certificate Manager 문서의 자체 관리형 인증서 업로드 또는 엔드 투 엔드 튜토리얼의 자체 관리형 인증서 배포를 참조하세요.
- Google 관리형 SSL 인증서 및 Certificate Manager에 대한 자세한 내용은 Certificate Manager 문서의 인증서 관리를 참조하세요.
- Certificate Manager의 할당량 및 한도에 대한 자세한 내용은 Certificate Manager 문서의 리소스 할당량을 참조하세요.
GKE에서 관리하는 프록시 부하 분산기의 SSL 인증서를 구성하는 방법에 대한 자세한 내용은 HTTP(S) 부하 분산용 GKE 인그레스 ,GKE Gateway API 문서, 독립형 영역별 NEG를 통한 컨테이너 기반 부하 분산을 참조하세요.
부하 분산기와 전송 중인 데이터 암호화에 대한 자세한 내용은 백엔드 암호화 및 Google Cloud에서 전송 중인 데이터 암호화 백서를 참조하세요.
직접 사용해 보기
Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
무료로 시작하기