다음을 통해 공유


Active Directory 인증서 서비스를 사용하는 PKI 디자인 고려 사항

Active Directory 인증서 서비스를 사용하여 공개 키 인프라 배포를 계획할 때 고려해야 할 몇 가지 사항이 있습니다. 여기에서 PKI 환경을 성공적으로 설치하고 구성하기 위해 계획해야 하는 항목을 찾을 수 있습니다.

개략적으로 다음을 수행해야 합니다.

  • 조직에 적합한 PKI(공개 키 인프라)를 계획합니다.
  • HSM 공급업체 지침에 따라 HSM(하드웨어 보안 모듈)을 설치하고 구성합니다(사용하려는 경우).
  • 기본 설치 설정을 수정하려는 경우 적절한 CAPolicy.inf설정을 만듭니다.
  • 암호화 옵션 선택
  • CA 이름 확인
  • 유효 기간 확인
  • CA 데이터베이스 선택
  • 기관 정보 액세스 및 인증서 해지 목록 배포 지점 설정

PKI 계획

조직에서 AD CS(Active Directory 인증서 서비스) 설치를 최대한 활용할 수 있도록 하려면 PKI 배포 계획을 적절히 수립해야 합니다. CA를 설치하기 전에 필요한 CA 수와 구성을 결정해야 합니다. 예를 들어 엔터프라이즈 루트 CA 또는 독립 실행형 루트 CA가 필요한가요? 인증서 승인 요청은 어떻게 처리되나요? 인증서 해지를 관리하려면 어떻게 해야 할까요? 적절한 PKI 디자인을 만드는 데는 시간이 오래 걸릴 수 있지만 PKI의 성공에는 중요합니다.

HSM 사용

HSM은 운영 체제와 별도로 관리되는 전용 하드웨어 디바이스입니다. 이러한 모듈은 서명 및 암호화 작업을 가속화하는 전용 암호화 프로세서 외에 CA 키용 보안 하드웨어 저장소를 제공합니다. 운영 체제에서는 CryptoAPI 인터페이스를 통해 HSM을 사용하며 HSM은 CSP(암호화 서비스 공급자) 디바이스 역할을 합니다.

HSM은 일반적으로 PCI 어댑터이지만 네트워크 기반 어플라이언스, 직렬 디바이스 및 USB 디바이스로도 사용할 수 있습니다. 조직에서 둘 이상의 CA를 구현하려는 경우 단일 네트워크 기반 HSM을 설치하고 이를 여러 CA에서 공유할 수 있습니다.

HSM을 사용하여 CA를 설정하려면 HSM에 저장해야 하는 키가 있는 CA를 설정하기 전에 HSM을 설치하고 구성해야 합니다.

CAPolicy.inf 파일 고려

파일은 CAPolicy.inf AD CS를 설치할 필요는 없지만 CA 설정을 사용자 지정하는 데 사용할 수 있습니다. 파일에는 CAPolicy.inf CA를 설치하거나 CA 인증서를 갱신할 때 사용되는 다양한 설정이 포함되어 있습니다. CAPolicy.inf 파일을 만들고 사용할 디렉터리(일반적으로C:\Windows)에 저장 %systemroot% 해야 합니다.

파일에 포함하는 CAPolicy.inf 설정은 주로 만들려는 배포 유형에 따라 달라집니다. 예를 들어 루트 CA에는 다음과 같은 파일이 있을 CAPolicy.inf 수 있습니다.

[Version]
Signature= "$Windows NT$"
[Certsrv_Server]
RenewalKeyLength=4096
RenewalValidityPeriod=Years
RenewalValidityPeriodUnits=20
LoadDefaultTemplates=0

암호화 옵션 선택

CA(인증 기관)에 대한 암호화 옵션을 선택하는 것은 해당 CA의 보안, 성능 및 호환성 면에서 중요한 의미를 가질 수 있습니다. 기본 암호화 옵션은 대부분의 CA에 적합할 수 있습니다. 사용자 지정 옵션을 구현하는 기능은 암호화에 대한 고급 이해와 이러한 유연성이 필요한 관리자 및 애플리케이션 개발자에게 유용할 수 있습니다. CSP(암호화 서비스 공급자) 또는 KSP(키 스토리지 공급자)를 사용하여 암호화 옵션을 구현할 수 있습니다.

CSP는 Windows 운영 체제에서 일반 암호화 기능을 제공하는 하드웨어 및 소프트웨어 구성 요소입니다. 다양한 암호화 및 서명 알고리즘을 제공하기 위해 CSP를 작성할 수 있습니다.

공급자, 해시 알고리즘 및 키 길이 선택할 때 사용하려는 애플리케이션 및 디바이스에서 지원할 수 있는 암호화 옵션을 신중하게 고려하세요. 가장 강력한 보안 옵션을 선택하는 것이 좋지만 일부 애플리케이션 및 디바이스에서는 이들 옵션을 지원하지 않습니다.

