Page 1 sur 1
Domoticz API/JSON URL's
Publié : 11 déc. 2023, 16:05
par DomoJarrie
Bonjour,
Est-il possible d'utiliser l'API/JSON URL's pour par exemple extraire les valeurs d'un compteur avec JSON.lua ou commander un switch à distance à partir d'un réseau extérieur au réseau local ?
Si oui, comment régler les paramètres de sécurité de l’émetteur et du récepteur, et quel est le script à utiliser pour satisfaire les exigences de l’authentification ?
Je vous remercie pour votre réponse.
Re: Domoticz API/JSON URL's
Publié : 11 déc. 2023, 19:02
par Keros
Je viens de déplacer ton sujet dans la section dédiée aux connexions via internet.
Tu peux très bien utiliser l'api depuis l'extérieur de chez toi. Il y a plusieurs possibilités (avec le risque de sécurité associé) :
- Faire une redirection de port depuis ta box
- Utiliser un VPN
- Utiliser un VPS
Re: Domoticz API/JSON URL's
Publié : 12 déc. 2023, 00:05
par DomoJarrie
Bonjour,
J'ai trouvé, il fallait simplement que dans Configuration -> Paramêtres -> Sécurité -> réseaux de confiance, je fasse les réglages nécessaires
Re: Domoticz API/JSON URL's
Publié : 12 déc. 2023, 07:15
par lost
Mettre la totalité d'un réseau externe en confiance, c'est osé. Sinon l'API se commande en https, en incluant l'authentification (https://user:pass@IPEXT_OU_DOMAINE/...)
Mieux vaut un nom domaine (utiliser no-ip par exemple) + certif lets encrypt...
Re: Domoticz API/JSON URL's
Publié : 12 déc. 2023, 12:55
par Keros
Avec la commande https://user:pass@IPEXT_OU_DOMAINE, le mot de passe est chiffré également ?
Il me semblait que les URL voyageaient en clair et que c'était le contenu qui était crypté.
Re: Domoticz API/JSON URL's
Publié : 12 déc. 2023, 17:59
par lost
Le chiifrement intervient dès l'établissement de la connexion sinon cela ne servirait a rien. Domoticz interdit d'ailleurs le truc pour les appels api en http par défaut. En https c'est pas le cas.
EDIT:
Tu peux d'ailleurs comparer capture LAN/http(8080) et WAN/https avec wireshark (filtres "tcp port 8080" puis "tcp port https" resp. brower etc... fermés pour ne pas générer de trafic du même type et avoir une capture propre sur ces filtres simples).
Et capture démarrée, faire une requête curl type
curl "
http://192.168.1.XX:8080/json.htm?type= ... SunRiseSet"
puis
curl "https://user:pass@mon_domaine/json.htm?type=command¶m=getSunRiseSet"
Dans le 1er cas, la requête "http/GET" avec l'url de l'API JSON est clairement visible, ainsi que la réponse. Dans le second, tu n'as que du "tls v1.3/application data" chiffré (et bien après le server hello se mettant d'accord avec le client sur le chiffrement).
Aucun pb donc. S'il y en avait eu, ce format de login n'aurait même pas été supporté en https AMHA, cela n'aurait pas eu de sens sauf à vouloir tendre des pièges!