GitLab Pages Let’s Encrypt 인증서

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

GitLab Pages와 Let’s Encrypt(LE)의 통합을 통해 사용자는 LE 인증서를 사용하여 사용자 정의 도메인의 Pages 웹 사이트에 문제 없이 사용할 수 있습니다. GitLab이 사용자를 대신하여 인증서를 발급하고 업데이트하므로 사용자가 직접 처리할 필요가 없습니다.

Let’s Encrypt는 무료이며 자동화된 오픈 소스 인증 기관입니다.

경고: 이 기능은 사용자 정의 도메인에 대한 인증서만 다룹니다. 워크라운드 인증서는 이 이슈에서 추적됩니다. (Self-managed, Free, Premium 및 Ultimate 전용)

사전 요구 사항

도메인의 SSL 인증서를 자동으로 프로비저닝하려면 다음을 확인하십시오:

  • GitLab에서 프로젝트를 생성했는지 확인하여 웹 사이트의 소스 코드를 포함시켰는지 확인하십시오.
  • 도메인(example.com)을 확보하고 DNS 항목을 추가하여 Pages 웹사이트로 향하도록 지시했는지 확인하십시오. 최상위 도메인(.com)은 공개 접미어여야 합니다.
  • Pages 프로젝트에 도메인을 추가하고 소유권을 확인했는지 확인하십시오.
  • 사용자 정의 도메인을 통해 웹 사이트에 액세스하고 실행 중인지 확인했는지 확인하십시오.

GitLab과 Let’s Encrypt의 통합은 GitLab.com에서 활성화되어 있습니다. Self-managed GitLab 인스턴스의 경우, 귀하의 관리자가 이 기능을 활성화했는지 확인하십시오.

사용자 정의 도메인용 Let’s Encrypt 통합 활성화

요구 사항을 충족한 경우 다음 단계를 따라 Let’s Encrypt 통합을 활성화하십시오:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾으십시오.
  2. 배포 > Pages를 선택합니다.
  3. 도메인 이름 옆에 편집을 선택하십시오.
  4. Let’s Encrypt를 사용한 자동 인증서 관리 토글을 켭니다.

    Let's Encrypt 활성화

  5. 변경 사항 저장을 선택하십시오.

활성화된 후 GitLab은 LE 인증서를 획득하고 연결된 Pages 도메인에 추가합니다. 또한 GitLab은 자동으로 갱신합니다.

참고:

  • 인증서 발급 및 Pages 구성 업데이트는 최대 1시간이 소요될 수 있습니다.
  • 이미 SSL 인증서가 도메인 설정에 있는 경우 해당 인증서는 Let’s Encrypt 인증서로 교체될 때까지 계속 작동합니다.

문제 해결

“Let’s Encrypt 인증서 획득 중에 오류 발생했습니다” 오류

“Let’s Encrypt 인증서 획득 중에 오류가 발생했습니다”라는 오류가 발생하는 경우, 먼저 프로젝트의 설정 > 일반 > 가시성에서 페이지 사이트가 “모두”로 설정되어 있는지 확인하십시오. 이렇게 하면 Let’s Encrypt 서버가 페이지 사이트에 도달할 수 있습니다. 확인된 후에 다음 단계를 따라 인증서를 다시 획득할 수 있습니다:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾으십시오.
  2. 배포 > Pages를 선택합니다.
  3. 도메인 이름 옆에서 편집을 선택하십시오.
  4. 확인 상태에서 확인 다시 시도를 선택합니다 ().
  5. 여전히 동일한 오류가 발생하는 경우:
    1. 도메인에 올바른 CNAME 또는 A DNS 레코드가 하나만 설정되어 있는지 확인하십시오.
    2. 도메인에 AAAA DNS 레코드가 없는지 확인하십시오.
    3. 도메인이나 상위 도메인에 CAA DNS 레코드가 있는 경우, 여기에 letsencrypt.org를 포함했는지 확인하십시오.
    4. 도메인이 확인되었는지 확인하십시오.
    5. 1단계로 돌아갑니다.

메시지 “GitLab이 이 도메인을 위해 Let’s Encrypt SSL 인증서를 획득 중입니다. 이 과정에는 시간이 걸릴 수 있습니다. 나중에 다시 시도하십시오.”이 1시간 이상 더 걸리는 경우

Let’s Encrypt 통합을 활성화했지만 1시간 뒤에도 인증서가 없고 “GitLab이 이 도메인을 위해 Let’s Encrypt SSL 인증서를 획득 중입니다. 이 과정에는 시간이 걸릴 수 있습니다. 나중에 다시 시도하십시오.”라는 메시지가 표시되는 경우, 다음 단계를 따라 GitLab Pages의 도메인을 제거하고 다시 추가해 보십시오:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾으십시오.
  2. 배포 > Pages를 선택합니다.
  3. 도메인 이름 옆에서 제거를 선택하십시오.
  4. 도메인을 다시 추가하고 확인하십시오.
  5. 도메인용 Let’s Encrypt 통합을 활성화하십시오.
  6. 여전히 동일한 오류가 발생하는 경우:
    1. 도메인에 올바른 CNAME 또는 A DNS 레코드가 하나만 설정되어 있는지 확인하십시오.
    2. 도메인에 AAAA DNS 레코드가 없는지 확인하십시오.
    3. 도메인이나 상위 도메인에 CAA DNS 레코드가 있는 경우, 여기에 letsencrypt.org를 포함했는지 확인하십시오.
    4. 1단계로 돌아갑니다.