¿Buscas alguna otra cosa?
Detalles del escenario:
- Se dispone de un parque grande de Contadores Eléctricos. Desde hace 15 años hasta hoy las lecturas de los contradores se realizan a través llamadas GSM de Datos (CSD) efectuadas a los módems los cuales están conectador a los Contadores Eléctricos por el puerto RS232. En este proyecto se pretende realizar una evolución de dicho sistema, pasando de un sistema de comunicaciones GSM (CSD) a uno de comunicaciones IP. Además, se pretende añadir un sistema de gestión remota de los módems (Device Manager) que permita la monitorización remota de los módems, así como poder realizar cambios de configuraciones remotas, actualización de firmware, gestión de certificados, etc.
- Se precisa que el nuevo sistema cuente con una elevada seguridad. Por lo tanto, tanto el canal de datos IP de la lectura del contador (comunicación entre el módem y el Centro de Lectura) como el canal de control de monitorización del módem (es decir, la comunicación entre el módem y el Device Manager) debe realizarse mediante una comunicación IP con seguridad SSL/TLS y autenticación mútua
- Actualmente la infraestructura de lectura de los Contadores Eléctricos se realiza mediante llamada de datos GSM (CSD). Por tanto, los nuevos módems deben ser también compatibles con este tipo de llamadas CSD hasta que la infraestructura migre a Comunicaciones IP. Aprovechando el reemplazo de módems, se pretende añadir una capa de seguridad adicional a las actuales llamadas de datos GSM (CSD), y es que los módems sólo deben aceptar llamadas CSD que se realicen desde números de teléfonos autorizados, esto es, desde los números de teléfono del Centro de Lectura de Contadores
Solución:
Fichero de configuración (master) config.txt:
Configuración | Observaciones |
COMM_baudrate: 9600 COMM_bitsperchar: 8 COMM_autorts: off COMM_autocts: off COMM_stopbits: 1 COMM_parity: none GPRS_apn: movistar.es GPRS_login: MOVISTAR GPRS_password: MOVISTAR GPRS_timeout: 0 GPRS_mode: 2g MTX_PIN: 0000 MTX_mode: serverTELNET_port: 20023 MTX_model: 199801422 MTX_ping: 35 MTX_pingIP: 8.8.8.8 MTX_ATLimited: off MTX_ATEmbedded: temporalclient MTX_temporalClientTimeout: 120 MTX_IDClient: [IMEI] MTX_clientSSL: on SMS_allPhones: off SMS_sendIP: off SMS_ATEnabled: on SMS_ATResponse: on SMS_validPhone1: +34666123456 SMS_validPhone2: +34666123457 FIREWALL_enabled: on FIREWALL_IP1: 80.1.2.3 FIREWALL_IP2: 80.4.5.6 TCP_port: 20010 TCP_IP: 80.1.2.3 MQTT_enabled: on MQTT_server: ssl://broker.cervello.io:8883 MQTT_id: yku41420t957oh8t MQTT_login: jfj1usly8ijhh9hizfr453 MQTT_password: gthhdte67y3ttes33fgg MQTT_attopic1: [IMEI]/AT MQTT_atrtopic: [IMEI]/ATR MQTT_keepalive: 300 DNS_enabled: on DNS_mode: mqtt DNS_mqttTopic: [IMEI]/dns DNS_extended: off DNS_period: 600 CSD_enabled: on CSD_validPhone1: 666333444 CSD_validPhone2: 666444555 |
Serial port baud rate Number of bits No flow control No flow control 1 stop bit No parity APN GPRS provided by the GSM operator GPRS Login GPRS Password Modem is always GPRS connected GPRS connection server type Pin of the SIM GPRS connection server type Modem model Ping time to oversee connection Google IP (f.e.) to ping No AT commands limitations Embedded command only for temporal TCP socket Socket closes if no traffic during x seconds Identifying chain TCP client socket Send SMS with commands from any phone Modem won’t respond to a missed call/SMS Commands can be sent to the MTX by SMS MTX responds with an SMS to a command SMS Authorized phone number 1 Authorized phone number 2 Authorized IP will be able to connect to modem IP address authorized 1 IP address authorized 2 Establish the gateway between ports Reading platform IP address MQTT service enabled Broker IP/DNS specified, including identifying port Identifier Username Password MQTT topic to send AT commands Topic to send replies to commands to Connection keep alive (300 seconds) Status data sending activated MQTT sending mode Topic where status data are sent Extended data (E/S, ADCs…) are not sent One sending every 600 secs (5 mins.) CSD calls are enabled Authorized phone number 1 Authorized phone number 2 |
Detalles:
- La conexión IP entre el módem y el Device Manager es permanente y segura (SSL/TLS).
Siempre está establecida y en cualquier momento es posible enviar un comando de acción
(cambio de configuración, reset, etc) desde el Device Manager al módem - La conexión entre el módem y la Plataforma de Lectura no es permanente. El procedimiento por parte de la Plataforma de Lectura para iniciar la lectura de un Contador de forma segura es la siguiente:
- La Plataforma de Lectura se conecta al puerto TCP 20010 del módem
- La Plataforma de Lectura envía el comando:
<MTXTUNNELR>AT^MTXTUNNEL=DEFAULTTEMPORALCLIENT</MTXTUNNELR> al módem a través de dicho socket para que éste abra un canal seguro (SSL/TLS) de
comunicaciones en modo TCP Cliente contra la plataforma - El módem abre un socket SSL/TLS contra el puerto “TCP_port” de la IP de la plataforma. Se realiza autenticación mútua entre Plataforma de Lectura y módem mediante certificados digitales
- Una vez establecido el socket seguro (SSL/TLS), el módem envía a través de dicho socket a la Plataforma de Lectura el valor de su parámetro de configuración MTX_IDClient, una cadena alfanumérica que permite a la Plataforma de Lectura identificar el módem que se ha conectado (en el caso que se pretendan leer varios contadores de forma simultánea)
Este socket permanecerá establecido hasta que sea cerrado por el lado de la Plataforma de Lectura o bien pasen “MTX_temporalClientTimeout” segundos sin tráfico en el mismo - La plataforma puede iniciar la lectura del Contador a través de dicho socket como una
pasarela IP-RS232 transparente con seguridad SSL/TLS - Una vez finalizada la lectura del Contador, la Plataforma de Lectura cerrará el socket de lectura y el módem estará dispuesto para aceptar el comando por el puerto TCP_port. Para iniciar una nueva lectura del contador, se vuelve a iniciar el proceso indicado en 1.
- Debe ajustar los valores de los parámetros COMM_ ajustándolos a la configuración del puerto serie del dispositivo conectado
- Para las comunicaciones SSL, si necesita incorporar los certificados root de sus servidores, al final de este documento encontrará un Anexo con el procedimiento
- El módem únicamente aceptará las conexiones al puerto TCP_port provenientes de las
direcciones IP indicadas en los parámetros FIREWALL_IP1 y FIREWALL_IP2 - En este escenario, además de las comunicaciones IP, se permite conectar con el Contador mediante llamada GSM de datos (CSD). Es por ello que en este escenario debe forzarse el módem para usar la red 2G (parámetro GPRS_mode: 2g). En caso de no necesitar llamada de datos GSM, puede cambiarse el parámetro de configuración GPRS_mode a un valor “auto”, de esa forma el módem utilizará la red 2g/3g según disponibilidad