在 Java 密钥库中导入私钥/公共证书对
2022-08-31 12:58:57
我使用以下步骤创建了一个新的Java密钥库,其中包含一对私有/公钥,供具有TLS的Java(内部)服务器使用。请注意,证书是自签名的:
1) 使用 AES256 生成密钥
openssl genrsa -aes256 -out server.key 1024
2) 为 CA 生成证书请求
openssl req -x509 -sha256 -new -key server.key -out server.csr
3) 生成自签名到期时间 10 年
openssl x509 -sha256 -days 3652 -in server.csr -signkey server.key -out selfsigned.crt
4) 使用像 KeyStoreExplorer 这样的程序将密钥对(私钥和自签名证书)导入到新的 JKS 中
这有效,但我想在不使用GUI的情况下实现最后一步。
我知道如何仅导入自签名证书:
// create the keystore and import the public key. THIS WILL NOT IMPORT THE PRIVATE KEY SO THE KEYSTORE CAN'T BE USED ON THE SERVER TO MAKE THE TLS CONNECTION
/usr/java/jdk1.6.0_45/bin/keytool -import -alias myservercert -file server.crt -keystore mykeystore.jks
所以问题是:如何在不使用GUI的情况下创建Java KeyStore并导入带有公钥和私钥的证书?