OpenSSL로 인증서 생성 및 변환 간략 정리기술 이야기 2008/08/29 11:43테스트 용도 및 내부 어플리케이션 사용 용도라면 굳이 돈주고 Verisign 인증서 같은걸 사서 쓸 필요 없이 간단히 OpenSSL로 만들어 사용하는 것도 좋은 방법이지요.
인증서란 것이 발급한 기관이 어디냐에 따라서 브라우저 같은 Application에서 그냥 넘어가느냐 못믿을 놈이니 확인해라 라는 컴플레인을 하거나의 차이일 뿐 표준에 따라 만드는 것이라 다를 것이 없으니까요.... OpenSSL로 인증서 생성 및 변환하는 것을 아주 간략히 정리해봅니다. OpenSSL을 설치하면 openssl 이라는 이름의 실행파일이 있으며 이는 OpenSSL 패키지에 대한 데모 및 샘플 코드 제공, 각종 암호키에 대한 변환 등의 기능을 제공하는 툴입니다. 이 툴로 사실 우리가 필요로 하는 거의 대부분의 키 핸들링이 가능하다고 볼 수 있습니다. 1. Demo CA 설정 - 현재 디렉토리에 demoCA 디렉토리 생성 : mkdir demoCA - demoCA 디렉토리 안에 시리얼 파일 생성 : serial 이란 이름의 text 파일에 00 을 적는다. - index 파일 생성 : index.txt 란 이름으로 빈 파일을 만든다. 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 Web 서버용..) - 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 -outdir . 위 작업의 결과로 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 포맷인 경우) ================================================================================================================
------------------------------------------------------------------------------------------ CA 개인키 생성 CA csr 키 생성 Root CA 인증서 생성 개인키에서 패스워드 삭제하기 ------------------------------------------------------------------------------------------ Server 개인키 생성 Server csr 키 생성 Server 인증서 생성 ca.key -CAcreateserial -days 365 개인키에서 패스워드 삭제하기 ------------------------------------------------------------------------------------------ Client 개인키 생성 Client csr 키 생성 Client 인증서 생성 server.key -CAcreateserial -days 365 개인키에서 패스워드 삭제하기 ------------------------------------------------------------------------------------------ crt->der 포맷변경 pem->der 포맷변경 der->pem 포맷변경 인증서 확인 비밀키 보기 openssl 설치완료 확인 pfx 변환 pfx에서 키 추출 pfx에서 인증서 추출 라디우스 실행 ------------------------------------------------------------------------------------------ 인증에 사용될 파일 6개 |
'My PROJECT > 1st project' 카테고리의 다른 글
프로젝트에 필요한 cgi 에 대한 개념 잡기 (0) | 2011.09.03 |
---|---|
우분투에서 apm 설치하기 (0) | 2011.08.03 |
SNMP (0) | 2011.07.09 |
APACHE 란 (0) | 2011.07.07 |
1. 시스템 모니터링 교수님 질문내용-답변 (0) | 2011.07.07 |