테스트할게 좀 있어서, PKCS#12 클라이언트 인증서 파일을 만들어야
했었는데, 그 작업 로그입니다.
어디까지나 테스트용..-_-
*<>안은 생략 가능
<테스트용 인증기관 인증서 작성>
1. 인증서 요청과 개인키를 만듭니다.
$openssl req -new > new.cert.csr
=> PEM입력 후, 인증기관에 대한 정보를 입력합니다.
2. 개인키 파일에서 패스문을 지웁니다.
$openssl rsa -in privkey.pem -out new.cert.key
3. [자신의 개인키로 인증서 요청에 서명하여, 서명된 인증서를 만듭니다.]
$openssl x509 -in new.cert.csr -out new.cert.cert -req -signkey new.cert.key -days 365
생성된 파일들:
privkey.pem : 패스문이 포함된 개인키 파일
new.cert.csr : 인증서 요청 파일
new.cert.key : 개인키 파일
new.cert.cert : 서명된 인증서 파일
<클라이언트 인증서 작성 및 서명>
privkey.pem 파일 이름이 겹치므로, client라는 디렉토리를 만들어
이 안에서 작업하겠습니다.
$mkdir client
$cd client
1. 클라이언트 인증서 요청과 개인키를 만듭니다.
$openssl req -new > client.cert.csr
=> PEM입력 후, 인증기관에 대한 정보를 입력합니다.
2. [개인키 파일에서 패스문을 지웁니다.]
$openssl rsa -in privkey.pem -out new.cert.key
3. 위에서 만든 인증기관의 개인키로 인증서 요청에 서명하여, 서명된 인증서를 만듭니다
. $openssl x509 -in client.cert.csr -out client.cert.cert -req -signkey ../new.cert.key -days 365
4. 서명된 인증서로부터 PKCS#12 양식의 클라이언트 인증서 파일을 만듭니다(서명기관의 키
파일 필요) $openssl pkcs12 -export -in client.cert.cert -inkey ../privkey.pem -name mymy -out client.cert.p12
=> 인증기관의 PEM 입력후, Export 패스워드를 정함
생성된 파일들:
privkey.pem : 패스문이 포함된 클라인언트의 개인키 파일
client.cert.csr : 클라인언트의 인증서 요청 파일
client.cert.key : 클라이언트의 개인키 파일
client.cert.cert : 클라이언트의 서명된 인증서 파일
client.cert.p12 : PKCS#12 양식의 클라이언트 인증서 파일
이렇게 생성된 PKCS#12 양식의 인증서를 인터넷 익스플로러나 컹커러 등에서 import하여 사
용할 수 있습니다.(이 때 Export 패스워드를 입력해야 합니다)