Link from where most of this info came from
Here is a simple tutorial to use Letsencrypt SSL Certs with Subsonic. This is on a Debian Server
keytool complains if your openssl export password is empty. Additionally, Subsonic expects your keystore password to be subsonic.
To the questions asked, subsonic for each i.e.:
Enter Export Password: subsonic
Verifying - Enter Export Password: subsonic
Enter destination keystore password: subsonic
Re-enter new password: subsonic
Enter source keystore password: subsonic
Here's the steps, after you got Certbot installed and your certificate issued:
cd /etc/letsencrypt/live/<domain_name>
cat privkey.pem > subsonic.crt
cat cert.pem >> subsonic.crt
cat chain.pem >> subsonic.crt
openssl pkcs12 -in subsonic.crt -export -out subsonic.pkcs12
keytool -importkeystore -srckeystore subsonic.pkcs12 -destkeystore subsonic.keystore -srcstoretype PKCS12 -srcalias 1 -destalias subsonic
zip /usr/share/subsonic/subsonic-booter-jar-with-dependencies.jar subsonic.keystore
Tell Subsonic to listen for HTTPS, edit /etc/default/subsonic
SUBSONIC_ARGS="--max-memory=512 --context-path=/subsonic --port=8080 --https-port=8443"
Restart subsonic
service subsonic restart
I think it is, google "expect" scripts, and if on JDK1.8 and lower, keytool accepts all the parameters on the command line. I am not familiar with the newer JDKs, but someone mentioned it changed, I haven't done that homework yet, I run my subsonic on Rpi3 with JDK1.8
See this https://community.letsencrypt.org/t/configuring-lets-encrypt-with-tomcat-6-x-and-7-x/32416