7장. 스마트 카드 인증에 대한 ID 관리 구성

IdM(Identity Management)은 다음을 사용하여 스마트 카드 인증을 지원합니다.

  • IdM 인증 기관에서 발급한 사용자 인증서
  • 외부 인증 기관에서 발급한 사용자 인증서

두 가지 유형의 인증서에 대해 IdM에서 스마트 카드 인증을 구성할 수 있습니다. 이 시나리오에서 rootca.pem CA 인증서는 신뢰할 수 있는 외부 인증 기관의 인증서를 포함하는 파일입니다.

IdM의 스마트 카드 인증에 대한 자세한 내용은 스마트 카드 인증 이해 를 참조하십시오.

스마트 카드 인증 구성에 대한 자세한 내용은 다음을 수행합니다.

7.1. 스마트 카드 인증을 위한 IdM 서버 구성

IdM(Identity Management) CA에서 신뢰하는 <EXAMPLE.ORG> 도메인에서 인증서를 발급한 사용자의 스마트 카드 인증을 활성화하려면 IdM 서버를 구성하는 ipa-advise 스크립트를 실행할 때 다음 인증서를 가져와야 합니다.

  • <EXAMPLE.ORG> CA 인증서를 직접 발급했거나 하위 CA 중 하나 이상을 통해 발급한 루트 CA의 인증서입니다. 기관에서 인증서를 발급한 웹 페이지에서 인증서 체인을 다운로드할 수 있습니다. 자세한 내용은 인증서 인증을 사용하도록 브라우저 구성에서 1-4a 단계를 참조하십시오.
  • IdM CA 인증서입니다. IdM CA 인스턴스가 실행 중인 IdM 서버의 /etc/ipa/ca.crt 파일에서 CA 인증서를 가져올 수 있습니다.
  • 모든 중간 CA의 인증서입니다. 즉 <EXAMPLE.ORG> CA와 IdM CA 사이입니다.

스마트 카드 인증을 위해 IdM 서버를 구성하려면 다음을 수행합니다.

  1. PEM 형식으로 CA 인증서를 사용하여 파일을 가져옵니다.
  2. 내장된 ipa-advise 스크립트를 실행합니다.
  3. 시스템 구성을 다시 로드합니다.

사전 요구 사항

  • IdM 서버에 대한 루트 액세스 권한이 있습니다.
  • 루트 CA 인증서와 모든 중간 CA 인증서가 있습니다.

절차

  1. 구성을 수행할 디렉터리를 생성합니다.

    [root@server]# mkdir ~/SmartCard/
  2. 디렉터리로 이동합니다.

    [root@server]# cd ~/SmartCard/
  3. PEM 형식의 파일에 저장된 관련 CA 인증서를 가져옵니다. CA 인증서가 DER와 같은 다른 형식의 파일에 저장된 경우 PEM 형식으로 변환합니다. IdM 인증 기관 인증서는 PEM 형식이며 /etc/ipa/ca.crt 파일에 있습니다.

    DER 파일을 PEM 파일로 변환합니다.

    # openssl x509 -in <filename>.der -inform DER -out <filename>.pem -outform PEM
  4. 편의를 위해 구성을 수행하려는 디렉터리에 인증서를 복사합니다.

    [root@server SmartCard]# cp /tmp/rootca.pem ~/SmartCard/
    [root@server SmartCard]# cp /tmp/subca.pem ~/SmartCard/
    [root@server SmartCard]# cp /tmp/issuingca.pem ~/SmartCard/
  5. 선택적으로 외부 인증 기관의 인증서를 사용하는 경우 openssl x509 유틸리티를 사용하여 IssuerSubject 값이 올바른지 확인하려면 PEM 형식의 파일 내용을 확인합니다.

    [root@server SmartCard]# openssl x509 -noout -text -in rootca.pem | more
  6. 관리자 권한으로 내장 ipa-advise 유틸리티를 사용하여 구성 스크립트를 생성합니다.

    [root@server SmartCard]# kinit admin
    [root@server SmartCard]# ipa-advise config-server-for-smart-card-auth > config-server-for-smart-card-auth.sh

    config-server-for-smart-card-auth.sh 스크립트는 다음 작업을 수행합니다.

    • IdM Apache HTTP 서버를 구성합니다.
    • KDC (Key Distribution Center)에서 Kerberos (PKINIT)에서 초기 인증의 공개 키 암호화를 활성화합니다.
    • 스마트 카드 권한 부여 요청을 수락하도록 IdM 웹 UI를 구성합니다.
  7. 스크립트를 실행하고 루트 CA 및 하위 CA 인증서가 포함된 PEM 파일을 인수로 추가합니다.

    [root@server SmartCard]# chmod +x config-server-for-smart-card-auth.sh
    [root@server SmartCard]# ./config-server-for-smart-card-auth.sh rootca.pem subca.pem issuingca.pem
    Ticket cache:KEYRING:persistent:0:0
    Default principal: admin@IDM.EXAMPLE.COM
    [...]
    Systemwide CA database updated.
    The ipa-certupdate command was successful
    참고

    하위 CA 인증서보다 먼저 루트 CA의 인증서를 인수로 추가하고 CA 또는 하위 CA 인증서가 만료되지 않았는지 확인합니다.

  8. 선택적으로 사용자 인증서를 발급한 인증 기관이 OCSP 검사를 IdM 웹 UI에 대한 인증을 비활성화해야 할 수 있습니다.

    1. /etc/httpd/conf.d/ssl.conf 파일에서 SSLOCSPEnable 매개변수를 off 로 설정합니다.

      SSLOCSPEnable off
    2. 변경 사항을 즉시 적용하려면 Apache 데몬(httpd)을 다시 시작합니다.

      [root@server SmartCard]# systemctl restart httpd
    주의

    IdM CA에서 발급한 사용자 인증서만 사용하는 경우 OCSP 검사를 비활성화하지 마십시오. OCSP 응답자는 IdM의 일부입니다.

    OCSP 검사를 계속 활성화하는 방법에 대한 지침은 Apache mod_ssl 구성 옵션에서 SSLOCSPDefaultResponder 지시문을 참조하십시오.

이제 서버가 스마트 카드 인증용으로 구성되어 있습니다.

참고

전체 토폴로지에서 스마트 카드 인증을 활성화하려면 각 IdM 서버에서 절차를 실행합니다.