Protocolo VATPS

Se trata del protocolo VATP encriptado con TLS/SSL. Esto permite que toda la comunicación entre todos los componentes de Velneo y el servidor Velneo vServer vayan cifrados.

Este protocolo permite establecer conexiones seguras estándar TLS/SSL lo que provee de privacidad e integridad a las comunicaciones en red entre todos los componentes de Velneo. Es decir, no solo la comunicación se envía cifrada entre los componentes, si no que es inviolable, ya que garantiza que nadie puede modificar la información que se transmite, además de garantizarnos con qué servidor nos hemos conectado.

Para poder usarlo, debemos disponer de un servidor con suscripción.

La configuración comienza por obtener nuestro certificado digital. Contamos con 2 opciones:

  • Adquirirlo en una entidad certificadora, p.e. Gandi o en el servicio gratuito Letsencrypt. La opción más segura y recomendada para aquellos desarrolladores que necesiten máxima seguridad en sus conexiones.

  • Usar un certificado autofirmado o el incluido por Velneo por defecto dentro del propio Velneo vServer: En este caso, cuando los componentes se conecten nos aparecerá un aviso de error SSL informando de que debemos añadir una excepción para ese certificado. Esta opción no se recomienda para servidores de producción.

El tipo de certificado soportado para VATPS es x509.

El servidor carga el certificado al iniciarse. Una vez iniciado, comprueba todos los días si se han actualizado los ficheros del certificado y, si han sido actualizados, cargará el nuevo certificado.

El servidor emitirá diariamente un aviso en el panel de salida de mensajes de Velneo vAdmin durante los 7 días previos a que el certificado vaya a caducar, indicando los días que quedan para que caduque. Ejemplo:

Faltan 2 días para que el certificado ssl caduque

Una vez ha caducado el certificado, si no lo hemos actualizado, mostrará un mensaje indicando que el certificado ya ha caducado.

Al establecerse la conexión TLS/SSL se seleccionará la opción más segura en ese momento, determinada por el sistema y las librerías TLS/SSL. Normalmente será TLS 1.2.

En el acerca de… de cualquier componente de Velneo se puede ver la configuración de la conexión.

Por programación, la clase VSSLInfo permite obtener información de la conexión en las aplicaciones.

Lanzar Velneo vServer con servicio TLS/SSL

La forma de indicar a Velneo vServer que debe iniciarse con soporte VATPS es añadiendo a la línea de comandos el parámetro /ssl.

Para indicar un certificado que no sea el interno que incorpora Velneo vServer, hay que especificarlo en el registro del sistema. Haz clic aquí para ampliar información al respecto.

No se soportan certificados que requieran certificados intermedios.

El servidor carga el certificado al iniciarse. Una vez iniciado, comprueba todos los días si se han actualizado los ficheros del certificado y, si han sido actualizados, cargará el nuevo certificado.

Iniciar un componente con VATPS

Para conectarnos a un Velneo vServer que tenga VATPS habilitado, tan sólo tenemos que sustituir VATP por VATPS en nuestra vrl de conexión. Por ejemplo:

vatps://subdominio.dominio.com:9999

Al establecerse la conexión TLS/SSL se seleccionará la opción más segura en ese momento, determinada por el sistema y las librerías TLS/SSL. Normalmente será la versión 1.3 de TLS/SSL.

Si se produce un error de TLS/SSL, aparece en la barra de estado de la ventana de conexión una opción para ver las excepciones que se han producido y permite ignorarlas.

Es decir, los componentes clientes siempre permitirán la conexión pese a los posibles errores de TLS/SSL que pueda haber.

En el caso de que queramos controlar los errores o incluso hacer que se cierre Velneo vClient si hay errores de TLS/SSL es algo que tendremos que programar y para ello podemos hacer uso de la clase VSSLInfo del API de Velneo para JavaScript, ya que dispone de funciones para comprobar los posibles errores de validez del certificado, dominio, etc.

No es posible conectarnos usando VATPS contra un servidor que no admita conexión segura ni viceversa, conectarnos por VATP contra un servidor que requiera conexión segura.

Funcionamiento en Velneo cloud

En Velneo Cloud la configuración de certificados es automática y transparente para el usuario.

Si necesitas configurar tu propio dominio de empresa tienes aquí toda la información.

Verificación de Certificados

La verificación de certificados garantiza la veracidad del certificado del servidor con el cual establecemos la conexión.

La verificación se realiza de forma automática al conectarnos al servidor, previamente a enviar información al servidor, con lo que garantizamos que, además de que la información viaja de forma confidencial e íntegra, se envía al servidor con el que realmente queremos establecer la conexión. (Consulta cómo activarlo en el cliente en versiones anteriores al final).

En caso de error en el establecimiento de la conexión segura, nos lo indicará en la ventana de conexión y podremos revisar los errores detectados (caducidad de los certificados, certificados erróneos, etc.).

Además, en el caso de que confiemos en el certificado pese a los errores, el usuario puede establecer excepciones de seguridad para el servidor al que nos conectamos, como se hace en los navegadores web. En ese caso, se guardará la huella del certificado, con lo que, si se produce un cambio en el certificado del servidor al que se conecta, se avisará al usuario y se le solicitará de nuevo que incluya la excepción si es necesario y confía en él pese a los errores.

En nuestra aplicación, siempre podemos comprobar el certificado usado y comprobar que es correcto, haciendo uso para ello de la clase VSSLInfo de la API de Velneo para Javascript, que nos dará información relativa a la conexión y el certificado empleado.

Para configurar certificados en el servidor, ver el apartado Cómo incluir certificados propios en el servidor.

Velneo vServer incluye un certificado propio de pruebas que ha de ser sustituido por nuestro propio certificado.

Para los componentes que ha de instalar y verificar el desarrollador (Velneo vModApache, Velneo ODBC Driver, vRemoteFunctionV7.dll) es opcional forzar la verificación del certificado. Se hace con la clave conocida verificarCertificado como en versiones anteriores.

El uso de Velneo vClient con la opción -platform minimal por defecto no verifica el certificado. Si queremos que lo haga debemos configurar la clave conocida verificarCertificado como en versiones anteriores. Si genera algún tipo de conflicto a la hora de verificar el certificado, para poder crear la excepción debemos conectarnos previamente Velneo vClient sin la opción -platform minimal a esa VRL y añadir la excepción TLS/SSL.

Para conexiones externas al servidor al que estamos conectados

Si desde la aplicación accedemos a otros servidores, mediante funciones remotas, conexiones SDV, etc., estos servidores funcionan de igual forma con respecto a las conexiones VATPS y los certificados. En el caso de certificado erróneo, la función remota o la conexión SDV no podrá establecerse, pudiéndose añadir una excepción usando Velneo vClient.

Posibles incidencias con certificados en el cliente en Windows

El certificado que se debe usar en el servidor debe estar completo (fullchain), incluyendo los certificados autorizadores intermedios.

En Windows, en el caso de no tener el certificado completo, se puede producir lentitud en el establecimiento de las conexiones cuando se usa VATPS en lugar de VATP.

Si quieres saber más sobre cómo configurar correctamente tu servicio VATPS consulta esta página.

Temporalmente, se puede usar en el componente cliente la clave noWaitForEncrypted con el valor: F58C2306D2DCE3E0D652950F34580AAA4BA05406, en la clave HKEY_CURRENT_USER\SOFTWARE\Velneo\beta del registro de Windows. Esta clave se puede usar hasta que se actualice en el servidor el certificado.

Última actualización