Configuración de vLanzadera en Apache en el Cloud de Velneo
Apache
La configuración se establece en el fichero /apache2/001-default-ssl.conf del servidor cloud.
Podremos editarlo conectándonos con el servidor cloud vía sftp.
Lo primero que tenemos que asegurarnos es que la línea:
Include /etc/apache2/conf-available/vlanzadera.conf
esté presente al final de nuestro fichero de configuración de Apache. Si no lo está, añadirlo antes de la etiqueta </VIRTUALHOST>.
Debe quedar algo como sigue:
Ahora tenemos que crear el location para la aplicación que hemos instalado en el punto anterior. Dentro de la sección VirtualHost, debemos tener algo similar a esto:
A tener en cuenta en la configuración de la instancia en Apache
El location tiene que llamarse obligatoriamente /auth.
Si tenemos más de un location declarado en Apache, el de la lanzadera debe ser el último.
El nombre de la aplicación debe ser el identificador de la instancia del proyecto de aplicación de vLanzadera:
El puerto a usar puede ser el indicado u otro, en función de los servicios contratados. Si tienes dudas puedes consultarlo con el personal de soporte de Velneo.
La línea VelneoMode está comentada intencionadamente, porque esta aplicación NO FUNCIONA en ese modo.
El usuario debe ser un usuario declarado en ese servidor y que tenga privilegios de supervisor.
Puedes añadir dentro de la directiva Directory del Virtual host una redirección para que la vLanzadera se sirva desde la raíz de nuestro sitio. Debería quedar algo similar a esto:
Si en el servidor se reinicia alguna solución que está configurada en el fichero de configuración de Apache, debemos reiniciar Apache después.
Una vez realizados dichos cambios, reinicia el servicio de Apache desde tu panel de Velneo Cloud.
vServer
La lanzadera utiliza JWT para intercambiar información con el servidor. Para garantizar y securizar el intercambio de información entre la lanzadera y Velneo vServer, es necesario especificar una clave JWT en el registro de Velneo vServer.
Para ello, en Velneo Cloud es tan sencillo como conectarse por sftp y editar el fichero .config/Velneo/vServer.conf
.
Si no la tenemos ya, añadir una línea que contenga la propiedad:
jwtKey=TU_CLAVE_JWT_DE_32
La clave JWT debe tener una longitud mínima de 32 caracteres.
De forma opcional, se puede configurar un parámetro de tiempo de validez del token.
jwtExpiredSeconds=NUMERICO_SEGUNDOS
Por seguridad el servidor solo aceptará el token generado por la lanzadera durante los siguientes jwtExpiredSeconds segundos más 60 segundos de cortesía por si hay desviación de la hora entre el cliente y el servidor.
Si no se configura el parámetro tendrá un valor por defecto de 60 segundos.
Por temas de seguridad, la clave JWT solo debe ser conocida por el administrador.
Proxy para redirigir el tráfico WSS al puerto 443
Por defecto, para websockets (necesarios para la ejecución web) se usa el puerto que tenga nuestro servidor + 9. Es decir, que si el puerto del servidor es el 690, para Websockets se usa el 699. En el caso de que queramos usar en su lugar el puerto estándar 443, será necesario realizar configuración adicional en Apache y en vLanzadera.
En vLanzadera tendremos que configurar, en la sección Parámetros, el valor 443 en el parámetro Puerto WSS.
Si usábamos un RewriteRule
para usar la raíz del host para servir la lanzadera, hay que añadirle un RewriteCond: RewriteCond %{HTTP:Upgrade} !=websocket [NC]
para que no aplique esa redirección a las peticiones wss. La directiva <directory>
quedaría así (se ha insertado la línea 8):
Fuera de la directiva <directory>
hay que declarar otro RewriteRule para redirigir las peticiones wss que llegan del puerto 443 al puerto vatp + 9 (699 en el ejemplo) y configurar el proxy inverso (se añaden las líneas 12 a 19) :
Última actualización