En la entrada instalar-servidor-jetty-en-linux-desde-codigo-fuente vimos como instalar jetty desde codigo fuente, hoy voy a explicar como habilitar el protocolo https con un certificado autofirmado.
Creamos y entramos en el directorio donde generaremos el certificado.
mkdir /usr/local/jetty-distribution-9.4.24.v20191120/ssl
cd /usr/local/jetty-distribution-9.4.24.v20191120/ssl
Generamos la calve privada con OpenSSL con la contraseña “jetty9” (se puede utilizar la que se desee).
openssl genrsa -aes128 -out jetty.key
Generamos un certificado para la clave privada en el archivo jetty.crt (utilizando la misma contraseña y los valores que queramos).
openssl req -new -x509 -newkey rsa:2048 -sha256 -key jetty.key -out jetty.crt
Creamos un llavero con las calves en el formato PKCS12:
openssl pkcs12 -inkey jetty.key -in jetty.crt -export -out jetty.pkcs12
Ahora configuramos el fichero ssl.ini con las variables del puerto, llavero y contraseñas para que jetty utilice nuestro certificado:
vim /usr/local/jetty-distribution-9.4.24.v20191120/start.d/ssl.ini
jetty.ssl.port=443
jetty.sslContext.keyStorePath=ssl/jetty.pkcs12
jetty.sslContext.keyStorePassword=jetty9
jetty.sslContext.keyManagerPassword=jetty9
Y ya podemos arrancar el jetty y verl el certificado https en funcionamiento.
/usr/local/jetty-distribution-9.4.24.v20191120/bin/jetty.sh start
En la siguiente entrada explico como crear un servicio en el arranque para centos 7 crear-servicio-para-jetty-en-centos-7