728x90
300x250
1. OpenSSL 개념 소개 및 인증서 생성 및 루트 기관 생성

1. OpenSSL의 실행파일은?
    openssl라는 이름으로 존재합니다.
    거의 여러 응용프로그램들을 통하여 사용합니다. (단, 인증서 용도는 Openssl을 통해 직접합니다.)

2. OpenSSL은 무슨 용도의 프로그램인가?
    인증서를 확인 및 암호화 등의 역활을 수행하는 프로그램입니다.

홈페이지 : OpenSSL  http://www.openssl.org/
 
태스트 환경 :


OpenSSL 인증서 생성 및 루트 기관 생성과정 강좌

1. 'Demo CA'라고 불리는 폴더 설정

- 현재 디렉토리에 'demoCA' 혹은 사용자가 설정한 폴더의 이름으로 디렉토리 생성 :
     example) mkdir demoCA



2. CA 인증서 생성
- CA 개인키 생성 :  openssl genrsa -des3 -out ca.key 1024

- Self-Signed CA 인증서 생성 :  openssl req -new -x509 -days 365 -key ca.key -out ca.crt

3. 하위 인증서 생성 (사용범위 : https, ......)
- server 개인키 생성 : openssl genrsa -des3 -out server.key 1024
- server 인증서 발급을 위한 요청파일 생성 : openssl req -new -days 365 -key server.key -out server.csr
- server 인증서 발급 : openssl ca -in server.csr -out server.crt -keyfile ca.key -cert ca.crt

참고 : 3번의 과정을 하실 때에는 위에 과정에서 개인키와 Self-Signed CA 인증서를 생성한 위치 내에서 사용하시면 되겠습니다.

결과 : server.crt 라는 server용인증서가 생성되고 index 파일에 발급내역이, serial이 16진수로 1씩 증가한다.

4. 인증서 인코딩 포멧 변경
- openssl 이 생성하는 인증서의 인코딩은 발급 시 옵션을 주지 않으면 디폴트가 PEM (base64 encoding)이다.
- Java 등에서 사용하기 위한 DER 포맷(바이너리)으로 변경은 다음과 같이 수행한다.
   : openssl x509 -in ca.crt -out ca.der -outform DER

5. 인증서 내용 보기
- openssl x509 -in ca.crt -text   (PEM 포맷인 경우)
- openssl x509 -in ca.der -inform DER -text (DER 포맷인 경우)

아래의 참고 자료들을 참조하여 직접 태스트한 경험을 바탕으로 올려보았습니다.


1. 참고자료(Reference)

 

1. http://blog.naver.com/zauberha?Redirect=Log&logNo=150055260734 OpenSSL로 인증서 생성 및 변환 간략 정리
2. http://golmong.tistory.com/112  (OpenSSL + Tomcat 사용 SSL 설정)

반응형

+ Recent posts