Skip to main content

타사 ACME 클라이언트를 사용한 자동화 예

CertCentral을 사용하면 타사 ACME 클라이언트를 사용하여 인증서를 자동화할 수 있습니다. 그러한 클라이언트의 일례로 EFF의 Certbot이 있습니다.

여기의 예는 Certbot 클라이언트를 사용하여 Apache 웹 서버에 대한 인증서 자동화 작업을 시작하는 방법을 보여줍니다.

이 예에서는 Certbot을 사용하지만 DigiCert는 모든 ACME 클라이언트 또는 웹 서버를 지원합니다.

참고

Kubernetes cert-manager를 사용하여 TLS/SSL 인증서를 만들고 관리하는 방법에 대한 지침은 Kubernetes로 cert-manager 및 DigiCert ACME 서비스 구성을 참조하세요.

시작하기 전에

  • 소프트웨어 제공자의 지침에 따라 선호하는 ACME 클라이언트를 설치하고 구성했는지 확인하십시오.

  • CertCentral에서 선호하는 ACME 클라이언트에 대한 ACME 디렉터리 URL을 설정하십시오. 참조: 호스트 자동화를 위해 타사 ACME 클라이언트 사용.

  • 웹 서버에 대한 인증서를 설치할 때는 루트 권한이 필요합니다.

Certbot: 인증서 발급 및 설치

certbot-auto 스크립트를 설치한 경우 명령에서 certbot./certbot-auto로 바꿉니다. certbot-auto를 서버의 PATH 구성에 추가하지 않은 경우 경로를 지정해야 할 수도 있습니다.

참고

ACME 오류 코드: ACME는 CertCentral API와 동일한 오류 및 오류 메시지를 반환합니다. 오류 코드의 목록 및 그 의미는 오류를 참조하십시오.

  1. 예를 들어 SSH를 사용하여 웹 서버에서 터미널 세션을 엽니다.

  2. 터미널 프롬프트에서 CertBot 및 아래 명령 구문을 사용하여 인증서를 요청합니다.

    • YOUR-KEY-IDENTIFIER를 외부 계정 바인딩 KID로 교체합니다.

    • YOUR-HMAC-KEY를 외부 계정 바인딩 HMAC로 교체합니다.

    • YOUR-ACME-URL을 이전에 생성한 ACME 디렉터리 URL로 교체해야 합니다.

    • FQDN을(를) 인증서로 보호하려는 정규화된 도메인 이름으로 교체해야 합니다. 각 FQDN에 대해 추가로 -d 옵션을 추가합니다.

      sudo certbot --apache --register-unsafely-without-email --eab-kid=YOUR-KEY-IDENTIFIER --eab-hmac-key=YOUR-HMAC-KEY --server “YOUR-ACME-URL” -d FQDN

      예제:

      sudo certbot --apache --register-unsafely-without-email --eab-kid=zcwmKf9sCnDUZsbCOgnv1ijy46l6UeEYCavSQQirl-g --eab-hmac-key=RHZraHBXQUxWTEFGdFhndjRVNmV3S3F6c2VNZDM1QzRURGhjdHF3S1NublJjN3dhVUFObzA0SXJwVHBnU2xnRA --server “https://acme.digicert.com/v2/acme/directory/” -d digicert.com -d www.digicert.com
  3. 필요에 따라 사용자 지정한 Certbot 명령을 입력합니다.

    이 설명에 사용된 명령 및 옵션에 대한 추가 정보는 Certbot: ACME 자동화 옵션을 참조하십시오.

  4. 서비스 약관을 수락하도록 요청을 받을 것입니다. "A”를 입력하고 Enter를 누릅니다.

    현재 DigiCert는 ACME에 대한 추가적 서비스 약관은 없습니다.

    참고

    요청에 Certbot이 찾을 수 없는 가상 호스트를 포함하는 경우 인증서를 설치하려는 가상 호스트를 선택하도록 안내를 받을 것입니다. Apache에서는 ServerName에 대한 가상 디렉터리 목록을 확인하여 FQDN을 일치시킵니다.

  5. HTTP 트래픽을 HTTPS로 리디렉션할 것인지 선택합니다.

    리디렉션을 선택하면 웹 사이트에 HTTP 액세스를 사용 중지합니다.

  6. 완료했으면 서버는 다음 성공 메시지를 표시합니다. "축하합니다! 도메인을 성공적으로 활성화했습니다..."

ACME 인증서 요청이 완료되고 새로 발급된 인증서가 웹 서버에 설치됩니다. 웹사이트를 방문하여 인증서가 제자리에 있는지 확인하십시오.

Certbot: 인증서 갱신 및 재발급

인증서가 만료되었거나 갱신해야 하는 경우 인증서를 갱신합니다. 인증서가 누락되었거나 해지된 경우 인증서를 다시 발급합니다.

갱신 및 다시 발급하려면 아래 Certbot 명령 구문을 사용합니다.

sudo certbot --apache --register-unsafely-without-email --eab-kid=YOUR-KEY-IDENTIFIER --eab-hmac-key=YOUR-HMAC-KEY --server “YOUR-ACME-URL” -d FQDN

참고

아래 예처럼 orderId 및 action을 URL에 추가합니다.

