BIG
원문출처 : https://www.sslcert.co.kr/guides/SSL-Certificate-Convert-Format
OpenSSL 이용한 .pfx 생성 / pem 추출 / PrivateKey 암호화 적용,해제
# .pfx 에서 .crt 추출하기 (.pfx 암호 필요)
openssl pkcs12 -in sslcert.co.kr.pfx -clcerts -nokeys -out sslcert.co.kr.crt.pem
# .pfx 에서 .key 추출하기 (.pfx 암호 필요)
openssl pkcs12 -in sslcert.co.kr.pfx -nocerts -nodes -out sslcert.co.kr.key.pem
# .crt 및 .key 를 조합하여 .pfx 만들기
openssl pkcs12 -export -in sslcert.co.kr.crt -inkey private.key -out sslcert.co.kr.pfx
# .pfx 에 포함된 인증서 확인 (.pfx 암호 필요)
openssl pkcs12 -info -in sslcert.co.kr.pfx
# 개인키 파일에 암호화 적용 (패스워드 적용)
openssl.exe rsa -des3 -in sslcert.co.kr.key.pem -out _ENCRYPTED_.key.pem
writing RSA key
Enter PEM pass phrase: (개인키 PEM 암호화 적용 패스워드 입력)
Verifying - Enter PEM pass phrase:
# 암호화 해제된 개인키 파일 생성
openssl.exe rsa -in _ENCRYPTED_.key.pem -out sslcert.co.kr.key.pem
Enter pass phrase for _ENCRYPTED_.key.pem: (개인키 PEM 패스워드 입력)
writing RSA key
PEM/PFX JavakeyStore(.jks) 변환
# PEM 을 PKCS#12 으로 변환
cat domain.crt chain1.crt chain2.crt root.crt > cert.pem - 1개 cert.pem 파일로 통합
openssl pkcs12 -export -name example.com -in cert.pem -inkey private.key -out sslcert.co.kr.pfx - .pfx 파일로 저장
# .pfx 에서 .jks 변환
keytool -importkeystore -srckeystore sslcert.co.kr.pfx -srcstoretype pkcs12 -destkeystore sslcert.co.kr.jks -deststoretype jks
* pfx 에 개인키, 서버인증서, 체인인증서, 루트인증서 가 포함되어 있는 경우, KeyStore 에 모두 Import 됨
대상 키 저장소 비밀번호 입력: ******
새 비밀번호 다시 입력: ******
소스 키 저장소 비밀번호 입력: ****** (pfx암호)
www.securesign.kr 별칭에 대한 항목이 성공적으로 임포트되었습니다.
임포트 명령 완료: 성공적으로 임포트된 항목은 1개, 실패하거나 취소된 항목은 0개입니다.
JavakeyStore(.jks) PFX 변환
# JavakeyStore 를 PKCS#12 으로 변환
keytool -importkeystore -srckeystore sslcert.co.kr.jks -srcstoretype JKS -srcstorepass "password" -destkeystore sslcert.co.kr.pfx -deststoretype PKCS12 -deststorepass "password"
* .jks 파일을 .pfx 파일로 변환 저장 (원본 jks 파일 패스워드 필요, 대상 pfx 패스워드 지정)
JavakeyStore(.jks) 의 비밀번호, Alias 변경
# KeyStore 비밀번호 변경
keytool.exe -storepasswd -new 변경될 비밀번호 -keystore sslcert.co.kr.jks
키 저장소 비밀번호 입력: (기존 KeyStore 비밀번호)
# Key 비밀번호 변경
keytool.exe -keypasswd -alias www.sslcert.co.kr -keystore sslcert.co.kr.jks
키 저장소 비밀번호 입력: (KeyStore 비밀번호)
<www.sslcert.co.kr>에 대한 키 비밀번호를 입력하십시오. (CSR 자동생성의 경우 Key 비밀번호는 KeyStore 비밀번호와 같음)
새 <www.sslcert.co.kr>에 대한 키 비밀번호:
새 <www.sslcert.co.kr>에 대한 키 비밀번호 다시 입력:
# Alias 별칭이름 변경
keytool.exe -changealias -keystore sslcert.co.kr.jks -alias www.sslcert.co.kr -destalias 변경될 Alias 이름
키 저장소 비밀번호 입력:
JavakeyStore(.jks) 인증서 확인/추가/삭제
# JavakeyStore(.jks) 에 포함된 인증서 확인
keytool -list -v -keystore sslcert.co.kr.jks
개인키, 서버인증서, 체인인증서, 루트인증서 등 포함된 인증서 목록이 출력 됨
키 저장소 비밀번호 입력: *****
키 저장소 유형: JKS
키 저장소 제공자: SUN
..
키 저장소에 1개의 항목이 포함되어 있습니다.
..
별칭 이름(Alias): www.sslcert.co.kr
생성 날짜: 2015. 5. 26
항목 유형: PrivateKeyEntry
....
서버인증서
체인인증서
루트인증서
# JavakeyStore 에 인증서 추가
# 추가 하기전에, keytool -list -v -keystore cert.jks 내역 확인 필수
keytool -import -trustcacerts -alias 설정할Alias -file cert.pem -keystore sslcert.co.kr.jks
# JavakeyStore 에서 특정 인증서 삭제
# 삭제 하기전에, keytool -list -v -keystore cert.jks 내역 확인 필수
keytool -delete -alias 삭제대상Alias -keystore sslcert.co.kr.jks -storepass 키스토어암호
OpenSSL 을 이용한 인증서 포맷 변경
# PEM DER (바이너리)
인증서 : openssl x509 -outform DER -in 원본인증서.pem -out 저장인증서.der
개인키 : openssl rsa -in 원본개인키.pem -pubout -outform DER -out 저장개인키.der
# DER/CER (바이너리) PEM
openssl x509 -inform der -in 원본인증서.der -out 저장인증서.pem
openssl x509 -in 원본인증서.cer -outform PEM -out 저장인증서.pem
# PEM p7b(pkcs#7)
openssl crl2pkcs7 -nocrl -certfile 원본인증서.pem -out 저장인증서.p7b -certfile 루트체인.cer
# CER/PrivateKey pfx(pkcs#12)
openssl pkcs12 -export -in 서버인증서.cer -inkey 개인키.key -out 저장인증서.pfx -certfile 루트체인.cer
# PEM IBM Keyring (.Kyr) 변환
IBM Domino Kyrtool 을 이용해서 Keyring 포맷으로 변환 예제
SSL 인증서 발급 완료시 Keyring 포맷은 제공되지 않으므로, 직접 변환해서 적용해야 합니다.
LIST
'!!...IT' 카테고리의 다른 글
[인건비]2021년 티맥스소프트 매출대비 인건비(급여) 비율은...? (0) | 2022.07.12 |
---|---|
[인건비]2021년 네이버 매출 대비 인건비(급여) 비율은...? (0) | 2022.07.12 |
[Tip]외국인 개발자 활용 또는 해외 외주 현실_01 (0) | 2022.03.22 |
[네트워크] nslookup을 사용하여 MX 레코드 구성 확인 방법 (0) | 2018.07.20 |
[자료]행정표준코드 - 법정동 코드 정보 입니다. (0) | 2018.06.07 |