CA가 프라이빗 키를 액세스할 때 관리자 조작 허용 은 HSM(하드웨어 보안 모듈)에서 일반적으로 사용되는 옵션입니다. 이 옵션을 사용하면 암호화 공급자가 CA의 프라이빗 키에 액세스할 때 사용자에게 추가 인증을 요청하는 메시지를 표시할 수 있습니다. 예를 들어 모든 암호화 작업 전에 관리자가 암호를 입력하도록 요구합니다.

기본 제공 암호화 공급자는 다음 표에 설명된 대로 특정 키 길이 및 해시 알고리즘을 지원합니다.

암호화 공급자 키 길이 Hash algorithm
Microsoft Base Cryptographic Provider v1.0 - 512
- 1024
- 2048
- 4096
- SHA1
- MD2
- MD4
- MD5
Microsoft Base DSS Cryptographic Provider - 512
- 1024
SHA1
Microsoft Base Smart Card Crypto Provider - 1024
- 2048
- 4096
- SHA1
- MD2
- MD4
- MD5
Microsoft Enhanced Cryptographic Provider v1.0 - 512
- 1024
- 2048
- 4096
- SHA1
- MD2
- MD4
- MD5
Microsoft Strong Cryptographic Provider - 512
- 1024
- 2048
- 4096
- SHA1
- MD2
- MD4
- MD5
RSA#Microsoft Software Key Storage Provider - 512
- 1024
- 2048
- 4096
- SHA1
- SHA256
- SHA384
- SHA512
- MD2
- MD4
- MD5
DSA#Microsoft Software Key Storage Provider - 512
- 1024
- 2048
SHA1
ECDSA_P256#Microsoft Software Key Storage Provider 256 - SHA1
- SHA256
- SHA384
- SHA512
ECDSA_P384#Microsoft Software Key Storage Provider 384 - SHA1
- SHA256
- SHA384
- SHA512
ECDSA_P521#Microsoft Software Key Storage Provider 521 - SHA1
- SHA256
- SHA384
- SHA512
RSA#Microsoft Smart Card Key Storage Provider - 1024
- 2048
- 4096
- SHA1
- SHA256
- SHA384
- SHA512
- MD2
- MD4
- MD5
ECDSA_P256#Microsoft Smart Card Key Storage Provider 256 - SHA1
- SHA256
- SHA384
- SHA512
ECDSA_P384#Microsoft Smart Card Key Storage Provider 384 - SHA1
- SHA256
- SHA384
- SHA512
ECDSA_P521#Microsoft Smart Card Key Storage Provider 521 - SHA1
- SHA256
- SHA384
- SHA512

CA 이름 확인

조직의 CA(인증 기관)를 구성하기 전에 CA 명명 규칙을 설정해야 합니다.

모든 유니코드 문자를 사용하여 이름을 만들 수 있지만 상호 운용성이 중요한 경우 ANSI 문자 집합을 사용할 수도 있습니다. 예를 들어 CA 이름에 밑줄과 같은 특수 문자가 포함된 경우 특정 유형의 라우터는 네트워크 디바이스 등록 서비스를 사용하여 인증서를 등록할 수 없습니다.

라틴 문자가 아닌 문자(예: 키릴 자모, 아랍어 또는 중국어 문자)를 사용하는 경우 CA 이름에 64자 미만을 포함해야 하며, 라틴 문자가 아닌 문자만 사용하는 경우 CA 이름은 37자를 초과할 수 없습니다.

AD DS(Active Directory 도메인 Services)에서 서버를 CA로 구성할 때 지정하는 이름은 CA의 일반 이름이 됩니다. 일반 이름은 CA에서 발급하는 모든 인증서에 반영됩니다. 이러한 이유로 CA의 일반 이름에 정규화된 do기본 이름을 사용하지 않는 것이 중요합니다. 이렇게 하면 인증서 복사본을 가져오는 악의적인 사용자가 CA의 정규화된 do기본 이름을 식별하고 사용하여 잠재적인 보안 취약성을 만들 수 없습니다.

CA 이름은 컴퓨터의 이름(NetBIOS 또는 DNS 이름)과 동일하지 않아야 합니다. 또한 AD CS(Active Directory Certificate Services)가 설치된 후에는 CA에서 발급한 모든 인증서를 무효화하지 않고 서버 이름을 변경할 수 없습니다.

AD CS를 설치한 후 서버 이름을 변경하려면 CA를 제거하고 서버 이름을 변경한 다음, 동일한 키를 사용하여 CA를 다시 설치하고 기존 CA 키 및 데이터베이스를 사용하도록 레지스트리를 수정해야 합니다. 할 일의 이름을 바꾸면 CA를 다시 설치할 필요가 없습니다기본; 그러나 이름 변경을 지원하도록 CA를 다시 구성해야 합니다.

