18.2. certmonger를 사용하여 서비스에 대한 IdM 인증서 가져오기

IdM(Identity Management) 클라이언트에서 실행되는 브라우저와 웹 서비스 간의 통신이 안전하고 암호화되었는지 확인하려면 TLS 인증서를 사용하십시오. IdM CA(인증 기관)에서 웹 서비스의 TLS 인증서를 가져옵니다.

IdM 클라이언트에서 실행 중인 서비스의 IdM 인증서(HTTP/my_company.idm.example.com@IDM.EXAMPLE.COM)를 받으려면 certmonger 를 사용하십시오.

certmonger 를 사용하여 인증서를 자동으로 요청하면 certmonger 가 인증서를 갱신할 때 인증서를 관리하고 갱신할 수 있습니다.

certmonger 가 서비스 인증서를 요청할 때 발생하는 상황을 시각적으로 표현하려면 서비스 인증서를 요청하는 certmonger의 통신 흐름을 참조하십시오.

사전 요구 사항

  • 웹 서버는 IdM 클라이언트로 등록됩니다.
  • 프로시저를 실행하는 IdM 클라이언트에 대한 루트 액세스 권한이 있습니다.
  • 인증서를 요청하는 서비스는 IdM에 사전 존재할 필요가 없습니다.

절차

  1. HTTP 서비스가 실행 중인 my_company.idm.example.com IdM 클라이언트에서 HTTP/my_company.idm.example.com@IDM.EXAMPLE.COM principal에 해당하는 서비스의 인증서를 요청하고 이를 지정합니다.

    • 인증서는 로컬 /etc/pki/tls/certs/httpd.pem 파일에 저장됩니다.
    • 개인 키는 로컬 /etc/pki/tls/private/httpd.key 파일에 저장해야 합니다.
    • SubjectAltName 에 대한 extensionRequest가 my_company.idm.example.com 의 DNS 이름으로 서명 요청에 추가됩니다.

      # ipa-getcert request -K HTTP/my_company.idm.example.com -k /etc/pki/tls/private/httpd.key -f /etc/pki/tls/certs/httpd.pem -g 2048 -D my_company.idm.example.com -C "systemctl restart httpd"
      New signing request "20190604065735" added.

      위 명령에서 다음을 수행합니다.

      • ipa-getcert request 명령은 IdM CA에서 인증서를 가져올 수 있도록 지정합니다. ipa-getcert request 명령은 getcert request -c IPA 를 위한 바로 가기입니다.
      • g 옵션은 아직 없는 경우 생성할 키 크기를 지정합니다.
      • -D 옵션은 요청에 추가할 SubjectAltName DNS 값을 지정합니다.
      • c 옵션은 인증서를 가져온 후 certmongerhttpd 서비스를 다시 시작하도록 지시합니다.
      • 특정 프로필로 인증서를 발급하도록 지정하려면 -T 옵션을 사용합니다.
      • 지정된 CA에서 이름이 지정된 발행자를 사용하여 인증서를 요청하려면 -X ISSUER 옵션을 사용합니다.
      참고

      RHEL 8은 RHEL 7에서 사용되는 Apache와 다른 SSL 모듈을 사용합니다. SSL 모듈은 NSS가 아닌 OpenSSL에 의존합니다. 이러한 이유로 RHEL 8에서는 NSS 데이터베이스를 사용하여 HTTPS 인증서와 개인 키를 저장할 수 없습니다.

  2. 필요한 경우 요청 상태를 확인하려면 다음을 수행합니다.

    # ipa-getcert list -f /etc/pki/tls/certs/httpd.pem
    Number of certificates and requests being tracked: 3.
    Request ID '20190604065735':
        status: MONITORING
        stuck: no
        key pair storage: type=FILE,location='/etc/pki/tls/private/httpd.key'
        certificate: type=FILE,location='/etc/pki/tls/certs/httpd.crt'
        CA: IPA
    [...]

    출력에 요청이 MONITORING 상태임을 보여줍니다. 즉, 인증서를 가져왔음이 표시됩니다. 키 쌍과 인증서의 위치는 요청된 위치입니다.