16.2. 새 사용자 인증서 요청 및 클라이언트로 내보내기
RHEL IdM(Identity Management) 관리자는 IdM 환경에서 사용자의 인증서를 생성하고 사용자의 인증서 인증을 활성화하려는 IdM 클라이언트에 내보낼 수 있습니다.
인증서를 사용하여 인증하려는 사용자에게 이미 인증서가 있는 경우 이 절차를 따를 필요가 없습니다.
프로세스
선택 사항: 새 디렉터리(예:
~/certdb/
)를 생성하고 임시 인증서 데이터베이스로 설정합니다. 메시지가 표시되면 NSS Certificate DB 암호를 생성하여 후속 단계에서 생성할 인증서에 대한 키를 암호화합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow CSR(인증서 서명 요청)을 생성하고 출력을 파일로 리디렉션합니다. 예를 들어
IDM.EXAMPLE.COM
영역에서idm_user
사용자에 대한certificate_request.csr
이라는 이름으로 CSR을 생성하려면 인증서 개인 키의 닉네임을idm_user
로 설정하여 쉽게 찾을 수 있도록 IDm_user로 설정하고,CN=idm_user,OID=M.EXAMPLE.COM
:certutil -R -d ~/certdb/ -a -g 4096 -n idm_user -s "CN=idm_user,O=IDM.EXAMPLE.COM" > certificate_request.csr
# certutil -R -d ~/certdb/ -a -g 4096 -n idm_user -s "CN=idm_user,O=IDM.EXAMPLE.COM" > certificate_request.csr
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 메시지가 표시되면
certutil
을 사용하여 임시 데이터베이스를 생성할 때 입력한 것과 동일한 암호를 입력합니다. 그런 다음 중지하도록 지시될 때까지 무작위로 입력합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 인증서 요청 파일을 서버에 제출합니다. 새로 발급한 인증서, 인증서를 저장할 출력 파일 및 필요한 경우 인증서 프로필과 연결할 Kerberos 주체를 지정합니다. 예를 들어, Cryostat
UserRoles
프로필의 인증서를 얻으려면 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
# ipa cert-request certificate_request.csr --principal=idm_user@IDM.EXAMPLE.COM --profile-id=IECUserRoles --certificate-out=~/idm_user.pem
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NSS 데이터베이스에 인증서를 추가합니다. 인증서가 NSS 데이터베이스의 개인 키와 일치하도록 이전에 CSR을 생성할 때 사용한 것과 동일한 닉네임을 설정하려면
-n
옵션을 사용합니다.t
옵션은 신뢰 수준을 설정합니다. 자세한 내용은 certutil(1) 도움말 페이지를 참조하십시오.i
옵션은 입력 인증서 파일을 지정합니다. 예를 들어 NSS 데이터베이스에 추가하려면~/certdb/
데이터베이스의~/idm_user.pem
파일에 저장된idm_user
ickname이 있는 인증서를 사용하여 인증서를 추가합니다.certutil -A -d ~/certdb/ -n idm_user -t "P,," -i ~/idm_user.pem
# certutil -A -d ~/certdb/ -n idm_user -t "P,," -i ~/idm_user.pem
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NSS 데이터베이스의 키가 닉네임으로 표시되지 않는지 확인합니다.
예를 들어
~/certdb/
데이터베이스에 저장된 인증서가 분리되지 않았는지 확인하려면 다음을 수행하십시오.certutil -K -d ~/certdb/
# certutil -K -d ~/certdb/ < 0> rsa 5ad14d41463b87a095b1896cf0068ccc467df395 NSS Certificate DB:idm_user
Copy to Clipboard Copied! Toggle word wrap Toggle overflow pk12util
명령을 사용하여 NSS 데이터베이스에서 PKCS12 형식으로 인증서를 내보냅니다. 예를 들어/root/certdb
NSS 데이터베이스의idm_user
nickname이 있는 인증서를~/idm_user.p12
파일로 내보내려면 다음을 실행합니다.pk12util -d ~/certdb -o ~/idm_user.p12 -n idm_user
# pk12util -d ~/certdb -o ~/idm_user.p12 -n idm_user Enter Password or Pin for "NSS Certificate DB": Enter password for PKCS12 file: Re-enter password: pk12util: PKCS12 EXPORT SUCCESSFUL
Copy to Clipboard Copied! Toggle word wrap Toggle overflow idm_user
의 인증서 인증을 활성화할 호스트로 인증서를 전송합니다.scp ~/idm_user.p12 idm_user@client.idm.example.com:/home/idm_user/
# scp ~/idm_user.p12 idm_user@client.idm.example.com:/home/idm_user/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 인증서가 전송된 호스트에서 보안상의 이유로 .pkcs12 파일이 'other' 그룹에 액세스할 수 없는 디렉터리를 만듭니다.
chmod o-rwx /home/idm_user/
# chmod o-rwx /home/idm_user/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 보안상의 이유로 서버에서 임시 NSS 데이터베이스와 .pkcs12 파일을 제거하십시오.
rm ~/certdb/ rm ~/idm_user.p12
# rm ~/certdb/ # rm ~/idm_user.p12
Copy to Clipboard Copied! Toggle word wrap Toggle overflow