메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


* ca.pem, cert.pem, certkey.pem을 이용하여 cert.p12를 만들고 cert.p12를 이용하여 cert.jks를 만들 수 있다.

* JKS 포맷의 인증서는 java 계열 인증설정시 많이 사용한다.



예를 들어 아래와 같이 파일이 있다고 하자.

 - 메인 인증서 : cert.crt

 - 개인키 : cert.key

 - 체인인증서 : chain1.crt , chain2.crt

 - 루트인증서 : ca.crt



1. pem 형식으로 파일 압축하기

crt 및 개인키로 인증서를 적용하기 위해 pem 형식으로 변환

( 개인키 -> 메인인증서 -> 체인인증서 -> 루트인증서 순서이다.)

$ cat cert.key cert.crt chain1.crt chain2.crt ca.crt > cert.pem



2. openssl 을 이용하여 pem -> pkcs12 포맷으로 변환

( cert.pem 을 cert.p12 로 변환 )

$ openssl pkcs12 -export -in cert.pem -inkey certkey.pem -certfile ca.pem -out cert.p12

변환 시 패드워드는 임의로 지정한다.


3. keytool 을 이용하여 pkcs12 -> jks 포맷으로 변환

( cert.p12 을 cert.jks 로 변환 )

$  : keytool -importkeystore -srckeystore cert.p12 -srcstoretlype pkcs12 -destkeystore cert.jks -deststoretype jks

패스워드는 위의 openssl 사용 시 사용했던 패스워드를 사용한다.


4. 변환된 인증서 확인

$ keytool -list -keystore cert.jks


Enter keystore password:   (default password는 changeit)

Keystore type: JKS

Keystore provider: SUN


Your keystore contains 1 entry


1, Jan 18, 2016, PrivateKeyEntry,

Certificate fingerprint (SHA1): B4:8D:C1:78:55:56:28:87:BA:39:EB:52:44:38:C1:11:5C:2B:43:93




출처: https://onecellboy.tistory.com/341 [신불사 - 신현호라 불리는 사나이]

번호 제목 글쓴이 날짜 조회 수
299 HBase 설정 최적화하기(VCNC) file 총관리자 2017.07.18 120
298 producer / consumer구현시 설정 옵션 설명 총관리자 2016.10.19 121
297 [Kudu]Schema별 혹은 테이블별 사용량(Replica포함) 구하는 방법 gooper 2022.07.14 121
» [TLS]pkcs12형식의 인증서 생성및 jks형식 인증서 생성 커맨드 예시 총관리자 2022.03.15 123
295 start-all.sh로 spark데몬 기동시 "JAVA_HOME is not set"오류 발생시 조치사항 총관리자 2016.08.01 126
294 streaming작업시 입력된 값에 대한 사본을 만들게 되는데 이것이 실패했을때 발생하는 경고메세지 총관리자 2017.04.03 126
293 JavaStreamingContext를 이용하여 스트림으로 들어오는 문자열 카운트 소스 총관리자 2017.03.30 128
292 hadoop nfs gateway설정 (Cloudera 6.3.4, CentOS 7.4 환경에서) 총관리자 2022.01.07 128
291 like검색한 결과를 기준으로 집계를 수행하는 java 소스 총관리자 2016.12.19 129
290 ./spark-sql 실행시 "java.lang.NumberFormatException: For input string: "1s"오류발생시 조치사항 총관리자 2016.06.09 132
289 [oozie] oozie shell action에서 shellscript수행결과의 2개 변수를 decision 액션에서 사용하기 총관리자 2020.06.05 133
288 scala application 샘플소스(SparkSession이용) 총관리자 2018.03.07 135
287 Spark Streaming으로 유실 없는 스트림 처리 인프라 구축하기 총관리자 2016.03.11 137
286 [CDP7.1.7]BDR작업후 오류로 Diagnostic Data를 수집하는 동안 "No content to map due to end-of-input at [Source: (String)""; line: 1, column: 0]" 오류 발생시 조치 gooper 2024.02.20 137
285 SQL문장과 Mongo에서 사용하는 명령어를 비교한 것입니다. 총관리자 2015.09.30 141
284 Cluster Install -> Provide Login Credentials에서 root가 아닌 다른 사용자를 지정하는 경우 "Exhausted available authentication methods"오류 발생시 조치방법 총관리자 2018.05.22 142
283 서버중 slave,worker,regionserver만 재기동해야 할때 필요한 기동스크립트및 사용방법 총관리자 2017.02.03 143
282 mongodb에서 큰데이타 sort시 오류발생에 대한 해결방법 총관리자 2015.12.22 145
281 Apache Toree설치(Jupyter에서 Scala, PySpark, SparkR, SQL을 사용할 수 있도록 하는 Kernel) 총관리자 2018.04.17 146
280 Cloudera의 API를 이용하여 impala의 실행되었던 쿼리 확인하는 예시 총관리자 2018.05.03 148

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로