
Cloudflare SSL 모드 선택 기준: 원본 서버 상황별 Flexible vs Full vs Full (strict)
Cloudflare SSL 암호화 모드(Flexible, Full, Full strict)의 선택 기준을 원본 서버 HTTPS 지원과 인증서 상태에 따라 설명하고, 안전한 운영 환경으로 전환하는 절차를 제시합니다.
Cloudflare SSL 암호화 모드는 원본 서버의 HTTPS 지원과 인증서 상태에 따라 선택합니다. 원본 서버에 HTTPS 설정이 없거나 인증서 설치가 어렵다면 Flexible 모드를 임시로 쓸 수 있지만, 실제 운영 환경에서는 Cloudflare와 서버 간 통신까지 암호화하는 Full (strict) 모드가 권장됩니다. 최종 선택은 호스팅 환경에서 신뢰할 수 있는 인증서를 설치할 수 있는지 여부로 결정됩니다.
Cloudflare SSL/TLS 암호화 모드의 구조
두 가지 연결: 방문자-Cloudflare, Cloudflare-원본 서버
Cloudflare의 SSL/TLS 암호화 모드는 방문자와 Cloudflare 사이, 그리고 Cloudflare와 원본 서버 사이의 두 연결을 어떻게 관리할지를 결정합니다(공식 문서). 기본적으로 Automatic SSL/TLS 모드가 활성화되어 있으며, SSL/TLS Recommender가 가장 안전한 암호화 모드를 자동으로 선택합니다. 하지만 자동 모드는 덜 안전한 모드로 다운그레이드되지 않으며, 사용자는 직접 원본 서버의 SSL/TLS 설정이 유효한지 확인해야 합니다.
Automatic SSL/TLS의 동작
Automatic SSL/TLS는 약 한 달에 한 번 스캔을 수행하며, 설정 변경 후 더 자주 실행될 수 있습니다. 업그레이드는 점진적으로 진행되어 처음에는 전체 트래픽의 1%만 영향을 주고, 10%씩 증가하여 100%까지 올라갑니다(출처). 업그레이드 알림 이메일은 슈퍼 관리자에게만 주간으로 발송됩니다. Flexible에서 Full/Strict로의 전환은 캐시 키가 변경되므로 특히 조심스럽게 처리됩니다.
Flexible 모드: 개발·테스트에만 사용
동작 방식과 보안 한계
Flexible 모드는 방문자와 Cloudflare 사이는 HTTPS로 암호화하지만, Cloudflare에서 원본 서버로는 HTTP로 평문 통신합니다(참조). 이 때문에 종단 간 암호화를 제공하지 못하며, 원본 서버에 SSL 인증서가 필요 없어서 구성이 간단합니다. 이러한 특성 때문에 개발이나 테스트 환경처럼 HTTPS 연결이 필요하지만 실제 운영이 아닌 경우에만 편리한 임시 해결책이 될 수 있습니다(사례).
운영 환경에서 피해야 하는 이유
실제 운영 사이트에서 Flexible 모드를 쓰면 중간자 공격에 취약해지고, 브라우저가 실제로는 안전하지 않은 연결을 안전하다고 표시할 수 있어 보안에 매우 주의해야 합니다. Cloudflare의 Flexible SSL은 구성은 쉽지만 종단 간 암호화가 없으므로 주의가 필요합니다(출처).
Full 모드: 원본 서버에 HTTPS 사용, 인증서 미검증
Full 모드는 방문자-Cloudflare 구간을 HTTPS로, Cloudflare-원본 서버 구간도 HTTPS로 연결합니다. 하지만 원본 서버의 인증서를 검증하지 않기 때문에, 자체 서명된 인증서나 만료된 인증서도 허용됩니다(문서). 이 덕분에 원본 서버에 HTTPS를 적용하기 어려운 환경에서도 암호화된 연결을 확보할 수 있습니다. 예를 들어 공유호스팅에서 Let’s Encrypt 통합이 없고 SSL 인증서 추가만 가능한 경우, 패널에서 브라우저 신뢰 CA 인증서만 허용한다면 자체 서명 인증서도 설치가 막힐 수 있어 호스팅 제공업체에 문의해야 합니다(사례).
Full 모드의 한계와 주의점
인증서 검증이 없기 때문에 위장된 원본 서버로 연결될 위험이 있습니다. 따라서 Full 모드는 원본 서버의 신원을 확실히 신뢰할 수 있는 내부망이나, 인증서 검증이 기술적으로 불가능한 상황에서만 임시적으로 사용해야 합니다. 운영 환경에서는 후술할 Full (strict) 모드로 전환하는 것이 바람직합니다.
Full (strict) 모드: 운영 환경 권장
Full (strict) 모드는 Full 모드의 모든 동작에 더해 원본 서버 인증서를 엄격히 검증합니다(공식 문서). 원본 인증서는 신뢰할 수 있는 인증 기관(CA) 또는 Cloudflare Origin CA에서 발급되어야 합니다. 인증서가 만료되지 않아야 합니다. 인증서의 호스트명이 요청된 대상과 일치해야 합니다. Full (strict) 모드에서는 원본 서버가 위 요구사항을 모두 충족하는 인증서를 제시해야 합니다. 이러한 조건을 만족하지 못하면 방문자는 526 오류를 경험할 수 있습니다. 또한 원본 서버 설정에 따라 혼합 콘텐츠 오류나 리디렉션 과다 문제가 발생할 수 있으므로, 적절한 조정이 필요합니다.
Full (strict) 요구사항은 Cloudflare Origin CA 인증서나 Let’s Encrypt 같은 공용 CA 인증서로 충족할 수 있습니다. Cloudflare Origin 인증서는 Cloudflare 시스템에서는 신뢰되지만 다른 시스템에서는 유효성 검증에 실패할 수 있으므로, 타 서비스와의 연동 시 주의가 필요합니다(출처). 저렴한 대안으로 연간 약 $4 정도에 FastSSL DV 인증서를 구매할 수도 있습니다(정보).
원본 서버 유형별 SSL 모드 선택 기준
아래 표는 원본 서버의 특성에 따른 권장 암호화 모드를 보여줍니다.
| 원본 서버 상황 | 권장 모드 | 비고 |
|---|---|---|
| HTTPS 미지원, 인증서 설치 불가 | Flexible (개발·테스트만) | 운영 환경 사용 금지 |
| HTTPS 지원하나 자체 서명 인증서만 사용 가능 | Full | 임시 운영 가능, 검증 없음 주의 |
| 신뢰된 CA 인증서 (Let’s Encrypt, Cloudflare Origin CA 등) 설치 가능 | Full (strict) | 운영 환경 권장 |
| Cloudflare Origin Pull 전용 설정 | SSL-only Origin Pull (관련 별도 설정) | 항상 HTTPS+검증 |
Flexible에서 Full/Full (strict)로 전환할 때 주의할 점
Flexible 모드에서 Full 또는 Full (strict)로 전환하면 원본 서버와의 통신 방식이 HTTP에서 HTTPS로 바뀌어 캐시 키가 달라지므로 Cloudflare의 점진적 전환 절차가 더욱 신중하게 적용됩니다(문서). 이 과정에서 일부 페이지의 혼합 콘텐츠 경고나, 원본 서버가 HTTPS 리디렉션을 반복하며 리디렉션루프를 일으킬 수 있습니다. 리디렉션 루프가 발생하면 301과 302 리디렉션의 차이를 이해하고 적절히 대응해야 합니다(참고: 301 vs 302 리디렉션 차이). 또한 Cloudflare 설정 전에 DNS 레코드가 올바르게 구성되었는지 확인하세요(참고: DNS A 레코드와 CNAME 차이).
Cloudflare Origin Rule을 활용하면 별도의 웹서버 재설정 없이 포트 변환을 처리할 수 있어 Flexible에서 Full로의 전환을 더 쉽게 할 수 있습니다(예시). 하지만 이는 권장되는 방법은 아니며, Nginx 등 웹서버에서 SSL을 직접 종료하는 설정을 병행하는 것이 안전합니다.
결론 및 체크리스트
- 원본 서버에 HTTPS 지원 여부 확인
- 인증서 유형(자체 서명, 신뢰된 CA) 및 설치 가능 여부 확인
- 개발·테스트 환경이면 Flexible, 운영이면 Full (strict) 지향
- Full (strict) 전환 전에 526 오류와 혼합 콘텐츠 대비
- 전환 후 SSL 인증서 갱신 모니터링
이 체크리스트를 따라 안전하게 Cloudflare SSL 모드를 선택하고 운영할 수 있습니다.
참고 자료
- Cloudflare SSL 모드 개요 — 확인일 2026-08-01
- Full (strict) 모드 상세 — 확인일 2026-08-01
- Reddit: Flexible SSL에서 벗어나기 — 확인일 2026-08-01
- 티스토리: Cloudflare SSL 설정 (Nginx 없이) — 확인일 2026-08-01
- 301과 302 리디렉션 차이 — 확인일 2026-08-01
- DNS A와 CNAME 차이 — 확인일 2026-08-01