유효 기간 확인

인증서 기반 암호화에서는 공개 키 암호화를 사용하여 데이터를 보호하고 서명합니다. 시간이 지남에 따라 공격자는 퍼블릭 키로 보호된 데이터를 가져와 프라이빗 키를 추출하려고 시도할 수 있습니다. 시간과 리소스가 충분하다면 이 프라이빗 키를 손상시켜 보호된 모든 데이터를 보호되지 않은 상태로 만들 수 있습니다. 또한 인증서에 의해 보장된 이름을 시간이 지남에 따라 변경해야 할 수도 있습니다. 인증서는 이름과 공개 키 간의 바인딩이므로 둘 중 하나가 변경되면 인증서를 갱신해야 합니다.

모든 인증서에는 유효 기간이 있습니다. 유효 기간이 끝난 인증서는 더 이상 허용되거나 사용 가능한 자격 증명으로 간주되지 않습니다.

CA는 자체 유효 기간을 초과하여 유효한 인증서를 발급할 수 없습니다. 유효 기간의 절반이 지났을 때 CA 인증서를 갱신하는 것이 가장 좋습니다. CA를 설치할 때 이 날짜를 계획하고 이후 작업으로 기록되도록 해야 합니다.

CA 데이터베이스 선택

인증 기관의 데이터베이스는 하드 드라이브의 파일입니다. 이 파일 외에 다른 파일은 트랜잭션 로그 역할을 하며, 변경 내용이 적용되기 전에 데이터베이스의 모든 수정 사항을 받습니다. 이러한 파일은 자주 동시에 액세스할 수 있으므로 데이터베이스 및 트랜잭션 로그를 별도의 볼륨에 유지할 수 있습니다.

인증서 데이터베이스와 로그 파일의 위치는 다음 레지스트리 위치에 유지됩니다.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration

레지스트리에는 다음 값이 포함되어 있습니다.

  • DBDirectory
  • DBLogDirectory
  • DBSystemDirectory
  • DBTempDirectory

기관 정보 액세스 및 인증서 해지 목록 배포 지점 설정

루트 또는 하위 CA가 설치되면 CA가 인증서를 발급하기 전에 AIA(기관 정보 액세스) 및 CDP(CRL 배포 지점) 확장을 구성해야 합니다. AIA 확장은 CA에 대한 최신 인증서를 찾을 수 있는 위치를 지정하고, CDP 확장은 CA에서 서명한 최신 CRL을 찾을 수 있는 위치를 지정합니다. 이러한 확장은 해당 CA에서 발급한 모든 인증서에 적용됩니다.

이러한 확장을 구성하면 CA가 발급하는 각 인증서에 이 정보가 포함되어 모든 클라이언트에서 사용할 수 있도록 합니다. 확장을 사용하면 확인되지 않은 인증서 체인 또는 인증서 해지로 인한 오류 수가 줄어들어 VPN 연결 실패, 스마트 카드 로그인 실패 또는 확인되지 않은 전자 메일 서명이 발생할 수 있습니다.

CA 관리자는 CRL 배포 지점과 CDP 및 AIA 인증서 발급 위치를 추가, 제거 또는 수정할 수 있습니다. CRL 배포 지점의 URL 수정은 새로 발급된 인증서에만 영향을 줍니다. 이전에 발급된 인증서는 원래 위치를 계속 참조하므로 CA에서 인증서를 배포하기 전에 이러한 위치를 설정해야 합니다.

CDP 확장 URL을 구성할 때 다음 지침을 고려하세요.

  • 오프라인 루트 CA에 델타 CRL을 게시하지 마세요. 오프라인 루트 CA에서 많은 인증서를 해지하지 않으므로 델타 CRL이 필요하지 않을 수 있습니다.
  • 필요에 따라 인증 기관의 속성 확장 탭의 확장 탭에서 기본 및 LDAP://https:// URL 위치를 조정합니다.
  • 조직 외부의 사용자 및 애플리케이션에서 인증서 유효성 검사를 수행할 수 있도록 HTTP 인터넷 또는 엑스트라넷 위치에 CRL을 게시합니다. 클라이언트가 HTTP 및 LDAP를 사용하여 CRL 데이터를 검색할 수 있도록 CDP 위치에 대한 LDAP 및 HTTP URL을 게시할 수 있습니다.
  • Windows 클라이언트는 유효한 CRL이 검색될 때까지 항상 URL 목록을 순서대로 검색합니다.
  • Windows가 아닌 운영 체제를 실행하는 클라이언트에 액세스 가능한 CRL 위치를 제공하려면 HTTP CDP 위치를 사용합니다.

다음 단계

AD CS 배포에 대한 자세한 내용은 Active Directory 인증서 서비스 구현 및 관리를 참조 하세요.