728x90
하루 동안 인증서에 대해서 좀 알아보고
과거에 작업할때 겪었던 것을 한번은 정리해야할 것 같아서 정리해본다
인증서 파일을 대뜸 받거나, 인증서를 구매할 수 도 있고, 무료 인증서를 만들 수 도 있을 것이다
우선 낯선 파일이니 확장자 부터 정리해보자, 크게 세가지로 정리할 수 있겠다
1. PEM
특징:
- 텍스트 파일이다, 바로 열어서 볼 수있다
시작은 이렇게 시작하고 "-----BEGIN RSA PRIVATE KEY-----"
끝은 이렇게 끝난다 "-----END RSA PRIVATE KEY-----" - 주로 웹서버에 적용한다
- 인증서와 개인키를 각각의 pem 파일 로 분할하여 가진다(복수의 파일구조)
- 패스워드는 private.pem 같은걸로 대체
- Spring Boot 에서는 적합하지 않다
확장자: .pem, .crb, .cer, .key
2. PKCS#12
특징:
- 바이너리 파일이다, 별도의 다른 도움 안받고는 봐도 뭔지 모른다..
- 주로 Window IIS, Spring Boot 에서 권장된다
이런 명령어를 써서 pem -> pkcs 변환했던걸로 기억한다
sudo openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out keystore.p12 -name ttp -CAfile chain.pem -caname root
(privkey.pem -> keystore.p12로 변환하는거다) - 인증서와 개인키를 하나의 파일로 사용
- 패스워드 입력을 요구한다
확장자: .p12, pfx
Spring Boot 에서 웹서버 없이 내장톰캣으로 ssl 넣고 사용하려면 이 방식을 사용한다
3. KEYSTORE
특징:
- 바이너리 파일이다, 별도의 다른 도움 안받고는 봐도 뭔지 모른다.
- 주로 Tomcat, Java 환경에서 사용한다, Spring Boot 도 지원 가능하다하지만 권장까진 아니다
- 인증서와 개인키를 하나의 파일로 사용
- 패스워드 입력을 요구한다
확장자: 확장자없이사용가능, .keystore, .jks
728x90