Linux 톰캣 관련 포스팅 목록
2021.12.07 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - PEM 파일을 P12 파일로 변환하기
2021.12.06 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용하기
2021.12.05 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - P12 파일로 PEM 파일 생성하기(keytool pem)
2021.12.04 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - 키스토어로 P12 파일 생성하기(keytool p12)
2021.12.03 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - 키스토어 생성하기(keytool jks)
리눅스 p12 파일을 키스토어 파일 형식으로 변환하기
안녕하세요.
오늘 드디어 키스토어 관련 포스팅의 마지막 장식을 하는 날입니다. 톰캣 HTTPS 서버 적용을 위해 필요한 키스토어 파일을 여러 형식으로 변환하는 방법을 배워왔습니다.
이렇게 여러가지 파일 형식의 변환 방법을 알아야 하는 이유는 기업마다 키를 보유하고 있는 형식이 제각각 이기 때문입니다. PEM 형식은 보통 공개 인증서 이기 때문에 개인키와는 별개입니다. 또한 p12 형식은 탈취되면 위험하기 때문에 비밀번호를 알고 있는 중요한 사람에게만 공유합니다.
키스토어는 안드로이드에서도 많이 쓰이는 파일 형식입니다. 우리가 흔히 알고 있는 앱 설치 파일, APK 파일은 앱 서명이 필요합니다. 서명이란 내가 동일한 인물이라는 것을 표시하는 것이죠.
앱에서 이런 서명이 필요한 이유는 진짜 동일한 개발자가 만든 앱이고 그런 앱을 내가 설치하고 있는 게 맞는지 확인하기 위함입니다.
이 과정에서 키스토어 파일이 필요합니다. 왜냐면 그 안에 서명 검증에 필요한 공개키와 개발자가 비밀번호를 알고 있으면 쓸 수 있는 개인키도 있기 때문입니다.
자 그러면 마지막으로 pkcs12 형식의 파일에서 키스토어 형식으로 변환하는 방법에 대해 알아보도록 하겠습니다.
만약 예제 테스트에 필요한 p12 파일이 준비되어있지 않으신 분들은 기존 포스팅을 참고하시면 되겠습니다.
2021.12.04 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - 키스토어로 P12 파일 생성하기(keytool p12)
p12 파일을 키스토어 형식으로 변환하기
a
예제 코드 작성
$ cd ~/keystore_example
$ keytool -importkeystore -srckeystore test.p12 -srcstoretype pkcs12 -destkeystore test.jks -deststoretype jks
키 저장소 test.p12을(를) test.jks(으)로 임포트하는 중...
대상 키 저장소 비밀번호 입력: test1234
새 비밀번호 다시 입력: test1234
소스 키 저장소 비밀번호 입력: test1234
1 별칭에 대한 항목이 성공적으로 임포트되었습니다.
임포트 명령 완료: 성공적으로 임포트된 항목은 1개, 실패하거나 취소된 항목은 0개입니다.
Warning:
JKS 키 저장소는 고유 형식을 사용합니다. "keytool -importkeystore -srckeystore test.jks -destkeystore test.jks -deststoretype pkcs12"를 사용하는 산업 표준 형식인 PKCS12로 이전하는 것이 좋습니다
$ ls
https_keystore.jks https_keystore.p12 https_keystore.pem test.jks test.p12
라인 설명
1: 이전 포스팅에서 생성했던 작업 경로로 이동합니다.
2: keytool 명령을 통해 p12 파일을 키스토어 형식으로 변환합니다. 각 인자는 아래와 같습니다.
keytool -importkeystore: 키스토어 생성 옵션
-srckeystore test.p12: 키스토어 형식 파일 변환에 필요한 p12 파일 경로. 본 예제에서는 기존 포스팅에서 생성한 p12 파일인 "test.p12" 를 사용하였습니다.
-srcstoretype pkcs12: 우리가 키스토어 파일 생성에 사용하는 파일이 pkcs12 형식이라는 걸 지정합니다.
-destkeystore test.jsk: 생성하려는 키스토어 파일의 파일명. 본 예제에서는 "test.jks" 이름으로 지정하였습니다.
-deststoretype jks: 생성하려는 파일이 jks 형식임을 지정
4-6: p12 파일의 비밀번호 "test1234" 를 입력합니다.
13: ls 명령을 통해 생성된 "test.jks" 파일을 확인합니다.
키스토어 파일 내용 확인
$ cd ~/keystore_example
$ keytool -list -v -keystore test.jks
키 저장소 비밀번호 입력: test1234
라인 설명
2: 기존 포스팅과 같이 keytool -list 명령에 생성된 "test.jks" 파일을 입력합니다.
마무리
오늘은 기존 톰캣 HTTPS 적용 방법 포스팅 마지막으로 p12 파일을 jks 파일 형식으로 변환하는 방법에 대해 알아보았습니다.
지금까지 포스팅에서 중요한 부분은 키를 어떤 파일 형식으로 보유하고 있는가는 보안성에 직접적인 영향을 준다는 것입니다.
관련 글
Linux 톰캣 관련 포스팅 목록
2021.12.07 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - PEM 파일을 P12 파일로 변환하기
2021.12.06 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용하기
2021.12.05 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - P12 파일로 PEM 파일 생성하기(keytool pem)
2021.12.04 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - 키스토어로 P12 파일 생성하기(keytool p12)
2021.12.03 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - 키스토어 생성하기(keytool jks)