69.2. 새 사용자 인증서 요청 및 클라이언트로 내보내기
IdM(Identity Management) 관리자는 IdM 환경의 사용자에 대한 인증서를 생성하여 사용자의 인증서 인증을 활성화하려는 IdM 클라이언트에 내보낼 수 있습니다.
인증서를 사용하여 인증하려는 사용자에게 이미 인증서가 있는 경우 이 절차를 따를 필요가 없습니다.
절차
선택적으로
~/certdb/
와 같은 새 디렉터리를 생성하고 임시 인증서 데이터베이스로 만듭니다. 메시지가 표시되면 NSS 인증서 DB 암호를 생성하여 후속 단계에서 생성할 인증서의 키를 암호화합니다.# mkdir
~/certdb/
# certutil -N -d~/certdb/
Enter a password which will be used to encrypt your keys. The password should be at least 8 characters long, and should contain at least one non-alphabetic character. Enter new password: Re-enter password:CSR(인증서 서명 요청)을 만들고 출력을 파일로 리디렉션합니다. 예를 들어
IDM.EXAMPLE
이라는 이름으로 CSR을 생성하려면 찾기 쉽도록 인증서 개인 키의 닉네임을.COM 영역에서
csridm_user 사용자에 대해
request.certificate
_idm_user
로 설정하고 제목을CN=idm_user,O=IDM.EXAMPLE.COM
:# certutil -R -d
~/certdb/
-a -g4096
-nidm_user
-s "CN=idm_user
,O=IDM.EXAMPLE.COM" >certificate_request.csr
메시지가 표시되면
certutil
을 사용하여 임시 데이터베이스를 만들 때 입력한 것과 동일한 암호를 입력합니다. 그런 다음 중지하도록 지시할 때까지 rundlomly를 계속 입력합니다.Enter Password or Pin for "NSS Certificate DB": A random seed must be generated that will be used in the creation of your key. One of the easiest ways to create a random seed is to use the timing of keystrokes on a keyboard. To begin, type keys on the keyboard until this progress meter is full. DO NOT USE THE AUTOREPEAT FUNCTION ON YOUR KEYBOARD! Continue typing until the progress meter is full:
인증서 요청 파일을 서버에 제출합니다. 새로 발급된 인증서와 연결할 Kerberos 사용자, 인증서를 저장할 출력 파일 및 선택적으로 인증서 프로필을 지정합니다. 예를 들어, 사용자 역할 확장이 추가된
프로필
,idm_user
@IDM.EXAMPLE.COM
주체의 인증서를 가져오고~/idm_user.pem 파일에 저장하려면 다음을 수행합니다.
# ipa cert-request
certificate_request.csr
--principal=idm_user
@IDM.EXAMPLE.COM
--profile-id=IECUserRoles
--certificate-out=~/idm_user.pem
NSS 데이터베이스에 인증서를 추가합니다. n
옵션을
사용하여 인증서가 NSS 데이터베이스의 개인 키와 일치하도록 이전에 CSR을 만들 때 사용한 것과 동일한 앵커를 설정합니다.t
옵션은 신뢰 수준을 설정합니다. 자세한 내용은 certutil(1) 도움말 페이지를 참조하십시오. i옵션은
입력 인증서 파일을 지정합니다. 예를 들어 NSS 데이터베이스에 ~/certdb/
데이터베이스의~/idm
닉네임 인증서를 추가하려면 다음을 수행합니다._user.pem 파일에 저장된 idm
_user# certutil -A -d
~/certdb/
-nidm_user
-t "P,," -i~/idm_user.pem
NSS 데이터베이스의 키가 쿡
으로 표시되지
않는지 확인합니다. 예를 들어~/certdb/
데이터베이스에 저장된 인증서가 분리되지 않았는지 확인하려면 다음을 수행합니다.# certutil -K -d
~/certdb/
< 0> rsa 5ad14d41463b87a095b1896cf0068ccc467df395 NSS Certificate DB:idm_userpk12util
명령을 사용하여 NSS 데이터베이스에서 PKCS12 형식으로 인증서를 내보냅니다. 예를 들어/root/certdb
NSS 데이터베이스에서idm_user
닉네임이 있는 인증서를~/idm_user.p12 파일로 내보내려면 다음을 수행합니다.
# pk12util -d
~/certdb
-o~/idm_user.p12
-nidm_user
Enter Password or Pin for "NSS Certificate DB": Enter password for PKCS12 file: Re-enter password: pk12util: PKCS12 EXPORT SUCCESSFULidm_user
에 대한 인증서 인증을 활성화할 호스트에 인증서를 전송합니다.# scp
~/idm_user.p12
idm_user@client.idm.example.com:/home/idm_user/
인증서가 전송된 호스트에서 보안상의 이유로 .pkcs12 파일이 'other' 그룹에 액세스할 수 없는 디렉토리를 만듭니다.
# chmod o-rwx
/home/idm_user/
보안상의 이유로 임시 NSS 데이터베이스와 .pkcs12 파일을 서버에서 제거합니다.
# rm
~/certdb/
# rm~/idm_user.p12