Habilitar Telnet y SSH
Esta página describe cómo habilitar Telnet y/o SSH en un reproductor BrightSign conectado en red. Puede usar Telnet/SSH para conectarse a la consola de aplicaciones de BrightSign, que aloja la Consola de depuración de BrightScript y recibe mensajes de imprimir de BrightScript. Esto es útil cuando el puerto serie (la E/S predeterminada para la consola de aplicaciones de BrightSign) es inaccesible. Telnet y SSH se han probado y se ha demostrado que funcionan con PuTTY, pero cualquier cliente con compatibilidad con Telnet/SSH debería funcionar.
Telnet no ofrece funciones de seguridad, mientras que SSH usa sesiones cifradas y requiere credenciales para acceder al shell. Sin embargo, por motivos de seguridad, no recomendamos habilitar Telnet ni SSH en un entorno de producción; solo deben usarse para depurar presentaciones en un entorno de prueba.
Se pueden proporcionar claves públicas autorizadas para SSH. La autenticación con clave pública puede combinarse con la autenticación por contraseña. Para deshabilitar la autenticación por contraseña, no establezca una contraseña de inicio de sesión.
Habilitar Telnet
Para habilitar Telnet en un reproductor, ejecute un script autorun.brs que contenga el siguiente código:
reg = CreateObject("roRegistrySection", "networking")
reg.write("telnet","23")
reg.flush()Esto permitirá una conexión Telnet en el puerto 23 (el puerto predeterminado para Telnet). Puede cambiar el segundo parámetro del método Write() para abrir Telnet en un puerto diferente si lo desea.
Telnet no se habilitará hasta que el script finalice y el reproductor se reinicie. Puede usar la función ReiniciarSistema() para finalizar el script autorun.brs y reiniciar el reproductor.
Consulte aquí para obtener información sobre cómo acceder al reproductor mediante Telnet.
Deshabilitar Telnet
Para deshabilitar Telnet, ejecute un script autorun.brs que contenga el siguiente código:
reg = CreateObject("roRegistrySection", "networking")
reg.delete("telnet")
reg.flush()Será necesario reiniciar el reproductor para que esta configuración surta efecto.
Habilitar SSH
Hay disponible un entorno SSH limitado, con el nombre de usuario brightsign, que le permite conectarse al proceso del intérprete de BrightScript. Para habilitar SSH en un reproductor, ejecute un autorun.brs que contenga el siguiente código:
reg = CreateObject("roRegistrySection", "networking")
reg.write("ssh","22")
n=CreateObject("roNetworkConfiguration", 0)
n.SetLoginPassword("password")
n.Apply()
reg.flush()Esto permitirá una conexión SSH en el puerto 22 (el puerto predeterminado para SSH). Puede cambiar el segundo parámetro del método Write() para abrir SSH en un puerto diferente. Tenga en cuenta que el número de interfaz usado para crear la instancia roNetworkConfiguration (0 para Ethernet o 1 para WiFi) no es significativo.
El código también establece la contraseña de inicio de sesión SSH en "password", que puede cambiarse editando el parámetro de SetLoginPassword() . El nombre de usuario siempre será "brightsign".
SSH no se habilitará hasta que el script finalice y el reproductor se reinicie. Puede usar la función ReiniciarSistema() para finalizar el script autorun.brs y reiniciar el reproductor. Alternativamente, puede usar la función FIN para salir del script y luego reiniciar el reproductor manualmente.
Consulte aquí para obtener información sobre cómo acceder al reproductor mediante SSH.
Deshabilitar SSH
Para deshabilitar SSH, ejecute un script autorun.brs que contenga el siguiente código:
reg = CreateObject("roRegistrySection", "networking")
reg.delete("ssh")
reg.flush()Será necesario reiniciar el reproductor para que esta configuración surta efecto.
Acceder a la conexión Telnet / SSH
Para conectarse al reproductor mediante Telnet/SSH, introduzca la dirección IP del reproductor con el puerto configurado en su aplicación cliente. Puede obtener la dirección IP del reproductor iniciándolo sin una tarjeta SD.
En los siguientes ejemplos, actualice las instancias de {{IP_address}} o {{Serial_number}} con los valores correctos.
telnet {{IP_address}}ssh brightsign@{{IP_address}}Dado que los dispositivos configurados con DHCP suelen cambiar las direcciones IP al reiniciarse, este proceso será más sencillo si asigna al reproductor una dirección IP estática durante la configuración. Si esto no es factible, es posible que pueda conectarse al reproductor usando lo siguiente (esto requiere Linux / macOS o Windows con Bonjour instalado):
telnet brightsign-{{Serial_number}}.localssh brightsign@brightsign-{{Serial_number}}.localUsar Telnet / SSH con serie
De forma predeterminada, habilitar la salida de depuración mediante Telnet o SSH deshabilitará dicha salida a través del puerto serie. El puerto serie aún puede utilizarse para interactuar con dispositivos serie mediante el objeto roSerialPort.
Es posible habilitar la salida de depuración tanto por Telnet/SSH como por serie; sin embargo, la interacción con dispositivos serie mediante el objeto roSerialPort se volverá muy poco fiable. Para habilitar también la salida de depuración por serie, ejecute un script que contenga el siguiente código después de que Telnet/SSH haya sido habilitado:
reg = CreateObject("roRegistrySection", "networking")
print "Trying to enable serial with Telnet/SSH"
print reg.write("serial_with_telnet", "1")
reg.flush()Notas adicionales
- Aunque la clave del registro está etiquetada como "serial_with_telnet", se aplica tanto a las configuraciones de Telnet como de SSH.
- Se permiten múltiples conexiones simultáneas mediante Telnet o SSH. La salida se refleja como una única sesión compartida.
- Un script en ejecución puede interrumpirse presionando Ctrl-C (si la depuración del script está deshabilitada, es posible que deba presionar Ctrl-C dos veces).
- La contraseña SSH permanece configurada incluso si el acceso SSH está deshabilitado. Actualmente no hay forma de borrar la contraseña.
- Actualmente no hay soporte para autenticación mediante una clave pública SSH.