예 (갱신):

sudo certbot --apache --register-unsafely-without-email --eab-kid=zcwmKf9sCnDUZsbCOgnv1ijy46l6UeEYCavSQQirl-g --eab-hmac-key=RHZraHBXQUxWTEFGdFhndjRVNmV3S3F6c2VNZDM1QzRURGhjdHF3S1NublJjN3dhVUFObzA0SXJwVHBnU2xnRA --server “https://acme.digicert.com/v2/acme/directory/?orderId=57718329&action=renew” -d digicert.com -d www.digicert.com

예 (재발급):

sudo certbot --apache --register-unsafely-without-email --eab-kid=zcwmKf9sCnDUZsbCOgnv1ijy46l6UeEYCavSQQirl-g --eab-hmac-key=RHZraHBXQUxWTEFGdFhndjRVNmV3S3F6c2VNZDM1QzRURGhjdHF3S1NublJjN3dhVUFObzA0SXJwVHBnU2xnRA --server “https://acme.digicert.com/v2/acme/directory/?orderId=57718329&action=reissue” -d digicert.com -d www.digicert.com

참고

여러 해 플랜 계정인 경우 다음과 같이 합니다.

  • 주문 적용 기간이 곧 만료되는 경우 인증서를 갱신합니다.

  • 인증서가 주문 적용 기간 내에 해지되었거나 곧 만료되는 경우 다시 발급합니다.

Certbot: 복제본 인증서 발급

보안성을 높이고 여러 서버 사이에 인증서의 설치를 단순화하려면 각 서버에 대해 복제본 인증서를 발급합니다.

참고

복제 인증서의 세부 정보는 원본 인증서와 동일합니다. 복제 인증서는 절대로 DigiCert가 인증서의 이전 사본을 철회할 필요가 없습니다.

복제본 인증서를 발급하려면 아래 Certbot 명령 구문을 사용합니다.

sudo certbot --apache --register-unsafely-without-email --eab-kid=YOUR-KEY-IDENTIFIER --eab-hmac-key=YOUR-HMAC-KEY --server “YOUR-ACME-URL” -d FQDN

참고

아래 예처럼 orderId 및 action을 URL에 추가합니다.

예제:

sudo certbot --apache --register-unsafely-without-email --eab-kid=zcwmKf9sCnDUZsbCOgnv1ijy46l6UeEYCavSQQirl-g --eab-hmac-key=RHZraHBXQUxWTEFGdFhndjRVNmV3S3F6c2VNZDM1QzRURGhjdHF3S1NublJjN3dhVUFObzA0SXJwVHBnU2xnRA --server “https://acme.digicert.com/v2/acme/directory/?orderId=57718329&action=duplicate” -d digicert.com -d www.digicert.com

Certbot: ACME 자동화 옵션

  • certbot: CertBot 실행 파일을 실행합니다.

  • certbot-auto: certbot-auto 스크립트가 설치된 경우 certbot 대신에 사용합니다. certbot-auto를 서버의 PATH 구성에 추가하지 않은 경우 경로를 지정해야 할 수도 있습니다.

  • --apache: 인증서를 설치하는 Apache Certbot 플러그인을 지정합니다. 옵션.

  • --register-unsafely-without-email: ACME 계정을 만드는 것을 건너뛸 수 있습니다. 요청이 이미 CertCentral 계정에 연결되어 있기 때문에 필요하지 않습니다. 옵션.

  • --server “ URL : 어떤 ACME 서버가 요청을 이행해야 하는지 지정합니다. 이 옵션 다음에 ACME 디렉터리 URL을 따옴표 안에 넣습니다.

  • --eab-kid=YOURKID: 일반 URL의 일부분이 키 식별자를 지정합니다.

  • --eab-hmac-key=YOURHMACKEY: 응답을 서명하는 데 사용되는 키를 지정합니다.

  • -d YOUR DOMAIN: 인증서 포함된 정규화된 도메인 이름입니다. 인증서의 각 FQDN에 대해 –d YOURDOMAIN을 포함시킵니다. 이 옵션을 포함시키지 않는 경우, Certbot은 구성된 가상 호스트를 기준으로 포함하려는 도메인에 대해 입력을 요구할 것입니다. 옵션.

  • orderId “YOURORDERID: 기존 인증서의 주문 ID 유형을 지정합니다.

  • action “YOURACTION: 요청하는 인증서에 작업을 지정합니다.

Certbot 명령의 전체 목록은 certbot –help를 이용해 터미널에서 확인하거나 Certbot 설명서 웹 사이트에 있는 명령 목록을 참조하십시오.

다음 단계

ACME 인증서 요청이 완료되고 새로 발급된 인증서가 웹 서버에 설치됩니다. 웹사이트를 방문하여 인증서가 제자리에 있는지 확인하십시오.

동일한 인증서 제품 및 사전 유효성 검증한 조직에 대해 추가 인증서 요청을 하기 위해 ACME 디렉터리 URL을 다시 사용할 수 있습니다.

다른 제품 또는 조직에 대해 인증서를 요청하려면 해당 제품 또는 조직에 대해 고유한 ACME 디렉터리 URL을 만듭니다. 참조: 호스트 자동화를 위해 타사 ACME 클라이언트 사용.