Plateforme Inetlab - Internet Network Technologies Lab

Différences entre les versions de « Documentation/Doc-LRP Gateway »

De Plateforme Inetlab - Internet Network Technologies Lab
Aller à la navigation Aller à la recherche
(Page créée avec « 1) ajouter des gateways dans ChirpStack (bien reprendre le bon gatewayID déclaré sur ta borne) https://loraserver.u-strasbg.fr/#/organizations/gateways 2) Pour conf… »)
 
 
(18 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 +
== Ajout d'une nouvelle Gateway ==
  
 +
=== Configuration d'une Gateway ===
  
1) ajouter des gateways dans ChirpStack (bien reprendre le bon gatewayID déclaré sur ta borne)
+
==== Prérequis matériel ====
 +
* La gateway doit pouvoir être configuré avec le démon '''ChirpStack Gateway Brige''' ( v3.14.3 ou plus récente), qui encapsule les messages du packet forwarder au format UDP/IP dans des paquets MQTT. MQTT apporte le double avantage d'authentifier les connexions et de sécuriser les échanges au niveau IP avec l'usage MQTT + TLS.
 +
* La liste des bornes supportées par ChirpStack Gateway Bridge est [https://www.chirpstack.io/gateway-bridge/gateway/ disponible sur cette page.]
 +
* NEW:
 +
** le serveur MQTT est ssl://inetlab-lorawan.icube.unistra.fr:8883
 +
** L'utilisation des certificats TLS est désormais obligatoire, il faut télécharger trois certificats pour chaque gateway depuis l'interface d'administration https://inetlab-lorawan.icube.unistra.fr > Tenant > Gateway > Gateway ID > onglet TLS certificate
 +
*** ca.crt
 +
*** cert.crt
 +
*** cert.key
  
https://loraserver.u-strasbg.fr/#/organizations/gateways
+
==== Procédure : ====
 +
# Installer le démon ChirpStack Gateway Bridge en suivant les [https://www.chirpstack.io/gateway-bridge/gateway/ instructions disponibles] pour votre Gateway
 +
# Copier les fichiers ca.crt, cert.crt et cert.key dans le répertoire /etc/chirpstack-gateway-bridge/ sur la Gateway
 +
# Editer le fichier de configuration '''chirpstack-gateway-bridge.toml''' (à adapter avec son compte et son gatewayID) :
 +
## '''client_id''': utiliser le '''gatewayID''' de la gateway déclarée dans Chirpstack
 +
## '''ca_cert''': télécharger le fichier sur l'interface de configuration de la gateway (onglet
 +
## '''tls_cert''': utiliser le '''password''' de connexion Chirpstack
 +
## '''tls_key''': utiliser le '''password''' de connexion Chirpstack
  
 +
<pre>
 +
[general]
 +
log_level=4
 +
log_to_syslog=true
 +
 +
[backend]
 +
type="semtech_udp"
 +
 +
[backend.semtech_udp]
 +
udp_bind = "0.0.0.0:1700"
 +
skip_crc_check = false
 +
fake_rx_time = true
 +
 +
[integration]
 +
marshaler="protobuf"
  
2) Pour configurer ChirpStack gateway bridge
+
# MQTT integration configuration.
 +
[integration.mqtt]
 +
event_topic_template="eu868/gateway/{{ .GatewayID }} /event/{{ .EventType }}"
 +
state_topic_template="eu868/gateway/{{ .GatewayID }}/state/{{ .StateType }}"
 +
command_topic_template="eu868/gateway/{{ .GatewayID }}/command/#"
 +
 +
[integration.mqtt.auth]
 +
type="generic"
 +
 +
[integration.mqtt.auth.generic]
 +
server="ssl://inetlab-lorawan.icube.unistra.fr:8883"
 +
qos=0
 +
clean_session=false
 +
# NOTE: use the Gateway ID for the MQTT client_id param
 +
client_id="XXXXXXXXXXXXXXXX"
 +
ca_cert="/etc/chirpstack-gateway-bridge/ca.crt"
 +
tls_cert="/etc/chirpstack-gateway-bridge/cert.crt"
 +
tls_key="/etc/chirpstack-gateway-bridge/cert.key"
 +
