GitLab Pages SSL/TLS 인증서
GitLab v19.5Offering: GitLab.com, GitLab Self-Managed
요약
GitLab.com의 모든 GitLab Pages 프로젝트는 기본 Pages 도메인(*.gitlab.io)에서 HTTPS로 제공됩니다. GitLab Pages 프로젝트의 사용자 지정 (서브)도메인에 인증서를 반드시 추가해야 하는 것은 아니지만, 추가할 것을 권장합니다.
GitLab.com의 모든 GitLab Pages 프로젝트는 기본 Pages 도메인(*.gitlab.io)에서
HTTPS로 제공됩니다. 사용자 지정 (서브)도메인으로 Pages 프로젝트를
설정한 뒤 HTTPS로 보호하려면 해당 (서브)도메인에 대한
인증서를 발급받아 프로젝트에
설치해야 합니다.
GitLab Pages 프로젝트의 사용자 지정 (서브)도메인에 인증서를 반드시 추가해야 하는 것은 아니지만, 추가할 것을 권장합니다.
HTTPS의 중요성#
GitLab Pages 사이트는 정적입니다. 서버 측 스크립트를 사용하지 않고 신용카드 거래도 처리하지 않습니다. 그럼에도 보안 연결이 필요한 이유는 다음과 같습니다.
HTTPS가 1990년에 등장했을 때 SSL은 금융 거래를 다루는 은행이나 쇼핑 사이트 같은 대기업에만 필요한 "특별한" 보안 조치로 여겨졌습니다.
지금은 상황이 다릅니다. Internet Security Research Group(ISRG)의 대표 Josh Aas는 다음과 같이 말합니다.
우리는 HTTPS가 거의 모든 웹사이트에 중요하다는 점을 알게 되었습니다. 비밀번호 로그인을 제공하는 모든 웹사이트, 어떤 방식으로든 사용자를 추적하는 모든 웹사이트, 콘텐츠가 변조되지 않기를 바라는 모든 웹사이트, 그리고 이용 사실을 남에게 알리고 싶지 않을 수 있는 콘텐츠를 제공하는 모든 사이트에 HTTPS가 중요합니다. 또한 HTTPS로 보호되지 않은 사이트가 다른 사이트를 공격하는 데 사용될 수 있다는 점도 확인했습니다.
인증서가 중요한 이유는 인증과 검증의 연결 고리를 통해 클라이언트(사용자와 방문자)와 서버(사이트가 호스팅되는 곳) 사이의 연결을 암호화하기 때문입니다.
HTTPS를 지원하는 단체#
웹 전체를 보호하려는 큰 흐름이 있습니다. W3C는 이 취지를 전적으로 지지하며 그 이유를 상세히 설명합니다. Mozilla Security Blog의 필자 Richard Barnes는 Firefox가 HTTP를 더 이상 사용하지 않고 보안되지 않은 연결을 받지 않게 될 것이라고 제안했습니다. 최근 Mozilla는 HTTPS의 중요성을 다시 강조하는 커뮤니케이션을 발표했습니다.
인증서 발급#
GitLab Pages는 인증 기관에서 발급했거나 자체 서명 인증서로 발급된 PEM 형식의 인증서를 허용합니다. 자체 서명 인증서는 일반적으로 공개 웹사이트에 사용되지 않습니다. 보안상의 이유와 브라우저가 사이트 인증서를 신뢰하도록 하기 위해서입니다.
인증서마다 보안 수준이 다릅니다. 예를 들어 정적인 개인 웹사이트는 온라인 뱅킹 웹 애플리케이션과 같은 수준의 보안을 요구하지 않습니다.
일부 인증 기관은 인터넷을 모두에게 더 안전하게 만들기 위해 무료 인증서를 제공합니다. 가장 널리 쓰이는 것은 Let's Encrypt이며, 대부분의 브라우저가 신뢰하는 인증서를 발급하고 오픈 소스이며 무료로 사용할 수 있습니다. 사용자 지정 도메인에 HTTPS를 켜려면 GitLab Pages와 Let's Encrypt 통합을 참고합니다.
이에 못지않게 널리 쓰이는 것은 Cloudflare가 발급하는 인증서이며, Cloudflare는 무료 CDN 서비스도 제공합니다. Cloudflare 인증서는 최대 15년까지 유효합니다. 관련 내용은 GitLab Pages 웹사이트에 Cloudflare 인증서를 추가하는 방법 튜토리얼을 참고합니다.