Requisitos y consideraciones para la instalación de Space
Introducción
Esta sección contiene información técnica sobre aspectos de instalación del software "ProAccess Space" ("Space" en adelante), como requisitos del sistema, consideraciones de conectividad, etc. It is intended for advanced users (like Salto distributors working in conjunction with IT teams) who have to deal with the software installation process.
Debe leer esta sección de la guía del usuario antes de intentar instalar Space.
Vista general
Space is an access control software designed and produced by Salto for managing Salto-manufactured electronic access points, such as standalone electronic escutcheons, cylinders and online IP and RF locks.
In the diagram below, a basic scheme of the Space access control system is depicted, in which the following main components can be appreciated: the Space server machine, the client machines and the Salto peripherals and access point devices.
Descripción general del sistema
Iconos de componentes de red
Icono | Descripción |
---|---|
Servidor de Space | Contains the Space service and the SQL database (SQL DB). It manages and controls, in real-time, all Salto online devices, for example, online doors that are operated using radio frequency (RF) technology. También procesa las solicitudes de los clientes de Space. |
Cliente de Space | Access client applications, such as Space and the Local IO Bridge. |
Editor de tarjetas | Un codificador es un dispositivo externo que lee y actualiza las llaves con información de acceso, escribe permisos de acceso en las tarjetas (llaves). Los editores de tarjetas pueden conectarse a través de USB o Ethernet. |
Cerradura electrónica | Permite o deniega el acceso, en función de los permisos de la llave presentada. These devices can be online or offline and are battery-powered. Battery-powered BLUEnet-enabled locks are equipped with technology that allows online capability. However, if these locks are not connected to a networking device, they need to be updated using a PPD. These locks are known as "standalone" in the Space system. |
Dispositivo portátil de programación (PPD) | Comunica información a la cerradura, como la identificación de la puerta y los detalles de configuración. Este dispositivo, que se comunica con las cerraduras mediante NFC, también se puede conectar físicamente a las cerraduras. Se utiliza para inicializar y actualizar dispositivos fuera de línea. Consulte PPD para obtener más información. |
Controlador | Proporciona un control de acceso en tiempo real. Gestionado por el servidor de Space, el controlador funciona como una puerta IP online y como un actualizador de tarjetas. Los controladores se pueden conectar a lectores utilizando un bus RS485. |
Gateway | Dispositivo destinado a un uso conjunto con puntos de acceso donde se necesite conexiones online. Gateways connect to electronic locks through the nodes, enabling offline locks to become connected. Una puerta de enlace actúa como un puente que transfiere información mediante cifrado de extremo a extremo hacia y desde los dispositivos detrás de ella al software. |
Nodos y repetidores | También conocidos como extensores, los repetidores y nodos permiten aumentar la distancia entre una puerta de enlace y las cerraduras electrónicas. A node needs to be physically connected to a gateway using an RS485 cable, whereas Salto BLUEnet repeaters allow for wireless communication. |
JustIN Cloud | Actúa como un puente entre el backend de Space y la aplicación móvil JustIN. |
Aplicación JustIN | The Salto JustIN Mobile app allows users to use their phones as a key. Garantiza que los usuarios puedan recibir su llave en línea, en cualquier momento y en cualquier lugar. |
Nota importante: todos los dispositivos IP (es decir, unidades de control y codificadores) abren un puerto UDP en 1100 para comunicarse con el servidor de Space (consulte también Consideraciones de puertos de comunicación y conectividad).
En las siguientes secciones se explican con más detalle los requisitos de hardware y los aspectos de seguridad que hay que tener en cuenta al instalar Space tanto en el servidor de Space como en las máquinas cliente.
Servidor de Space
The Space server represents the heart of the system since it hosts both the Salto database and the Space service.
La base de datos de Space contiene datos relacionados con el sistema de control de acceso de la instalación, como los permisos de los titulares de tarjetas, el registro de auditoría de las cerraduras, el plan de cierre, etc.
Los sistemas de base de datos backend compatibles actualmente son MS-SQL Server y MS-LocalDB (más información sobre esto más adelante).
El servicio de Space, por otro lado, es un servicio de Windows NT desarrollado para la plataforma .NET. Proporciona las dos siguientes funcionalidades:
- Performs real-time access control by managing and monitoring the online Salto devices (both access points and SVN updaters).
- Atiende y procesa las solicitudes de los clientes de Space y los integradores.
El servicio de Space se configura mediante una herramienta de configuración llamada "ProAccess Space Configurator".
Requisitos de hardware y sistema
Los requisitos de hardware y sistema para el servidor de Space son los siguientes:
Supported operating systems: Microsoft Windows 10, 11, Server 2016 or higher. Versiones de 32 y 64 bits.
Base de datos1: Microsoft SQL Server 2012, 2014, 2016, 2017, 2019, 2022 y LocalDB. Todas las ediciones admitidas, incluida "Express".
También se ajusta a los requisitos del sistema de la base de datos que se esté utilizando. Los requisitos actuales del sistema para Microsoft SQL Server Express se pueden encontrar en el siguiente enlace: https://technet.microsoft.com/en-en/library/ms143506.aspx
Microsoft SQL Native Client 11.0 (instalado de forma predeterminada por el programa de instalación de Space).
Minimum hardware: it mainly depends on the amount of IP devices (such as Ethernet encoders, gateways and CU42E0) that will be managed by the Space software. Como regla general:
- Instalaciones con menos de 300 dispositivos IP: se requiere una máquina dedicada con al menos dos CPU de 2,5 GHz y 8 GB de RAM.
- Instalaciones con más de o igual a 300 dispositivos IP: se requiere una máquina dedicada con al menos cuatro CPU de 2,5 GHz y 16 GB de RAM.
Además, se recomienda una pantalla de 32 bits de alta definición de 1024×768 (para trabajar con la aplicación web de la interfaz gráfica de usuario a través de los navegadores).
.NET framework 4.6.2 o posterior (incluido en el instalador).
El espacio necesario en el disco duro depende del tamaño del plan de cierre y de la política de limpieza de datos. Se recomienda un mínimo de 5 GB.
Resolver de nombres de máquina (DNS): Space usa nombres de máquina (en lugar de direcciones IP fijas) para las comunicaciones entre máquinas. A este respecto, se necesita un resolver de nombres de máquina (como un sistema de nombres de dominio o DNS) para resolver correctamente los nombres de máquina en la dirección IP correspondiente.
La fecha y la hora de la máquina del servidor deben estar correctamente configuradas antes de iniciar el software de Space. De lo contrario, el rendimiento de los dispositivos online (como las cerraduras RF) podría verse afectado negativamente.
Controles/extensiones LDAP requeridos:
- If cardholders or software operators are to be imported from your directory service (DS) to the Space DB via LDAP protocol, make sure that the following LDAP control/extension is supported by your DS or LDAP server: "1.2.840.113556.1.4.319". Por ejemplo, se sabe que Active Directory de Microsoft admite el control LDAP especificado, mientras que Oracle Directory Server Enterprise Edition (ODSEE) parece no admitirlo.
Consideraciones sobre la máquina virtual
En principio, el servicio Space (y su BD) se puede instalar y ejecutar en máquinas virtuales. A continuación, se enumeran consideraciones importantes que se deben tener en cuenta:
- Asegúrese de que se dediquen suficientes recursos de CPU y RAM. Cualquier latencia debida a recursos insuficientes afectará negativamente a las interacciones entre el servicio Space y los dispositivos de control de acceso en línea y los usuarios finales.
- En caso de que su máquina host esté equipada con más de una NIC (controlador de interfaz de red) física, asegúrese de que todo el tráfico IP desde/hacia el software Space fluya a través de la misma NIC física (de lo contrario, es posible que tenga problemas de comunicación con dispositivos en línea, como CU5000).
- If your system is Windows Server 2012 R2 and have communication issues between the Space server and the Salto IP devices, consider disabling the VMQ (Virtual Machine Queue) feature on NICs. Consulte el siguiente enlace para obtener más detalles: https://docs.microsoft.com/en-us/troubleshoot/windows-server/networking/poor-network-performance-hyper-v-host-vm
Puertos de comunicación y consideraciones de conectividad
El servicio Space no es un software aislado. Por el contrario, el servicio Space abre varios puertos de escucha para aquellos sistemas de terceros interesados en solicitar recursos y servicios de control de acceso (por ejemplo, PMS del hotel). The other way around also applies, that's to say, the Space service may establish connections to third-party systems in order to get certain data or services from them (for example, MS-SQL Server or the Salto cloud).
El siguiente diagrama muestra todos los puertos de comunicación gestionados por el servicio Space. Para los puertos TCP/IP, el símbolo de flecha indica el puerto de escucha al que se establece la conexión.
Importante: tenga en cuenta que todos los números de puerto para los puertos TCP/IP especificados en el siguiente diagrama no son valores fijos, sino valores predeterminados y se pueden cambiar a cualquier otro valor como se desee. On the contrary, the UDP port 1100 opened by Salto peripherals is fixed and cannot be modified.
La siguiente tabla enumera todos los posibles puertos de comunicación (y su valor predeterminado) que puede usar el servicio Space según el tipo de integración.
Esquema de conectividad para Space
Puertos y conexiones desde y hacia el servicio Space
Tipo de sistema con el que comunicarse | Tipo de puerto, protocolo y configuración | Descripción |
---|---|---|
Sistema de gestión de bases de datos (MS-SQLServer) | - TCP/IP. - Configurable desde el software MS-SQLServer. - Valor predeterminado de 1433 por Microsoft. | MS-SQL Server® permite diferentes tipos de conexión: TCP/IP, canalizaciones con nombre o a través de memoria. TCP/IP es el recomendado. Como regla general, su número de puerto predeterminado es 1433. Además, el software SQLServer (más específicamente, el "SQLServer Browser") puede abrir un puerto UDP para permitir el descubrimiento de instancias de SQL Server (como regla general, tiene un valor predeterminado de 1434). |
Salto IP devices (card encoders, control units, gateways, etc.) | - Puerto UDP. - Protocolo propietario. - Configurable desde el software. - Valor predeterminado de un valor aleatorio entre 5000-10000. | The Space software opens a single UDP port to communicate with all the Salto IP devices. On the other hand, Salto IP devices open a fixed UDP port in either 1100 (gateways, control units and card encoders v1) or 4433 (encoders v2). |
Salto frontend (browsers using the Space webapp) | - Puerto TCP/IP en modo de escucha. - Protocolo HTTP(S). - Configurable desde el software. - Valor predeterminado de 8100. | Este es el punto final del servidor web integrado. Los navegadores deben conectarse a este puerto para acceder a las páginas web de Space. La URL predeterminada es: http://(nombre_máquina):8100 (nota: HTTPS muy recomendable). |
Clientes Space | - Puerto TCP/IP en modo de escucha. - Protocolo HTTP(S). - Configurable desde el software. - Valor predeterminado de 8102. | Determinados clientes de Space, como la aplicación web Space o la utilidad LocalIOBridge, se conectan a este puerto para obtener notificaciones en tiempo real. |
Salto frontend clients (graphical-mapping) | - Puerto TCP/IP en modo de escucha. - Protocolo SOAP. - Configurable desde el software. - Valor predeterminado de 8099. | Este puerto solo lo utiliza el software de mapeo gráfico. |
Hotel PMS: Oracle Hospitality PMS (FIAS) protocol | - TCP/IP. - Protocolo Oracle Hospitality. - Configurable desde el software. | El servicio Space puede establecer una conexión TCP/IP con el PMS del hotel. |
Hotel PMS: Protocolo estándar de la industria | - Puerto TCP/IP en modo de escucha. - Protocolo estándar de la industria (propietario). - Configurable desde el software. | El servicio Space puede abrir un puerto TCP/IP de escucha al que está conectado el PMS del hotel. También se admite la conexión serie RS232. |
Clientes SHIP (protocolo SHIP) | Puerto TCP/IP en modo escucha. Protocolo SHIP (privativo) - Configurable desde el software. | El servicio de Space puede abrir un puerto de escucha TCP al que se conectan los clientes de SHIP para solicitar servicios de control de acceso. |
Host SHIP (protocolo SHIP) | - TCP/IP. - Protocolo SHIP (privativo). - Configurable desde el software. | El servicio de Space puede establecer una conexión TCP/IP con el Host SHIP para solicitar permisos de acceso. |
Ascensores Schindler: protocolo "PORT" | - TCP/IP - Protocolo "PORT" de Schindler - Configurable desde el software | El servicio de Space puede establecer una conexión TCP/IP con el servidor de Schindler. |
Thyssenkrupp | - Puerto UDP. - Protocolo de Thyssenkrupp (privativo). - Puertos de escucha: 8039 y 8040. - Puertos de destino: 8038 y 8041. - Se necesita una NIC dedicada para la red de ascensores. | Thyssenkrupp escucha los latidos del corazón del servicio Space en 8038. El servicio Space transmite latidos de corazón en 8038. Thyssenkrupp transmite latidos de corazón de unidifusión en 8039. El servicio Space escucha los latidos de corazón de Thyssenkrupp en 8039. Thyssenkrupp transmite mensajes de datos al servicio Space en 8040. El servicio Space escucha los mensajes de datos de Thyssenkrupp en 8040. Thyssenkrupp escucha los mensajes de datos del servicio Space en 8041. El servicio Space transmite mensajes de datos a Thyssenkrupp en 8041. |
Webhook HTTP(S) | - Protocolo HTTP(S) - Configurable desde el software | El servicio de Space puede establecer una conexión HTTP(S) con un punto final de terceros para enviar notificaciones en tiempo real |
Flujo de eventos | - TCP/IP (modo cliente) o UDP - Configurable desde el software | El servicio de Space puede conectarse a una máquina de terceros a la que se van a enviar eventos de seguimiento de auditoría en tiempo real utilizando un protocolo propietario. Nota importante: considere usar la funciónaliad "webhook" (ver arriba) en lugar del "flujo de eventos", ya que la primera es más estándar, flexible y segura. |
Cuadrícula de eventos de Transact | - Protocolo HTTPS - Configurable desde el software | El servicio de Space puede establecer una conexión websocket a un punto final de Event Grid de Microsoft para recibir comandos de Transact para la sincronización de la base de datos. |
Salto cloud | - TCP/IP (HTTPS) - Protocolo REST - Acceso a internet necesario | The Space service may establish connections with the Salto cloud located at the following URLs: - https://justin.saltowebservices.com - https://justin-msvn.saltowebservices.com - https://justin-tunnel.saltowebservices.com - In general: https://*.saltowebservices.com Note that connections to the Salto cloud are only needed when using mobile keys through the JustIN Mobile app. |
RUCKUS | - TCP/IP (TLS) - Puerto de destino: 4433 | The Space service may establish TCP/IP (TLS) connections to Ruckus controllers on port 4433 to send communications to Salto locks through the Ruckus controllers. |
GANTNER Gx7 | - TCP/IP (WS/WSS) - Puertos de destino: 80 y 443 | El servicio de Space puede establecer conexiones websocket para comunicarse con los controladores Gantner Gx7. |
Algunas consideraciones importantes a tener en cuenta en relación con la conectividad:
- Asegúrese de que el Firewall de MS-Windows (o cualquier otro programa similar con capacidad de bloqueo, como el antivirus) no bloquee el servicio de Space. Si es necesario, agregue una nueva entrada de excepción en el Firewall de Windows para evitar el bloqueo del servicio de Space.
- Algunos firewalls están configurados para cerrar automáticamente las conexiones TCP/IP que tienen un largo período de inactividad, lo que provoca problemas de comunicación dentro del sistema. Para evitar problemas de comunicación, asegúrese de que el firewall en su lugar no cierre automáticamente las conexiones TCP/IP cuando la inactividad es menor que:
- 5 minutos para conexiones websocket.
- 105 seconds for the Oracle Hospitality PMS (FIAS) protocol.
El espacio ha sido diseñado solo para entornos LAN. No lo exponga directamente a internet, ya que no es un entorno seguro y puede exponer el software a posibles riesgos de seguridad, como ataques DoS (denegación de servicio). Debe mantener el software dentro de un entorno de red seguro para garantizar su seguridad y confiabilidad. Si necesita acceder de forma remota a las páginas web de Space a través de Internet, utilice una VPN.
- Space integra su propio servidor web. No se requiere ningún servidor web externo (como MS-IIS o Tomcat).
- Support for HTTP proxy: you may configure the Space software so that all the HTTP communications (for instance, to the Salto cloud) are forwarded to a proxy server.
- Connections to the Salto cloud (that is,
https://*.saltowebservices.com
) are only needed if you are to use digital keys through the JustIN Mobile app. - Si necesita recibir notificaciones en tiempo real, considere utilizar la funciónaliad "webhook" en lugar del "flujo de eventos": la primera es más estándar, flexible y segura que la segunda.
Consideraciones de permisos
A continuación, se detallan los permisos necesarios para que funcione el software Space:
- La cuenta de Windows bajo la cual se ejecuta el servicio de Space (cuenta de Space en adelante) debe tener acceso total a la base de datos de Space. La forma más fácil es hacer que esa cuenta de Windows sea miembro de la función
DB_OWNER
dentro de la base de datos de Space. - La cuenta de Space debe tener acceso total a la carpeta raíz de Space (
C:\SALTO\ProAccess Space
por defecto) y a las carpetas que estén por debajo. Además, cualquier otra carpeta de trabajo (por ejemplo, utilizada para exportar o importar archivos) debe ser también accesible. - En última instancia, en caso de que se vaya a utilizar HTTPS, la cuenta de Space debe tener acceso al certificado correspondiente.
La buena noticia es que el programa de configuración administra todas las configuraciones anteriores por usted de forma predeterminada. Ten en cuenta que se requieren privilegios de administrador para iniciar el proceso de configuración.
En caso de una instalación nueva, la cuenta de Windows predeterminada para ejecutar el servicio Space será la cuenta integrada de bajo privilegio "Servicio de red". Bueno, más precisamente, su contraparte virtual:
NT SERVICE\ProAccessSpaceService
Por el contrario, en caso de una actualización de software, el programa de configuración respetará y mantendrá sin cambios la cuenta actual del servicio Space.
Esta configuración predeterminada y otras configuraciones se pueden modificar en cualquier momento mediante la herramienta de configuración del servicio denominada "ProAccess Space Configurator". Sin embargo, ten en cuenta que si cambias la cuenta de Windows del servicio Space a otra, deberás otorgarle manualmente permisos a todos los recursos mencionados anteriormente, es decir, la base de datos de Space, las carpetas de Space y el certificado HTTPS. .
Otras consideraciones de seguridad a tener en cuenta son las siguientes:
- Se recomienda utilizar una cuenta sin contraseña, como las cuentas integradas de la máquina como "Servicio de red". De lo contrario, el servicio Space dejará de funcionar al expirar la contraseña.
- In order to use the secure version of HTTP (HTTPS), you will first need to specify a valid certificate (use the "Space Configurator" to select one among the registered certificates within the server machine). We highly recommend that you use HTTPS instead of HTTP. Note that the selected certificate must also be valid in the client machines in order to: 1. evitar el mensaje de advertencia de "conexión no confiable" que muestra el navegador, 2. los navegadores reciben notificaciones en tiempo real (como aperturas de puertas) del servidor.
- Further considerations when the Salto "Graphical Mapping" is used: the Space service will accept connections from the GM software only if it is working under trusted user sessions. En el caso de un entorno de dominio de Windows, los usuarios de confianza son miembros del mismo dominio de Windows que el del servidor Space: si el controlador de dominio no considera al usuario como un miembro válido, el cliente (es decir, asignador gráfico) no podrá conectarse al servicio.
Si no tienes un entorno de dominio de Windows sino un entorno de grupo de trabajo, deberás crear el usuario correspondiente tanto dentro del servidor Space como en la estación cliente para tener conexiones de confianza.
Consideraciones sobre la base de datos
Debe haber una, y solo una, instancia de la base de datos de Space en el local.
Por el bien del rendimiento, se recomienda encarecidamente que tanto la base de datos de Space como el servicio se instalen en la misma máquina del servidor. De lo contrario, cualquier latencia entre ambos componentes tendrá un impacto negativo en todas las interacciones con periféricos y sesiones frontales.
El servicio Space puede funcionar con dos tipos de sistemas de base de datos: MS-SQL Server o MS-LocalDB. En los siguientes párrafos se explican algunas consideraciones sobre ambos tipos de bases de datos.
LocalDB
LocalDB es una versión miniaturizada de MS SQL Server que ofrece una instalación rápida y sin configuración. Es adecuado para instalaciones pequeñas (en general, donde se utiliza una sola máquina).
Una restricción con respecto a LocalDB es que sólo se aceptan conexiones desde la máquina local. Esto no es realmente un problema, ya que los navegadores de las máquinas cliente no se conectan directamente a la base de datos, sino al servicio Space2.
MS SQL Server
Las siguientes son las consideraciones más importantes a tener en cuenta con respecto a la base de datos MS-SQL Server:
- Como se mencionó anteriormente, se recomienda encarecidamente tener tanto la base de datos de Space como el software instalados en la misma máquina.
- Asegúrate de que la cuenta de Space sea miembro del rol
DB_OWNER
dentro de la base de datos de Space. - Asegúrate de que el nivel de compatibilidad de la base de datos de Space sea SQL2005 o superior.
- Considera habilitar la conexión SSL en la instancia de MS SQL Server para que las comunicaciones entre la base de datos y el servicio Space estén encriptadas. Esto se recomienda cuando la base de datos no está ubicada en la misma máquina que el servicio Space. Consulte Apéndice C para obtener más detalles.
En principio, los programas de instalación administran los tres primeros ajustes anteriores de forma predeterminada.
Mejores prácticas de seguridad
La siguiente es una serie de mejores prácticas para un sistema seguro:
- Asegúrate de que el sistema operativo en tu máquina de servidor y estaciones de trabajo esté actualizado con los últimos parches de seguridad. Por supuesto, evita usar sistemas operativos Windows que hayan sido descontinuados y que el proveedor ya no les brinde soporte. Lo mismo se aplica al software MS-SQL Server utilizado para el almacenamiento de datos.
- Utiliza una cuenta de Windows de bajo privilegio para ejecutar el servicio Space. Por ejemplo,
NT SERVICE
, o mejor,NT SERVICE\ProAccessSpaceService
(de forma predeterminada en el programa de instalación). - Mantén la base de datos de Space aislada al no otorgar permiso de acceso a ningún otro usuario. Solo el servicio Space (aparte de los administradores del sistema) debe tener acceso a la base de datos de Space.
- Para el bien del rendimiento, así como de la seguridad, se recomienda encarecidamente que tanto la base de datos de Space como el servicio se instalen en la misma máquina del servidor.
- En el servidor MS-SQL, habilita SSL para las conexiones de base de datos. Esto es importante cuando tanto la instancia de la base de datos como el servicio Space no se encuentran en la misma máquina.
- Utiliza HTTP seguro (HTTPS) cuando conectes los navegadores del cliente al servidor web de Space. Ten en cuenta que la configuración de HTTPS no es fácil y requiere el apoyo del personal de TI.
- Use a Certificate Authority (CA) signed certificate. Self-signed certificates should be used for testing purpose only, never for production environments.
- HTTPS uses SSL/TLS protocols under the hood to provide privacy and data integrity between two parties. There are several SSL/TLS versions but the only one currently supported by the Space software is 1.2. See Appendix A for further details.
- Behind the scenes, cipher suites, which are sets of instructions that enable secure network connections through SSL/TLS, provide a set of algorithms and protocols required to secure communications between clients and servers. Although there are several cipher suites in existence, the only ones currently supported by Space are the following:
- TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
- TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
- TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
- If you need to receive real-time notifications from the Space service, it is strongly recommended to use the HTTPS-based webhook functionality rather than the "event stream" functionality, as the former is more standard, flexible and secure.
- If Space authentication is used, make sure an appropriate password policy is enabled (for example, passwords letters, numbers and symbols). You can also consider using LDAP authentication for logging in to the Space software.
- Para un inicio de sesión más seguro, se recomienda activar la función de autenticación de dos factores (2FA)3.
- Asegúrese también de que la función de cierre de sesión automático está activada para que la sesión del usuario se cierre automáticamente después de que se detecte inactividad durante la cantidad especificada de segundos.
- Back up the Space database on a regular basis (daily at least). This is essential for disaster recovery, business continuity and information security. Se recomienda encarecidamente guardar las copias fuera de las instalaciones.
- No exponga Space directamente a Internet. Como se sabe, Internet no es un entorno completamente seguro y puede exponer el software a posibles riesgos de seguridad. Por lo tanto, mantenga el software dentro de un entorno de red seguro para garantizar su seguridad y confiabilidad. Si necesita acceder a Space desde puntos remotos a través de Internet, utilice VPN en su lugar.
Máquinas cliente
Las máquinas cliente sólo necesitan un navegador web para empezar a interactuar con el servicio de Space. No hay necesidad de ningún software extra excepto cuando sea necesario trabajar con dispositivos USB. Las siguientes subsecciones explican con más detalle todas las consideraciones relativas a las máquinas cliente.
La aplicación web de Space
Web browsers are the window from which to interact with the Salto Space software. La URL predeterminada para conectarse es:
http://{{host_machine_name}}:8100
donde {{host_machine_name}}
es el nombre del servidor (en el que se ejecuta el servicio Space).
Tenga en cuenta que puede personalizar en cualquier momento (mediante la utilidad del configurador) esta URL y cambiarla, por ejemplo, a otro número de puerto o hacerla más segura seleccionando HTTPS4.
A continuación, se indican los requisitos del sistema para el front-end de Space:
- Web browser: any modern browser that complies with HTML5. Por ejemplo: Chrome, Firefox, Edge, Safari, etc. Internet Explorer también es compatible, aunque no se recomienda debido a su bajo rendimiento. No se requiere Silverlight.
- Hardware: CPU de 1 GHz (o superior) y 4 GB de RAM.
- Operating systems: if your client machine is to manage USB devices (such as PPD or card encoders), then Windows is required since the Bridge program (explained in the next section) only supports Windows machines (Windows 10, 11, Server 2016 or higher). Otherwise, if no USB device is to be connected, then any operating system can be used.
Note: The Adobe Flash Player plugin for webcam use is no longer supported.
One final consideration to bear in mind is that the Space frontend has been designed for desktop machines. Although it may work OK in iOS or Android mobile devices, the UX experience in these types of devices is far from optimal.
The "bridge" program between the Space service and USB devices
Web browsers impose multiple restrictions (due to security reasons) to web applications when it comes to use local system resources, such as USB ports. This is why the Space webapp cannot get access to USB ports, and thus, to the Salto USB devices attached to them (like PPDs or card encoders).
Salto provides a solution for this problem: the so-called "Local IO Bridge" program. This is a tiny Windows NT service that must be installed in only those client machines to which Salto USB devices must be connected.
The "Local IO Bridge" program can be installed from the Space webapp (that is, from the browser). You can also find a copy of this program under the ..\dist
folder in the server.
The "Local IO Bridge" program, as its name implies, works as a "communication bridge" between the Space service and the USB device.
This is accomplished firstly by establishing a TCP/IP connection to the Space service and secondly by opening the USB port to which the Salto device is connected. Once both endpoints are open, the "Local IO Bridge" does nothing more than retransmit messages from one endpoint to the other. The final result is that USB devices are being remotely controlled by the Space service in the server.
In summary, what follows are the main considerations for the "Local IO Bridge" program:
- The installer of the "Local IO Bridge" program can be downloaded from the Space webapp (from the web browser). A copy of this program can also be found in the
..\dist
folder in the server. Installation is simple and straightforward. - The "Local IO Bridge" requires .NET framework 4.0 or later (the installer will automatically install it for you if it is missing). The operating system must be Windows 10, 11, Server 2016 or higher.
- El "Local IO Bridge" se puede instalar desde la línea de comandos en modo silencioso, es decir, en modo desatendido5. This helps the automatized deployment of the program in client machines. For this purpose, you must use both the "quiet" and the "installDir" switches, as shown in the example below:
C:\setup_saltolocaliobridge.exe -quiet -InstallDir= "C:\SALTO\ Local IO Bridge"
where the "installDir" switch must be followed by the path of the destination folder.
- Every time a communication process is needed between the local USB device and the Space service in the server (for example, for reading a card at a Salto card encoder), a TCP/IP connection is established from the "Local IO Bridge" program to the server. The default target TCP/IP port is 8102 though it can be configured to another value if desired. Consulte también Puertos y conexiones desde y hacia el servicio Space.
- In addition, the "Local IO Bridge" program opens two listening ports to which the Space webapp (running within the browser) is connected. Their port numbers can be any value within the range 50000-51000.
- Make sure that the "Local IO Bridge" program is running (as a Windows NT service) before working with USB Salto devices. The Space webapp will show you a warning message if it detects that the "Local IO Bridge" program is not available.
Ports and connections from and to the "Local IO Bridge" service
Type of system to communicate with | Port type, protocol and configuration | Descripción |
---|---|---|
Salto devices: USB or RS232 | - USB, RS232 - Configurable from the software | The "Local IO Bridge" service opens the required USB (or RS232) port in order to communicate with the attached Salto device. |
Salto Space service | - TCP/IP. - HTTP(S) protocol - Defaults to port 8102 - Configurable from the software | The "Local IO Bridge" service establishes a connection to the Space service every time a communication process with a USB device is needed (for example, read a card in the encoder). |
Salto Space webapp | - Two TCP/IP ports in listening mode - HTTP(S) protocol | The Space webapp (within the browser) connects to these two ports. This allows the webapp to ask the "Local IO Bridge" for port information and status, and perform actions on the USB devices. |
Appendix A: Security protocols and cipher suites for HTTPS
HTTPS uses SSL (Secure Socket Layer) or its newer version TLS (Transport Layer Security) under the hood to provide privacy and data integrity between two parties. The Space software supports SSL/TLS by means of a Microsoft library called Schannel.dll
, which is part of the Windows platform (including Windows 10, 11, Server 2012 R2, Server 2016, etc.).
La biblioteca Schannel admite varias versiones de SSL/TLS (incluidas SSL v2.0, SSL v3.0, TLS v1.0, TLS v1.1, TLS v1.2 y TLS 1.3), así como varios algoritmos criptográficos.
Independientemente de las versiones de SSL/TLS que admita la biblioteca Schannel, a partir de la versión 6.7 de Space, la única versión de TLS compatible es la 1.2. Por lo tanto, debe configurar la biblioteca Schannel para que utilice TLS 1.2.
En principio, la biblioteca Schannel elegirá automáticamente el mejor protocolo y algoritmo criptográfico en función de las capacidades del cliente y del servidor. Sin embargo, puede configurar Schannel.dll
para controlar el uso de versiones específicas del protocolo SSL/TLS y los conjuntos de cifrado. Esta configuración se realiza estableciendo determinadas claves de registro en el registro de Windows, tal y como se explica en el siguiente artículo de Microsoft:
Tenga en cuenta que esta configuración de seguridad tiene un alcance de toda la máquina y no se puede configurar por aplicación. Esto significa que los cambios en la configuración de Schannel afectarán a todas las aplicaciones que utilizan la biblioteca Schannel.
La manipulación directa de las claves de registro no es fácil. Una forma más cómoda de configurar las opciones de seguridad es utilizar una herramienta de la empresa "Nartac Software" llamada IISCrypto:
IISCrypto es una herramienta gráfica gratuita (véanse las capturas de pantalla a continuación) creada para simplificar la habilitación y deshabilitación de diversos protocolos y conjuntos de cifrado.
Anexo B: Provisión de certificación para HTTPS
La provisión de certificaciones HTTPS en entornos LAN no es una tarea fácil y debe ser realizada por personal informático cualificado. Esta sección no es de ninguna manera un manual exhaustivo para crear e instalar certificados para el Space HTTPS endpoint, sino más bien una guía simplificada. La siguiente imagen muestra los pasos principales:
- Cree una autoridad de certificación (CA) corporativa. Si aún no tiene una, comience por crear su CA "raíz" (será un certificado autofirmado). Especifique los valores para campos como la caducidad, las claves, el algoritmo hash, etc.
- Distribuya la CA corporativa creada entre las máquinas cliente. El certificado debe añadirse al almacén de entidades de certificación raíz de confianza.
- Cree el certificado de Space y fírmelo con la CA corporativa. El campo que más importa dentro del certificado de Space es el "Nombre común". Ahí es donde se proporciona el nombre de host del servidor de Space ("Server01" en el ejemplo).
- Instale el certificado de Space en el servidor de Space. Si es necesario, conceda permiso de acceso a la cuenta de Windows del servicio de Space al certificado.
- Configure el software de Space (con la herramienta de configuración) para que utilice el certificado de Space.
Anexo C: Configurar MS-SQL Server para forzar conexiones cifradas
Lo que sigue es la forma de configurar el servidor para forzar conexiones cifradas con los clientes de la base de datos (consulte las imágenes de abajo):
- En SQL Server Configuration Manager, expanda **Configuración de red de SQL **Server, haga clic con el botón derecho en Protocolos para
{{server_instance}}
y, a continuación, seleccione Propiedades. - En el cuadro de diálogo Propiedades de Protocolos para
{{instance_name}}
, en la pestaña Certificado, seleccione el certificado deseado en el menú desplegable del cuadro Certificado y, a continuación, haga clic en Aceptar. - En la pestaña Marcas, en el cuadro Forzar cifrado, seleccione Sí y, a continuación, haga clic en Aceptar para cerrar el cuadro de diálogo.
- Reinicie el servicio SQL Server
Si no se ha provisionado ningún certificado en el paso 2, SQL Server genera un certificado autofirmado, que podría ser más que suficiente cuando tanto el servicio de Space como la DB están ubicados en la misma máquina. La opción más segura es, por supuesto, utilizar un certificado verificable, aunque implica una gestión más compleja.
En el caso de que se proporcione un certificado verificable, la cuenta de servicio de SQL Server debe tener permisos de lectura sobre el certificado utilizado para forzar el cifrado en el SQL Server. Para una cuenta de servicio sin privilegios, será necesario añadir permisos de lectura al certificado. Si no se hace, el reinicio del servicio SQL Server puede fallar.
Más detalles:
Notas a pie de página
Al momento de escribir este documento, y según Microsoft, MS SQL Server no se puede instalar en un controlador de dominio de Windows Server (consulte https://support.microsoft.com/en-us/kb/2032911). ↩︎
Al momento de escribir esto, el software de Mapa Gráfico sí establece una conexión directa con la base de datos de Space. Por lo tanto, no es buena idea instalar el software de Mapa Gráfico en una máquina diferente al servidor. Otherwise, use a MS-SQL Server database instead. ↩︎
Puede usar cualquier aplicación móvil 2FA que admita el algoritmo estándar RFC 6238 para la generación de códigos de acceso únicos basados en el tiempo. For instance, Google Authenticator, Microsoft Authenticator, Twilio's Authy, etc. ↩︎
Asegúrese de que el certificado utilizado por el servicio de Space también sea válido en la máquina cliente. De lo contrario, el navegador le mostrará un mensaje de advertencia ("conexión no confiable"). What is worse, the client machine will not be able to receive real-time notifications from the server (such as door openings in the monitoring window). ↩︎
The "InstallDir" switch (used to specify the destination folder) is supported in Space version 4.0.3.11 or earlier. ↩︎