Como añadir soporte SSL para MicroRest – LET’S ENCRIPT
Es bien sabido que las aplicaciones móviles al consumir servicios RESP-APi, nos obligan a utilizar conexiones seguras. En este ejemplo vamos a mostrar como utilizar los certificados generados por LET’S ENCRIPT para configurar MicroRest y así poder generar comunicaciones encriptadas en nuestras aplicaciones desarrolladas para dispositivos móviles ,en este ejemplo Flutter.
Primero creamos los certificados para nuestro sitio WEB utilizando la documentación de LET’S ENCRIPT
Los certificados se guardan en el directorio : /etc/letsencrypt/live/mydomain.be, en donde mydomain.be es el nombre del dominio.
Cambie las contraseñas en donde dice «changeit».
Primero se genera un keystore independiente:
Usted debe cambiar mydocmain.be con el nombre que registra el dominio, asi como las contraseñas «changeit»
openssl pkcs12 -export \ -in /etc/letsencrypt/live/mydomain.be/cert.pem \ -inkey /etc/letsencrypt/live/mydomain.be/privkey.pem \ -out /tmp/mydomain.be.p12 \ -name mydomain.be \ -CAfile /etc/letsencrypt/live/mydomain.be/fullchain.pem \ -caname "Let's Encrypt Authority X3" \ -password pass:changeit
El siguiente paso es importar el certificado al .keystore
keytool -importkeystore \ -deststorepass changeit \ -destkeypass changeit \ -deststoretype pkcs12 \ -srckeystore /tmp/mydomain.be.p12 \ -srcstoretype PKCS12 \ -srcstorepass changeit \ -destkeystore /tmp/mydomain.be.keystore \ -alias mydomain.be
El resultado de las operaciones son dos archivos, el primero es el certificado con extension p12 y el siguiente es el keystore con la extension correspondiente.
Ahora en el archivo de configuración de MicroRest se debe configurar lo siguiente:
ssl=true TrustStore=/Volumes/Disco2/desarrollo/MicroRest/cers/mydomain.be.p12 TrustStorePassword=changeit KeyStorePassword=changeit KeyStore=/Volumes/Disco2/desarrollo/MicroRest/cers/mydomain.be.keystore
Una vez se suba el servicio, se debe visualizar «SSL enable true», esto quiere decir que esta escuchando en el puerto de forma segura d