참고자료: Cloudflare 개발자 문서
작성 프로세스: AI가 공개 자료를 리서치해 초안을 작성하고, 편집팀이 사실관계를 검수합니다. 자세한 안내 보기
얼마 전 친구가 운영하던 블로그에서 ERR_TOO_MANY_REDIRECTS라는 오류 메시지를 보게 되었습니다. 처음에는 단순히 SSL 설정 문제라고 생각했지만, 문제는 생각보다 복잡했습니다. Cloudflare의 암호화 모드 설정과 관련된 것이었는데, 이 문제가 참 헷갈리더라고요. 그래서 이번 글에서는 이와 관련된 문제를 해결하는 방법에 대해 자세히 알아보겠습니다.
Cloudflare를 사용하다 보면 가장 자주 마주하는 문제 중 하나가 바로 리디렉션 루프입니다. 이 루프는 사이트 방문자가 계속해서 HTTP와 HTTPS를 번갈아 요청하게 만드는 현상입니다. 제가 아는 한 사례에서는 사이트 소유자가 암호화 모드를 잘못 설정해 이 문제를 겪었습니다. 이런 상황을 피하기 위해서는 자신의 사이트에 맞는 적절한 설정을 선택하는 것이 중요합니다.
암호화 모드: Flexible vs Full
Flexible 모드는 Cloudflare와 방문자 간의 연결만 SSL을 사용하며, 오리진 서버까지의 연결은 암호화되지 않은 프로토콜을 사용합니다. 이 모드는 오리진이 TLS를 지원하지 않을 때 유용하지만, 보안 측면에서는 취약할 수 있습니다. 예를 들어, 사이트 소유자가 SSL 인증서 설치에 어려움을 겪는 경우가 이에 해당합니다.
반대로, Full 모드는 방문자의 요청 프로토콜을 따라 오리진 서버에도 SSL을 사용합니다. 인증서를 검증하지 않기 때문에 자체 서명 인증서나 유효기간이 만료된 인증서에서도 작동할 수 있습니다. 그러나, 무제한적인 보안은 기대하기 어렵기에 Full 모드를 사용할 때는 주의가 필요합니다.
Full vs Full (strict): 어떤 차이가 있나?
Full (strict)는 Full 모드와 비슷하지만, 오리진 서버의 인증서를 엄격하게 검증합니다. 공인 인증기관에서 발급된 유효한 인증서가 필요하며, 가장 안전한 방식입니다. 공적으로 신뢰할 수 있는 인증서를 제공하는 Let’s Encrypt나 Cloudflare Origin CA를 사용하면 됩니다.
이 모드는 악성 연결로부터 오리진을 보호하고자 할 때 적합합니다. 한 사례로 인터넷 쇼핑몰 운영자는 고객 정보를 보호하기 위해 Full (strict) 모드를 사용하여 데이터 보안을 강화했습니다.
리디렉션 루프: 왜 생기는가?
리디렉션 루프는 주로 SSL/TLS 암호화 모드 설정 불일치에서 발생합니다. 예를 들어, Flexible 모드를 사용하는 경우 오리진에서 HTTPS 리디렉션을 사용하면 반복 루프가 생깁니다. 이 문제를 해결하려면 오리진의 HTTPS 리디렉션을 제거하거나 Full 이상의 모드로 전환해야 합니다.
또한, Always Use HTTPS 옵션이 활성화된 환경에서는 오리진이 HTTPS 요청을 HTTP로 리디렉션할 때 루프가 발생합니다. 이 때는 오리진의 설정을 변경하거나 Always Use HTTPS 옵션을 비활성화하면 문제를 피할 수 있습니다.
설정 검토: Always Use HTTPS와 HSTS
Always Use HTTPS 옵션은 모든 클라이언트의 요청을 강제로 HTTPS로 변환합니다. 이 옵션이 유용할 수 있지만, 오리진 설정과 충돌할 경우 루프 문제가 발생합니다. 만약 이 옵션을 활용하려면 오리진의 HTTPS 설정을 꼼꼼하게 점검해야 합니다.
HSTS는 클라이언트 브라우저가 항상 HTTPS로 연결되도록 지시합니다. 암호화 모드가 Off이거나 오리진이 HTTPS를 HTTP로 리디렉션할 때 루프가 이루어지기도 합니다. HSTS를 사용할 때는 반드시 오리진과의 핸드셰이크를 고려해야 합니다.
해결 요약: 어떤 설정이 최적일까?
최적의 설정은 사이트와 오리진 환경에 따라 다릅니다. 일반적으로 Flexible 모드는 오리진이 TLS를 지원하지 않을 때 쓰지만, Full (strict) 모드가 보안을 고려할 때 권장됩니다.
| 설정 | 특징 | 적용 환경 |
|---|---|---|
| Flexible | 접속만 암호화 | 오리진이 TLS 미지원 |
| Full (strict) | 완전 암호화 | 보안 최우선 사이트 |
Cloudflare SSL/TLS 암호화 모드를 설정할 때는 사이트의 보안 수준과 오리진 서버의 환경을 종합적으로 고려해야 합니다. 적절한 선택을 통해 리디렉션 루프 같은 문제를 미리 방지하고, 사이트의 안정성을 높일 수 있습니다.
참고 안내: 설정을 바꾸기 전에는 현재 값을 메모해 두거나 백업해 두세요. 서비스별 최신 절차는 공식 문서가 기준이며, 이 글은 공식 문서를 바탕으로 이해를 돕기 위해 정리한 내용입니다.