SSL/TLS
호스트 이름별로 무료 또는 사용자 지정 인증서를 배포하고, 암호화 모드, HTTPS 강제 적용, HSTS, 보안 헤더를 설정하며, Origin CA 인증서를 발급합니다.
SSL/TLS 설정은 사이트 상세 페이지의 SSL/TLS 탭(/cdn/domains/<domain>/ssl)에 있습니다. CDN의 HTTPS에는 두 연결이 사용됩니다.
- 방문자 ↔ 에지: 호스트 이름별로 배포된 에지 인증서를 사용합니다. 무료 자동 인증서 또는 직접 업로드한 인증서입니다.
- 에지 ↔ 원본 서버: 암호화 모드와 호스트 이름의 원본 프로토콜에 따라 연결 암호화 여부와 원본 인증서 검증 여부가 결정됩니다.
에지 인증서 배포
엣지 인증서 관리 표에는 사이트의 모든 호스트 이름과 각 SSL 상태, 발급자, 만료일이 표시됩니다. 인증서 관리를 클릭하여 인증서 대화 상자를 엽니다. 인증서는 세 가지 방법으로 추가할 수 있습니다.
방법 1: 무료 자동 인증서(Let's Encrypt)
- 호스트 이름의 DNS가 CNAME 또는 네임서버 설정을 통해 이미 CDN을 가리키고 있는지 확인합니다. HTTP-01 검증을 사용하므로 에지가 Let's Encrypt의 검증 요청에 응답할 수 있어야 합니다.
- 자동 인증서 (Let's Encrypt) 탭에서 HTTP-01 검증을 클릭합니다.
- 대화 상자에는 처리 대기, 도메인 인증 중, 인증서 발급 중의 세 단계로 진행 상황이 표시됩니다. 완료되면 상태가 발급됨으로 바뀝니다. 실패하면 인증서 신청에 실패했습니다와 함께 사유가 표시됩니다.
자동 인증서의 유효 기간은 90 days입니다. 만료 전에 자동으로 갱신되고 에지에 다시 배포되므로 별도로 작업할 필요가 없습니다. 인증서가 생성되면 버튼이 인증서 갱신으로 바뀌며, 이 버튼으로 미리 갱신할 수 있습니다.
*.example.com과 같은 와일드카드 호스트 이름은 HTTP-01로 검증할 수 없습니다. 사용자 지정 인증서 또는 인증서 보관함을 통해 와일드카드 인증서를 배포합니다(아래 참조).
HTTPS 강제 적용은 HTTP-01 검증에 영향을 주지 않습니다. 에지가 검증 요청에 먼저 응답합니다.
방법 2: 사용자 지정 인증서 업로드
- 사용자 지정 인증서 탭으로 전환합니다.
- **인증서(PEM 형식)**에 인증서를 붙여 넣습니다. 서버 인증서를 먼저 입력하고 중간 인증서를 이어서 입력하여 전체 체인을 포함합니다.
- **개인 키 (PEM 형식)**에 해당 인증서와 일치하는 개인 키를 붙여 넣습니다.
- 인증서 업로드를 클릭합니다. 상태가 사용자 지정 인증서로 바뀝니다.
사용자 지정 인증서는 자동으로 갱신되지 않습니다. 현재 인증서가 만료되기 전에 새 인증서를 업로드합니다.
방법 3: 인증서 보관함에서 배포
Yeap Cloud SSL 인증서 서비스에서 인증서를 구매하거나 보관한 경우 인증서 폴더 탭에서 선택할 수 있습니다. 해당 호스트 이름을 포함하는 와일드카드 인증서를 비롯하여 호스트 이름과 일치하는 인증서가 표시됩니다. 배포할 인증서를 선택합니다.
암호화 모드(에지에서 원본 서버로)
SSL/TLS 암호화 모드 카드에서 모드를 선택하고 저장을 클릭합니다.
| 모드 | 에지에서 원본 서버로의 연결 | 사용 상황 |
|---|---|---|
| 끄기 | 일반 HTTP | 원본 서버가 HTTP만 제공하는 경우 |
| 유연 | 일반 HTTP | 원본 서버에 인증서가 없지만 방문자에게 HTTPS를 제공하려는 경우 |
| 전체 | HTTPS, 원본 인증서 검증 안 함 | 원본 서버가 자체 서명 인증서 또는 Origin CA 인증서를 사용하는 경우 |
| 전체(엄격) | HTTPS, 원본 인증서 검증 | 원본 서버에 공개적으로 신뢰되는 CA가 도메인에 대해 발급한 유효한 인증서가 있는 경우 |
이 모드와 다른 설정의 관계는 다음과 같습니다.
- 위 표는 원본 프로토콜이 자동인 호스트 이름에 적용됩니다. 원본 서버 탭에서 원본 프로토콜을 HTTP 또는 HTTPS로 명시적으로 설정하면 해당 프로토콜 설정이 우선합니다. 전체(엄격) 모드는 에지가 HTTPS로 원본 서버에 연결할 때만 인증서를 검증합니다.
- 방문자가 HTTPS로 에지에 접속할 수 있는지는 호스트 이름에 에지 인증서가 있는지에 의해서만 결정됩니다. 암호화 모드는 여기에 영향을 주지 않습니다.
- 끄기 또는 유연 모드로 전환하면 에지와 원본 서버 간 트래픽이 더 이상 암호화되지 않으므로 확인을 요청합니다.
- 전체(엄격) 모드에서는 원본 인증서가 유효하지 않거나 만료되었거나 도메인과 일치하지 않으면 원본 서버에 대한 요청이 실패합니다.
- 원본 서버와의 HTTP/2 연결에는 HTTPS가 필요하므로 끄기 및 유연 모드에서는 에지가 HTTP/1.1로 대체하여 연결합니다.
유연 모드에서 원본 서버도 HTTP를 HTTPS로 리디렉션하면 방문자에게 무한 리디렉션 루프가 발생합니다. 전체 모드로 전환하거나 원본 서버 자체의 리디렉션을 끕니다. 진단 탭에서 이 문제를 감지할 수 있습니다.
HTTPS 강제 적용
HTTPS 설정 카드에서 HTTPS 강제를 켜면 모든 HTTP 요청을 301로 동일한 URL의 HTTPS 주소로 리디렉션합니다. 이 설정은 방문자의 연결 방식을 제어하며 원본 프로토콜은 변경하지 않습니다.
켜기 전에 사이트의 모든 호스트 이름에 유효한 에지 인증서가 있는지 확인합니다. 그렇지 않으면 방문자에게 인증서 오류가 표시됩니다.
HSTS 및 보안 헤더
HSTS 및 보안 응답 헤더 카드의 설정은 에지가 방문자에게 보내는 응답에 추가합니다. 설정을 변경한 후 카드 오른쪽 위의 저장을 클릭합니다.
HSTS(HTTP Strict Transport Security)
| 필드 | 설명 |
|---|---|
| 스위치 | HTTPS 응답에 Strict-Transport-Security 헤더를 추가합니다. 일반 HTTP 응답에는 추가하지 않습니다 |
| max-age(초) | 브라우저가 HTTPS를 사용해야 하는 기간입니다. 일반적으로 31536000(1년)을 사용합니다 |
| 하위 도메인 포함 | includeSubDomains를 추가합니다 |
| Preload | 브라우저 HSTS 사전 로드 목록에 등록을 신청할 때 필요한 preload를 추가합니다 |
브라우저가 HSTS를 한 번 확인하면 max-age 기간 내내 해당 도메인의 일반 HTTP 연결을 거부합니다. 먼저 모든 곳에서 HTTPS가 작동하는지 확인합니다. 그런 다음 300 seconds처럼 짧은 max-age로 시작하여 점차 늘립니다.
기타 보안 헤더
- X-Frame-Options: 클릭재킹을 방지하는
SAMEORIGIN또는DENY입니다. - Referrer-Policy: 목록에서 정책을 선택합니다.
- X-Content-Type-Options: nosniff: 브라우저의 MIME 스니핑을 방지합니다.
- Content-Security-Policy (CSP): 완전한 정책을 입력합니다. 비워 두면 CSP 헤더를 보내지 않습니다.
이 네 가지 헤더는 보안 응답 헤더 스위치가 켜져 있을 때만 적용됩니다.
CORS 및 사용자 지정 헤더
**CORS(교차 출처 리소스 공유)**에서는 다음을 설정할 수 있습니다.
- 허용할 출처를 한 줄에 하나씩 입력하며,
*는 모든 출처를 의미합니다. - 허용할 메서드
- 허용할 요청 헤더
- 노출할 응답 헤더
- 자격 증명 허용 여부
- 사전 요청의 max-age
출처
*와 자격 증명 허용은 함께 사용할 수 없습니다.- 허용할 출처를 한 줄에 하나씩 입력하며,
사용자 지정 응답 헤더: set은 같은 이름의 헤더를 덮어쓰고, add는 값을 추가하며(반복 가능), remove는
X-Powered-By와 같은 헤더를 삭제합니다.
Free 및 Starter 사이트의 모든 응답에는 Server: YeapCDN/2.0이 포함되며, Server 헤더의 사용자 지정이나 삭제는 무시됩니다. Pro 및 Enterprise 사이트에서는 Server 헤더를 설정하거나 삭제할 수 있습니다.
Origin CA 인증서
Origin CA 인증서는 플랫폼에서 발급하며, 원본 서버에 설치하여 에지와 원본 서버 간 연결을 암호화합니다. Yeap Cloud CDN에서만 사용하며 브라우저가 신뢰하지 않으므로 방문자에게 제공하는 인증서로 사용해서는 안 됩니다.
발급 방법은 다음과 같습니다.
- Origin CA 인증서 카드에서 인증서 발급을 클릭합니다.
- 대화 상자에 다음 항목을 입력합니다.
- 도메인 (SANs): 기본값은
example.com과*.example.com입니다. - 키 유형: ECC P-256(권장), RSA 2048 또는 RSA 4096입니다.
- 유효 기간: 7 days부터 15 years까지이며, 기본값은 15 years입니다.
- 도메인 (SANs): 기본값은
- 인증서와 개인 키를 즉시 복사하여 보관합니다. 개인 키는 한 번만 표시됩니다. 대화 상자를 닫으면 다시 확인할 수 없습니다.
- 원본 웹 서버에 인증서와 키를 설치합니다.
- 사이트의 암호화 모드를 전체로 설정합니다.
원본 서버에 CA 체인이 필요하면 CA 루트 인증서 다운로드를 클릭합니다. 인증서 목록에서 인증서를 조회, 폐기, 삭제할 수 있습니다.
전체(엄격) 모드는 공개적으로 신뢰되는 CA를 기준으로 원본 인증서를 검증합니다. Origin CA 인증서를 사용하는 원본 서버에는 전체 모드를 사용합니다.