monitor : accès https ?

Forum dédié aux interfaces personnalisables : Custom Pages, Reacticz, Domoboard...
Damsee
Messages : 87
Inscription : 26 déc. 2016, 22:21

monitor : accès https ?

Message par Damsee »

Hello,

Merci à vil1driver et à la communauté pour le boulot effectué :D
Dans le cadre de mon installation Domoticz sur Pi3 j'ai configuré l'ensemble des accès en mode sécurisé (accès via https et authentification via certificat / pour répondre au post https://easydomoticz.com/forum/viewtopi ... =25&t=3416 sur la sécurisation de l'accès à Domoticz et Monitor à la fois).
Ne voyant pas la météo et le traffic s'afficher, j'ai regardé les logs que vous trouverez ci-dessous :

Code : Tout sélectionner

Mixed Content: The page at 'https://myip/monitor/' was loaded over HTTPS, but attempted to connect to the insecure WebSocket endpoint 'ws://myip:9001/'. This request has been blocked; this endpoint must be available over WSS.
k._doConnect @ mqttws31-min.js:36
mqttws31-min.js:36 Uncaught DOMException: Failed to construct 'WebSocket': An insecure WebSocket connection may not be initiated from a page loaded over HTTPS.
    at k._doConnect (https://myip/monitor/js/mqttws31-min.js:36:449)
    at k.connect (https://myip/monitor/js/mqttws31-min.js:31:481)
    at H.connect (https://myip/monitor/js/mqttws31-min.js:65:110)
    at https://myip/monitor/js/mqtt.connect.js:11:8
jquery.min.js:4 Mixed Content: The page at 'https://myip/monitor/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://www.prevision-meteo.ch/services/json/mycity?_=1486075012839'. This request has been blocked; the content must be served over HTTPS.
send @ jquery.min.js:4
jquery.min.js:4 XMLHttpRequest cannot load http://www.prevision-meteo.ch/services/json/mycity?_=1486075012839. Failed to start loading.
send @ jquery.min.js:4
myip/:1 Mixed Content: The page at 'https://myip/monitor/' was loaded over HTTPS, but requested an insecure image 'http://www.prevision-meteo.ch/uploads/widget/mycity_0.png?timestamp=1486075016380'. This content should also be served over HTTPS.
myip/:1 Mixed Content: The page at 'https://myip/monitor/' was loaded over HTTPS, but requested an insecure image 'http://www.prevision-meteo.ch/uploads/widget/mycity_1.png?timestamp=1486075016381'. This content should also be served over HTTPS.
myip/:1 Mixed Content: The page at 'https://myip/monitor/' was loaded over HTTPS, but requested an insecure image 'http://www.prevision-meteo.ch/uploads/widget/mycity_2.png?timestamp=1486075016382'. This content should also be served over HTTPS.
myip/:1 Mixed Content: The page at 'https://myip/monitor/' was loaded over HTTPS, but requested an insecure image 'http://www.prevision-meteo.ch/uploads/widget/mycity_3.png?timestamp=1486075016383'. This content should also be served over HTTPS.
util.js:210 Google Maps API warning: NoApiKeys https://developers.google.com/maps/documentation/javascript/error-messages#no-api-keys
iB.j @ util.js:210
(anonymous) @ js?callback=initMap:140
(anonymous) @ js?callback=initMap:50
(anonymous) @ js?callback=initMap:42
(anonymous) @ js?callback=initMap:50
_.G @ js?callback=initMap:49
(anonymous) @ js?callback=initMap:50
_.v @ js?callback=initMap:34
yc @ js?callback=initMap:50
(anonymous) @ js?callback=initMap:140
Ce que je vois, c'est que monitor essaye d'initialiser Mosquito. L'erreur est normal puisque je ne l'ai pas activé.
D'ailleurs, je ne vois pas bien l'intérêt de l'activer hormis les cas précisés dans le tuto (changer de page ou afficher une cam lorsque qqun sonne...).
#1 : Si qqun peut m'expliquer les bonnes raisons d'activer Mosquito ? (rapidité du système monitor ?!...)

Ensuite, j'avais 2 erreurs sur le fait d'appeler des pages non sécurisées en HTTP alors que ma connexion est en HTTPS.
J'ai pu corrigé la 1ère erreur sur http://www.yr.no en modifiant le fichier frontpage.min.js et en remplacant l'URL http://www.yr.no par https://www.yr.no.
Cependant le souci persiste avec les URL http://www.prevision-meteo.ch/ puisque le site n'accepte pas les connexions en HTTPS :o
#2 : Est-ce qqun a rencontré ce souci et comment le contourner (hormis consulter monitor et mon installation en HTTP ce qui n'est pas une solution très sécurisée...).

Enfin, je constate des soucis d'accès à l'API Google Traffic. J'ai pourtant créé une clef sur le site de google que j'ai renseigné dans le fichier trafic.html. Cette partie pourrait d'ailleurs être détaillée un peu plus via un tuto ?
C'est peut-être de là que vient la dernière erreur "Google Maps API warning: NoApiKeys https://developers.google.com/maps/docu ... o-api-keys iB.j @ util.js:210" ?
L'erreur semble confirmée sur mon dashboard Google qui ne me signale aucune connexion :
Image
#3 : comment avez-vous résolu ce souci d'affichage du traffic ?

Merci :)
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: monitor : accès https ?

Message par vil1driver »

Damsee a écrit : Ce que je vois, c'est que monitor essaye d'initialiser Mosquito. L'erreur est normal puisque je ne l'ai pas activé.
D'ailleurs, je ne vois pas bien l'intérêt de l'activer hormis les cas précisés dans le tuto (changer de page ou afficher une cam lorsque qqun sonne...).
#1 : Si qqun peut m'expliquer les bonnes raisons d'activer Mosquito ? (rapidité du système monitor ?!...)
aucun autre intérêt que ceux cités..
Damsee a écrit :Ensuite, j'avais 2 erreurs sur le fait d'appeler des pages non sécurisées en HTTP alors que ma connexion est en HTTPS.
J'ai pu corrigé la 1ère erreur sur http://www.yr.no en modifiant le fichier frontpage.min.js et en remplacant l'URL http://www.yr.no par https://www.yr.no.
Cependant le souci persiste avec les URL http://www.prevision-meteo.ch/ puisque le site n'accepte pas les connexions en HTTPS :o
#2 : Est-ce qqun a rencontré ce souci et comment le contourner (hormis consulter monitor et mon installation en HTTP ce qui n'est pas une solution très sécurisée...).
je vais corriger cela (étendre l'auto détection du protocole à ces 2 url)
Damsee a écrit : Enfin, je constate des soucis d'accès à l'API Google Traffic. J'ai pourtant créé une clef sur le site de google que j'ai renseigné dans le fichier trafic.html. Cette partie pourrait d'ailleurs être détaillée un peu plus via un tuto ?
pas de soucis ce sera fait
Damsee a écrit : #3 : comment avez-vous résolu ce souci d'affichage du traffic ?
la custom page est avant tout destinée à un usage local, je n'ai jamais rencontré ce soucis car justement tout reste en http ici (pas d'accès distant)
je regarderai si quelque chose est faisable
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien
Damsee
Messages : 87
Inscription : 26 déc. 2016, 22:21

Re: monitor : accès https ?

Message par Damsee »

vil1driver a écrit :je vais corriger cela (étendre l'auto détection du protocole à ces 2 url)
Merci vil.
Néanmoins, la page https://www.prevision-meteo.ch/ n'est pas disponible avec le protocole HTTPS.
Du coup, je ne pourrais pas récupérer le JSON (et les icones...)
vil1driver a écrit :la custom page est avant tout destinée à un usage local, je n'ai jamais rencontré ce soucis car justement tout reste en http ici (pas d'accès distant)
je regarderai si quelque chose est faisable
Ah d'accord. Il faut dire que je souhaite utiliser la custom page afin d'avoir un joli dashboard et l'utiliser à la place d'Imperihome qui n'accepte pas l'authentification à Domoticz via certificat (via NGINX). Tu me diras si tu arrives à qchse, encore merci ;)
Damsee
Messages : 87
Inscription : 26 déc. 2016, 22:21

Re: monitor : accès https ?

Message par Damsee »

Hello,

Petite mise à jour suite à qques recherches et mises à jour...
Comme le protocole HTTPS n'est pas disponible pour le site http://www.prevision-meteo.ch, je me suis dis que j'allais à minima récupérer les icones et faire fonctionner le tout en local...
Du coup, création du répertoire ~domoticz/www/weather dans lequel je positionne les images en PJ et dans lequel je récupère le fichier JSON me permettant d'afficher la météo à l'aide du script suivant :

Code : Tout sélectionner

#!/bin/sh
OUTPUT=/home/pi/domoticz/www/weather
mycity=paris
TIME=`date +%s`
echo ${TIME} ${OUTPUT}
curl http://www.prevision-meteo.ch/uploads/widget/${mycity}_0.png?timestamp=${TIME} > ${OUTPUT}/${mycity}_0.png
cd $OUTPUT
cp -p ${mycity}_0.png ${mycity}_1.png
cp -p ${mycity}_0.png ${mycity}_2.png
cp -p ${mycity}_0.png ${mycity}_3.png
curl http://www.prevision-meteo.ch/services/json/${mycity}?_=${TIME} > ${OUTPUT}/${mycity}.tmp
sed -e "s+http:\\\/\\\/www.prevision-meteo.ch\\\/style\\\/images+\\\/weather+g" ${OUTPUT}/${mycity}.tmp > ${OUTPUT}/${mycity}.json
rm ${OUTPUT}/${mycity}.tmp
C'est moins interactif que la version avec connexion sur le site mais je récupère le fichier JSON avec les données mise à jour via la crontab sur mon rapsberry (1 fois par heure me suffit) :

Code : Tout sélectionner

55 * * * *   /home/pi/weather.sh  > /dev/null 2>&1
J'ai aussi modifié la page "meteo.html" pour récupérer le fichier JSON en local :

Code : Tout sélectionner

var JsonAddress = "/weather/"+city+".json";
et du coup, j'ai une belle météo :D
Voilà une bonne chose de faite.
meteo.png
meteo.png (374.91 Kio) Consulté 6467 fois
Pour info, j'avais aussi contacté l'admin du site http://www.prevision-meteo.ch pour avoir plus d'info sur l'utilisation du protocole HTTPS sur leur site... cela va venir d'ici qques mois, voici leur réponse :
www.prevision-meteo.ch a écrit :Merci pour votre remarque. Le protocole HTTPS sera activé lors d’une prochaine mise à jour du site (et pour une nouvelle version de l’API), cependant ce ne sera pas fait avant 2-3 mois le temps que tout soit en place.

Par contre, j'ai toujours le message d'erreur concernant l'API sur le traffic :

Code : Tout sélectionner

Google Maps API warning: NoApiKeys https://developers.google.com/maps/documentation/javascript/error-messages#no-api-keys
iB.j @ maps.googleapis.com/maps-api-v3/api/js/27/12/intl/fr_ALL/util.js:210
Bizarre, l'image s'affiche bien sur le PC de la maison, pas sur le téléphone en mode connexion distante...
trafic.png
trafic.png (385.83 Kio) Consulté 6467 fois
Avez-vous ce message d'erreur dans la console JS ?...
Pièces jointes
Prevision-meteo.ch icons.zip
(101.93 Kio) Téléchargé 493 fois
Répondre