I used the following steps to create a new Java keystore with a pair of private/public key to be used by a Java (internal) server with TLS. Please notice that the certificate is selfsigned:
1) Generate key with AES256
openssl genrsa -aes256 -out server.key 1024
2) Generate cert request for CA
openssl req -x509 -sha256 -new -key server.key -out server.csr
3) Generate self signed expiry-time 10 years
openssl x509 -sha256 -days 3652 -in server.csr -signkey server.key -out selfsigned.crt
4) Use a program like KeyStoreExplorer to import the pair (private key and selfsigned certificate) in a new JKS
This works but I'd like to implement the last step without using a GUI.
I know how to import the self signed certificate only:
// 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
So the question is: how can I create a Java KeyStore and import both the certificate with the public key and the private key without using a GUI?