</pre>
  
https://www.chirpstack.io/gateway-bridge/gateway/multitech/
+
==== NOTES : ====
  
Copier le package et installer en root via sudo
+
* Optimisation des paramètres de sécurité MQTT pour se connecter au serveur, en fonction des possibilités offertes par votre Gateway:
 +
::- MQTT sécurisé (à privilégier): server="ssl://inetlab-mqtt.icube.unistra.fr:8883"
 +
::- MQTT non sécurisé (à défaut): server="tcp://inetlab-mqtt.icube.unistra.fr:1883"
 +
* La configuration par défaut suppose l'utilisation du backend semtech_udp avec les interfaces upstream et downstream qui écoutent sur le même port UDP 1700
  
sudo opkg install chirpstack-gateway-bridge_3.13.1-r1_arm926ejste.ipk
+
=== Déclaration d'une Gateway dans l'organisation ChirpStack ===
  
https://www.chirpstack.io/gateway-bridge/install/config/
+
==== Prérequis de l'organisation ChirpStack : ====
 +
* L'organisation est autorisée à ajouter des Gateways (Menu '''Gateways''' disponible)
 +
* L'utilisateur est '''Organization Admin''' ou '''Gateway Admin'''
  
En utilisant l’adresse loraserver.u-strasbg.fr , mqtt SSL (port 8883)
+
==== Procédure : ====
et le login/password de ton organisation (fimbert).  
+
# Se connecter sur l'interface https://inetlab-lorawan.icube.unistra.fr
 +
# Aller dans le menu '''Gateways'''
 +
# Cliquer en haut à gauche sur le bouton '''+CREATE'''
 +
# Renseigner le champs '''Gateway Name''' , ce nom apparait dans les metadatas des messages d'applications
 +
# Renseigner le champ '''Gateway Description''', pour ajouter des détails à caractère informatif pour l'interface ChirpsStack uniquement
 +
# Renseigner le champ '''Gateway ID''', il s'agit de l'identifiant LoRaWAN paramétré dans le service packet forwarder de la '''Gateway'''. Il est possible de générer un identifiant aléatoire (Icône '''MSB''') à paramétré sur la borne.
 +
# Sélectionner pour le '''Network Server''' l'instance par défaut : '''chirpstack-network-server'''
 +
# Sélectionner pour le '''Service Profile''' l'instance par défaut de votre organisation (metadata des gateways dans les messages d'applications, datarate de 0 à 5 autorisés, gateways disponibles pour toutes les organisations)
 +
# Cocher '''Gateway Discovery enabled''' pour autoriser les requêtes de découvertes pour la couverture radio entre les '''Gateways'''
 +
# Préciser les coordonnées GPS de la '''Gateway'''. Les coordonnées seront disponibles dans les metadata des messages d'applications.
  
Exemple du fichier  /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml (à adapter avec son compte et son gatewayID) :
 
  
 +
=== Notes spécifiques aux différents types de matériel ===
  
# This configuration provides a Semtech UDP packet-forwarder backend and
+
==== Gateway Multitech Conduit ====
# integrates with a MQTT broker. Many options and defaults have been omitted
 
# for simplicity.
 
#
 
# See https://www.chirpstack.io/gateway-bridge/install/config/ for a full
 
# configuration example and documentation.
 
  
 +
Paramétrages via l'interface web:
  
[general]
+
* Pour la première connexion, il faut obligatoirement se connecter via un navigateur web (port 80) sur l'adresse IP 192.168.2.1 (IP statique attribuée par défaut qui ne répond pas au ping)
# debug=5, info=4, warning=3, error=2, fatal=1, panic=0
+
* Dans l'interface web d'administration, configurer les paramètres suivants
log_level=4
+
** LORAWAN NETWORKING
 +
*** LoRa Mode : PACKET FORWARDER
 +
*** SX1301 > Channel Plan : EU868
 +
*** BASICS > Gateway ID => the Gateway ID to use with ChirpStack Server
 +
*** Server
 +
**** Upstream Port : 1700
 +
**** Downstream Port : 1700
 +
** Remote Management: activer SSH sur le port 22
  
# Log to syslog.
 
#
 
# When set to true, log messages are being written to syslog.
 
log_to_syslog=true
 
  
[backend]
+
Installation et configuration de ChirpStack Gateway Bridge
type="semtech_udp"
 
  
[backend.semtech_udp]
+
'''ATTENTION''', utiliser la version v3.14.3 ou plus récente
udp_bind = "0.0.0.0:1700"
 
skip_crc_check = false
 
fake_rx_time = true
 
  
[integration]
+
* [https://www.chirpstack.io/gateway-bridge/gateway/multitech/ Suivre les instructions]
marshaler="json"
+
* [https://artifacts.chirpstack.io/vendor/multitech/conduit/ Télécharger le dernier package] compatible avec la Gateway Multitech Conduit :
 
+
* Copier le package depuis votre poste de travail vers la gateway avec SCP
# MQTT integration configuration.
+
* Se connecter en SSH sur la gateway
[integration.mqtt]
+
* Installer le package
# Event topic template.
+
sudo opkg install chirpstack-gateway-bridge_3.13.1-r1_arm926ejste.ipk
event_topic_template="gateway/{{ .GatewayID }}/event/{{ .EventType }}"
+
* Editer le fichier de configuration chirpstack-gateway-bridge.toml
# Command topic template.
+
sudo vi /var/config/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
command_topic_template="gateway/{{ .GatewayID }}/command/#"
+
* Redémarrer le service
 
+
sudo /etc/init.d/chirpstack-gateway-bridge restart
# MQTT authentication.
 
[integration.mqtt.auth]
 
type="generic"
 
 
 
[integration.mqtt.auth.generic]
 
server="ssl://mqttnet.u-strasbg.fr:8883"
 
qos=0
 
clean_session=false
 
client_id="XXXXXXXXXXXXXXXX"
 
# Connect with the given username (optional)
 
username="fimbert"
 
# Connect with the given password (optional)
 
password="ChangeMe"
 
 
 
 
 
NOTES:
 
 
 
Gateway Multitech Conduit AP
 
 
 
* Pour la première connexion, il faut obligatoirement se connecter via un navigateur web (port 80) sur l'adresse IP 192.168.2.1 (IP statique attribuée par défaut qui ne répond pas au ping)
 
*
 

Version actuelle datée du 18 août 2023 à 17:19

Ajout d'une nouvelle Gateway

Configuration d'une Gateway

Prérequis matériel

  • La gateway doit pouvoir être configuré avec le démon ChirpStack Gateway Brige ( v3.14.3 ou plus récente), qui encapsule les messages du packet forwarder au format UDP/IP dans des paquets MQTT. MQTT apporte le double avantage d'authentifier les connexions et de sécuriser les échanges au niveau IP avec l'usage MQTT + TLS.
  • La liste des bornes supportées par ChirpStack Gateway Bridge est disponible sur cette page.
  • NEW:
    • le serveur MQTT est ssl://inetlab-lorawan.icube.unistra.fr:8883
    • L'utilisation des certificats TLS est désormais obligatoire, il faut télécharger trois certificats pour chaque gateway depuis l'interface d'administration https://inetlab-lorawan.icube.unistra.fr > Tenant > Gateway > Gateway ID > onglet TLS certificate
      • ca.crt
      • cert.crt
      • cert.key

Procédure :

  1. Installer le démon ChirpStack Gateway Bridge en suivant les instructions disponibles pour votre Gateway
  2. Copier les fichiers ca.crt, cert.crt et cert.key dans le répertoire /etc/chirpstack-gateway-bridge/ sur la Gateway
  3. Editer le fichier de configuration chirpstack-gateway-bridge.toml (à adapter avec son compte et son gatewayID) :
    1. client_id: utiliser le gatewayID de la gateway déclarée dans Chirpstack
    2. ca_cert: télécharger le fichier sur l'interface de configuration de la gateway (onglet
    3. tls_cert: utiliser le password de connexion Chirpstack
    4. tls_key: utiliser le password de connexion Chirpstack
 [general]
 log_level=4
 log_to_syslog=true
 
 [backend]
 type="semtech_udp"
 
 [backend.semtech_udp]
 udp_bind = "0.0.0.0:1700"
 skip_crc_check = false
 fake_rx_time = true
 
 [integration]
 marshaler="protobuf"

 # MQTT integration configuration. 
 [integration.mqtt]
 event_topic_template="eu868/gateway/{{ .GatewayID }} /event/{{ .EventType }}"
 state_topic_template="eu868/gateway/{{ .GatewayID }}/state/{{ .StateType }}"
 command_topic_template="eu868/gateway/{{ .GatewayID }}/command/#"
 
 [integration.mqtt.auth]
 type="generic"
 
 [integration.mqtt.auth.generic]
 server="ssl://inetlab-lorawan.icube.unistra.fr:8883"
 qos=0
 clean_session=false
 # NOTE: use the Gateway ID for the MQTT client_id param
 client_id="XXXXXXXXXXXXXXXX"
 ca_cert="/etc/chirpstack-gateway-bridge/ca.crt"
 tls_cert="/etc/chirpstack-gateway-bridge/cert.crt"
 tls_key="/etc/chirpstack-gateway-bridge/cert.key"

NOTES :

  • Optimisation des paramètres de sécurité MQTT pour se connecter au serveur, en fonction des possibilités offertes par votre Gateway:
- MQTT sécurisé (à privilégier): server="ssl://inetlab-mqtt.icube.unistra.fr:8883"
- MQTT non sécurisé (à défaut): server="tcp://inetlab-mqtt.icube.unistra.fr:1883"
  • La configuration par défaut suppose l'utilisation du backend semtech_udp avec les interfaces upstream et downstream qui écoutent sur le même port UDP 1700

Déclaration d'une Gateway dans l'organisation ChirpStack

Prérequis de l'organisation ChirpStack :

  • L'organisation est autorisée à ajouter des Gateways (Menu Gateways disponible)
  • L'utilisateur est Organization Admin ou Gateway Admin

Procédure :

  1. Se connecter sur l'interface https://inetlab-lorawan.icube.unistra.fr
  2. Aller dans le menu Gateways
  3. Cliquer en haut à gauche sur le bouton +CREATE
  4. Renseigner le champs Gateway Name , ce nom apparait dans les metadatas des messages d'applications
  5. Renseigner le champ Gateway Description, pour ajouter des détails à caractère informatif pour l'interface ChirpsStack uniquement
  6. Renseigner le champ Gateway ID, il s'agit de l'identifiant LoRaWAN paramétré dans le service packet forwarder de la Gateway. Il est possible de générer un identifiant aléatoire (Icône MSB) à paramétré sur la borne.
  7. Sélectionner pour le Network Server l'instance par défaut : chirpstack-network-server
  8. Sélectionner pour le Service Profile l'instance par défaut de votre organisation (metadata des gateways dans les messages d'applications, datarate de 0 à 5 autorisés, gateways disponibles pour toutes les organisations)
  9. Cocher Gateway Discovery enabled pour autoriser les requêtes de découvertes pour la couverture radio entre les Gateways
  10. Préciser les coordonnées GPS de la Gateway. Les coordonnées seront disponibles dans les metadata des messages d'applications.


Notes spécifiques aux différents types de matériel

Gateway Multitech Conduit

Paramétrages via l'interface web:

  • Pour la première connexion, il faut obligatoirement se connecter via un navigateur web (port 80) sur l'adresse IP 192.168.2.1 (IP statique attribuée par défaut qui ne répond pas au ping)
  • Dans l'interface web d'administration, configurer les paramètres suivants
    • LORAWAN NETWORKING
      • LoRa Mode : PACKET FORWARDER
      • SX1301 > Channel Plan : EU868
      • BASICS > Gateway ID => the Gateway ID to use with ChirpStack Server
      • Server
        • Upstream Port : 1700
        • Downstream Port : 1700
    • Remote Management: activer SSH sur le port 22


Installation et configuration de ChirpStack Gateway Bridge

ATTENTION, utiliser la version v3.14.3 ou plus récente

sudo opkg install chirpstack-gateway-bridge_3.13.1-r1_arm926ejste.ipk
  • Editer le fichier de configuration chirpstack-gateway-bridge.toml
sudo vi /var/config/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
  • Redémarrer le service
sudo /etc/init.d/chirpstack-gateway-bridge restart