Skip to content

Instantly share code, notes, and snippets.

@lilongen
Last active February 20, 2019 01:43
Show Gist options
  • Save lilongen/2d0debfec95c2b28b37afed70d27bb6e to your computer and use it in GitHub Desktop.
Save lilongen/2d0debfec95c2b28b37afed70d27bb6e to your computer and use it in GitHub Desktop.
https://www.jianshu.com/p/e5f46dcf4664
https://blog.csdn.net/sayyy/article/details/78351512
openssl pkcs12 -export -in uydc-101.crt -inkey uydc-101.key -out uydc-101.p12 \
-name uydc-101 -CAfile yxt-ca.crt -caname yxtca -passout pass:123456
openssl pkcs12 -in ydc.p12 -password file:pass -passin file:pass -nokeys
openssl pkcs12 -in ydc.p12 -password file:pass -passin file:pass -nokeys -
keytool -importkeystore -deststorepass 123456 -destkeypass 123456 \
-destkeystore uydc-101.jks -srckeystore uydc-101.pkcs12 \
-srcstoretype PKCS12 -srcstorepass 123456 -alias uydc-101
openssl pkcs12 -info -in uydc-101.pkcs12 -passin pass:123456
keytool example
Create keystore and certificate
keytool \
-genkeypair \
-alias uydc-102.hbase.thrift \
-keyalg RSA \
-keysize 2048 \
-keypass 123456 \
-sigalg SHA256withRSA \
-dname "CN=uydc-102,OU=data,O=yxt,L=SuZhou,ST=JiangSu,C=CN" \
-validity 3650 \
-keystore uydc-102_keystore.jks \
-storetype JKS \
-storepass 123456
Generate CSR - Certificate Signing Request
keytool \
-certreq \
-alias uydc-102.hbase.thrift \
-keyalg RSA \
-keypass 123456 \
-keystore uydc-102_keystore.jks \
-storetype JKS \
-storepass 123456 \
-file uydc-102.hbase.thrift.csr
Import Certificate Sign Authority ROOT Certificate
keytool \
-import \
-trustcacerts \
-alias ca_root_GlobalSign \
-keypass 123456 \
-keystore uydc-102_keystore.jks \
-storepass 123456 \
-file GlobalSign_cert.cer
Import Signed Certificate base on above CSR
keytool \
-import \
-trustcacerts \
-alias uydc-102.hbase.thrift \
-keypass 123456 \
-keystore uydc-102_keystore.jks \
-storepass 123456 \
-file uydc-102.hbase.thrift.cer
openssl example
自签名:
# 1.生成私钥
$ openssl genrsa -out server.key 2048
# 2.生成 CSR (Certificate Signing Request)
$ openssl req -subj "/C=CN/ST=Tianjin/L=Tianjin/O=Mocha/OU=Mocha Software/CN=test1.sslpoc.com/emailAddress=test@mochasoft.com.cn" -new -key server.key -out server.csr
# 3.生成自签名证书
$ openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
私有 CA 签名:
# 1.创建 CA 私钥
$ openssl genrsa -out ca.key 2048
# 2.生成 CA 的自签名证书
$ openssl req -subj "/C=CN/ST=Tianjin/L=Tianjin/O=Mocha/OU=Mocha Software/CN=Server CA/emailAddress=test@mochasoft.com.cn" -new -x509 -days 3650 -key ca.key -out ca.crt
# 3.生成需要颁发证书的私钥
$ openssl genrsa -out server.key 2048
# 4.生成要颁发证书的证书签名请求,证书签名请求当中的 Common Name 必须区别于 CA 的证书里面的 Common Name
$ openssl req -subj "/C=CN/ST=Tianjin/L=Tianjin/O=Mocha/OU=Mocha Software/CN=test2.sslpoc.com/emailAddress=test@mochasoft.com.cn" -new -key server.key -out server.csr
# 5.用 2 创建的 CA 证书给 4 生成的 签名请求 进行签名
$ openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt
指定证书 distinguish name
-subj /C=CN/ST=Guangdong/L=Shenzhen/O=PAX/OU=Common Software/CN=Server CA/emailAddress=qiaojx@paxsz.com
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment