Menu Close

Red Hat Training

A Red Hat training course is available for RHEL 8

54장. 스마트 카드 인증을 위한 ID 관리 구성

스마트 카드를 기반으로 하는 인증은 암호에 대한 대안입니다. 개인 키와 인증서의 형태로 스마트 카드에 사용자 자격 증명을 저장할 수 있으며 특수 소프트웨어 및 하드웨어를 사용하여 액세스할 수 있습니다. 스마트 카드를 리더 또는 USB 포트에 저장하고 암호를 제공하는 대신 스마트 카드의 PIN 코드를 제공합니다.

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

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

이 사용자 사례에서는 두 유형의 인증서 모두에 대해 IdM에 스마트 카드 인증을 설정하는 방법을 보여줍니다. 사용자 사례에서 the smartcard_ca.pem CA 인증서는 신뢰할 수 있는 외부 인증 기관의 인증서를 포함하는 파일입니다.

사용자 사례에는 다음 모듈이 포함되어 있습니다.

54.1. 스마트 카드 인증을 위해 IdM 서버 구성

LDAP 고유 이름(DN)이 CN=Certificate Authority,DC=EXAMPLE,DC= ORG인 EXAMPLE,DC=ORG 도메인의 인증 기관에서 발급한 사용자에 대해 스마트 카드 인증을 활성화하려면 IdM 서버를 구성하는 스크립트를 사용하여 실행할 수 있도록 권한의 인증서를 가져와야 합니다. 예를 들어, 기관에서 인증서를 발급한 웹 페이지에서 인증서를 다운로드할 수 있습니다. 자세한 내용은 인증서 인증을 활성화하기 위해 브라우저 구성의 1단계 - 4a를 참조하십시오.

IdM 인증 기관에서 인증서를 발급한 IdM 사용자에 대해 스마트 카드 인증을 사용하려면 IdM CA가 실행 중인 IdM 서버의 /etc/ipa/ca.crt 파일에서 CA 인증서를 가져옵니다.

이 섹션에서는 스마트 카드 인증을 위해 IdM 서버를 구성하는 방법에 대해 설명합니다. 먼저, PEM 형식의 CA 인증서가 있는 파일을 가져온 다음 기본 제공 ipa-advise 스크립트를 실행합니다. 마지막으로 시스템 구성을 다시 로드합니다.

사전 요구 사항

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

절차

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

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

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

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

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

    [root@server SmartCard]# cp /etc/ipa/ca.crt ~/SmartCard/
    [root@server SmartCard]# cp /tmp/smartcard_ca.pem ~/SmartCard/
  5. 선택적으로 외부 인증 기관의 인증서를 사용하는 경우 openssl x509 유틸리티를 사용하여 PEM 형식으로 파일의 내용을 확인하여 발급자주체 값이 올바른지 확인합니다.

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

    [root@server SmartCard]# kinit admin
    [root@server SmartCard]# sudo 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(키 배포 센터)에서 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 smartcard_ca.pem ca.crt
    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(Online Certificate Status Protocol) 응답자를 제공하지 않는 경우 IdM 웹 UI에 대한 인증을 OCSP 검사를 비활성화해야 할 수도 있습니다.

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

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

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

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

    OCSP 검사를 계속 활성화하는 방법에 대한 지침이 있지만 사용자 인증서가 OCSP 서비스 요청을 수신 대기하는 CA에 대한 정보가 포함되지 않은 경우 IdM 서버가 사용자 인증서를 거부하지 않는 경우 Apache mod_ssl 구성 옵션의 SSLOCSPDefaultResponder 지시문을 참조하십시오.

이제 서버는 스마트 카드 인증을 위해 구성됩니다.

참고

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