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
 
(14 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'''
  
Editer le fichier
+
==== Procédure : ====
 +
# 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.
  
sudo vi /var/config/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
 
  
En utilisant l’adresse mqttnet.u-strasbg.fr , mqtt (port 1883)
+
=== Notes spécifiques aux différents types de matériel ===
et le login/password de ton organisation ().
 
  
Exemple du fichier  /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml (à adapter avec son compte et son gatewayID) :
+
==== Gateway Multitech Conduit ====
  
 +
Paramétrages via l'interface web:
  
# This configuration provides a Semtech UDP packet-forwarder backend and
+
* 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)
# integrates with a MQTT broker. Many options and defaults have been omitted
+
* Dans l'interface web d'administration, configurer les paramètres suivants
# for simplicity.
+
** LORAWAN NETWORKING
#
+
*** LoRa Mode : PACKET FORWARDER
# See https://www.chirpstack.io/gateway-bridge/install/config/ for a full
+
*** SX1301 > Channel Plan : EU868
# configuration example and documentation.
+
*** BASICS > Gateway ID => the Gateway ID to use with ChirpStack Server
<nowiki>Insérer ici un texte non formaté
+
*** Server
 
+
**** Upstream Port : 1700
[general]
+
**** Downstream Port : 1700
# debug=5, info=4, warning=3, error=2, fatal=1, panic=0
+
** Remote Management: activer SSH sur le port 22
log_level=4
 
 
 
# Log to syslog.
 
#
 
# When set to true, log messages are being written to syslog.
 
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="json"
 
 
 
# MQTT integration configuration.
 
[integration.mqtt]
 
# Event topic template.
 
event_topic_template="gateway/{{ .GatewayID }}/event/{{ .EventType }}"
 
# Command topic template.
 
command_topic_template="gateway/{{ .GatewayID }}/command/#"
 
 
 
# MQTT authentication.
 
[integration.mqtt.auth]
 
type="generic"
 
 
 
[integration.mqtt.auth.generic]
 
server="tcp://mqttnet.u-strasbg.fr:1883"
 
qos=0
 
clean_session=false
 
client_id="XXXXXXXXXXXXXXXX"
 
# Connect with the given username (optional)
 
username="fimbert"
 
# Connect with the given password (optional)
 
password="ChangeMe"
 
</nowiki>
 
 
 
  
Coordonnées GPS
 
  
Si possible, ajouter/mettre à jour les coordonnées courante de la Gateway LoRa:
+
Installation et configuration de ChirpStack Gateway Bridge
  
* Soit dans la configuration du packet forwarder (coordonnées GPS statiques, option fake_gps)
+
'''ATTENTION''', utiliser la version v3.14.3 ou plus récente
* Soit dans l'interface graphique du serveur Chirpstack
 
 
 
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)
 
* Configuration 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
 
* Improve security with chirpstack-gatedway-bridge
 
  
server="ssl://mqttnet.u-strasbg.fr:8883"
+
* [https://www.chirpstack.io/gateway-bridge/gateway/multitech/ Suivre les instructions]
 +
* [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
 +
* Se connecter en SSH sur la gateway
 +
* Installer le package
 +
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

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