Problème warning apache2 suite restauration

Bonjour à tous,

J’ai eu la joie d’avoir mon SSD qui m’a lâché dans les pattes !

Forte heureusement j’ai une sauvegarde de ma config que j’avais automatisé en plus de celle sur Jeedom.

J’ai donc réinstallé tout et réinjecté ma config. Tout baigne hormis une chose qui m’agace.

J’ai activé la commande Apache2 unsecure car quelques objets ont besoin d’avoir accès à des ressources exterieur (ioscloud, speedtest etc…).D’ailleurs cette dernière ne passe pas via l’interface mais uniquement en lançant manuellement :

sudo cp /var/www/html/install/apache_security_unsecure /etc/apache2/conf-available/security.conf;sudo a2enmod headers;echo "systemctl restart apache2"|sudo at now

Hors je n’avais aucun message avant et maintenant je me retrouve avec un warning sur mon dashboard avec les messages suivants :

|https://xxx.freeboxos.fr/index.php?v=d&p=dashboard|0|La ressource "http://b.tile.openstreetmap.org/15/16552/11097.png" a été chargée, mais elle va contre la directive de Content Security Policy :
"img-src 'self' *.jeedom.com *.google.com *.google.fr data:"|
| --- | --- |

J’ai aucune idée comment supprimé ces warning sachant que je sais pertinament que j’ai désactivé une sécurité.

EDIT : le message s’affiche également quand la sécurité est activé, mais cette fois les images sont plus visible et la console le précise bien sûr.

sudo cp /var/www/html/install/apache_security /etc/apache2/conf-available/security.conf;sudo a2enmod headers;echo "systemctl restart apache2"|sudo at now

|https://xxx.freeboxos.fr/index.php?v=d&p=dashboard|0|Impossible de charger la ressource "https://b.tile.openstreetmap.org/15/16552/11097.png", car elle va contre la directive de Content Security Policy :
"img-src 'self' *.jeedom.com *.google.com *.google.fr data:"|
| --- | --- |

Si vous pouviez me guider :slight_smile: ce warning m’agace :smiley:

Merci

Hello,

On est d’accord que ces messages s’affichent juste dans le point d’exclamation en haut à droite ?

Pas de popup ou autre message intrusif ?

Bad

Tout à fait oui :wink:

Alors c’est de la sécu, donc il ne faudrait pas le désactiver à proprement parler…

Je te recommande de copier le fichier install/apache_security_unsecure (par exemple vers install/apache_security_custom) avec l’éditeur de fichier et de modifier le dernier Header.

Vu ton erreur, je te recommande de remplacer :

Header set Content-Security-Policy-Report-Only "default-src 'self' file: data: blob: filesystem:;script-src-attr 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;script-src 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;img-src 'self' *.jeedom.com *.google.com *.google.fr data:;style-src 'self' 'unsafe-inline';style-src-attr 'self' 'unsafe-inline';worker-src blob:;frame-src 'self' *.jeedom.com *.google.com *.google.fr data:;"

par :

Header set Content-Security-Policy-Report-Only "default-src 'self' file: data: blob: filesystem:;script-src-attr 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;script-src 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;img-src 'self' *.jeedom.com *.google.com *.google.fr *.openstreetmap.org data:;style-src 'self' 'unsafe-inline';style-src-attr 'self' 'unsafe-inline';worker-src blob:;frame-src 'self' *.jeedom.com *.google.com *.google.fr data:;"

(tu remarqueras l’ajout de *.openstreetmap.org dans la directive img-src)

Puis de mettre en application cette configuration dans apache avec :

sudo cp /var/www/html/install/apache_security_custom /etc/apache2/conf-available/security.conf;sudo a2enmod headers;echo "systemctl restart apache2"|sudo at now

Si tu as de nouveau des erreurs, sur d’autres sites web légitimes, il te suffira de modifier ton fichier custom en rajoutant le domaine et d’appliquer.

Est-ce que ça te convient ?

Bad

Merci pour ton retour après avoir modifié le fichier et relancer la commande les messages sont toujours présent

La ressource "http://b.tile.openstreetmap.org/15/16551/11095.png" a été chargée, mais elle va contre la directive de Content Security Policy :
"img-src 'self' *.jeedom.com *.google.com *.google.fr *openstreetmap.org data:"

J’ai pas d’erreur sur la commande pour info :

root@VM-JEEDOM:/home/gauthier# sudo cp /var/www/html/install/apache_security_custom /etc/apache2/conf-available/security.conf;sudo a2enmod headers;echo "systemctl restart apache2"|sudo at now
Module headers already enabled
warning: commands will be executed using /bin/sh
job 38 at Thu Oct 20 14:02:00 2022

Peux-tu essayer de remplacer *.openstreetmap.org par *.tile.openstreetmap.org ?

j’ai essayé et même avec l’adress complète

Header set Content-Security-Policy-Report-Only "default-src 'self' file: data: blob: filesystem:;script-src-attr 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;script-src 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;img-src 'self' *.jeedom.com *.google.com *.google.fr *a.tile.openstreetmap.org *b.tile.openstreetmap.org *c.tile.openstreetmap.org *.speedtest.net data:;style-src 'self' 'unsafe-inline';style-src-attr 'self' 'unsafe-inline';worker-src blob:;frame-src 'self' *.jeedom.com *.google.com *.google.fr data:;"

Même résultat

EDIT : avec speedtest aucun soucis l’astuce fonctionne

Ce sont exactement les mêmes erreurs, sur la directive img-src ?

oui tout a fait même erreur :

La ressource "http://b.tile.openstreetmap.org/15/16552/11097.png" a été chargée, mais elle va contre la directive de Content Security Policy :
"img-src 'self' *.jeedom.com *.google.com *.google.fr *.tile.openstreetmap.org *.speedtest.net data:"

Ok, j’ai capté, c’est pas par ce que tu essayes de charger une ressource en http sur une pages en https, je ne crois pas que ce soit possible de passer outre en changeant la conf :
image

Tu arriverais à modifier la « source » pour passer ces requètes en https ?
(Et tu devrais pouvoir laisser la directive associée en *.openstreetmap.org)

j’ai pas tilté je cherche depuis tout à l’heure pourquoi l’adresse passe pas … oui je viens de faire un test en local RAS tout va bien ! je suis repassé en *.openstreetmap.org

faut que je regarde sur le plugin ioscloud mais c’est pas gagné

1 « J'aime »

Un gros Ctrl-H sur la source et c’est bon :smiley:

Ravi d’avoir pu te mettre sur la voie :slight_smile:

bah bah :smiley:

La ressource "https://b.tile.openstreetmap.org/15/16552/11097.png" a été chargée, mais elle va contre la directive de Content Security Policy :
"img-src 'self' *.jeedom.com *.google.com *.google.fr *openstreetmap.org *.speedtest.net data:"

Pas de changement dommage j’y ai cru ! du coup ça m**de en localhost aussi maintenant

Et en ajoutant le domaine en *.tile…

Ah bingo

Faudrait mettre les adresse entiere avec https / http voir si en local ou en secure j’ai plus de message !

Pour n’avoir aucune erreur en https ou http

1ere solution :

Modifier le plugin ioscloud (« Plugins/ioscloud/template/dashboard ») et remplacer tous les « http » en « https » sur le fichier location.html

Relancer le plugin ioscloud

Et modifier le fichier « install/apache_security_unsecure » (copie en apache_security_custom c’est plus prudent comme tu me l’as conseillé @Bad ) et changer le dernier header comme suit :

Header set Content-Security-Policy-Report-Only "default-src 'self' file: data: blob: filesystem:;script-src-attr 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;script-src 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;img-src 'self' *.jeedom.com *.google.com *.google.fr https://c.tile.openstreetmap.org *https://b.tile.openstreetmap.org *.tile.openstreetmap.org *.speedtest.net data:;style-src 'self' 'unsafe-inline';style-src-attr 'self' 'unsafe-inline';worker-src blob:;frame-src 'self' *.jeedom.com *.google.com *.google.fr data:;"
</IfModule>

Puis passer la commande : sudo cp /var/www/html/install/apache_security_custom /etc/apache2/conf-available/security.conf;sudo a2enmod headers;echo "systemctl restart apache2"|sudo at now

Ca implique de passer sur le fichier location.html à chaque MàJ du plugin…


Résumé

2ème solution [TESTE =NOK]:

Et modifier le fichier « install/apache_security_unsecure » (copie en apache_security_custom c’est plus prudent comme tu me l’as conseillé @Bad ) et changer le dernier header comme suit :

Header set Content-Security-Policy-Report-Only "default-src 'self' file: data: blob: filesystem:;script-src-attr 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;script-src 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;script-src-elem 'self' 'unsafe-inline' 'unsafe-eval' *.google.com *.google.fr;img-src 'self' *.jeedom.com *.google.com *.google.fr http://c.tile.openstreetmap.org *http://b.tile.openstreetmap.org *.tile.openstreetmap.org *.speedtest.net data:;style-src 'self' 'unsafe-inline';style-src-attr 'self' 'unsafe-inline';worker-src blob:;frame-src 'self' *.jeedom.com *.google.com *.google.fr data:;"
</IfModule>

Puis passer la commande : sudo cp /var/www/html/install/apache_security_custom /etc/apache2/conf-available/security.conf;sudo a2enmod headers;echo "systemctl restart apache2"|sudo at now

Ca reste libre l’acces a un site en http…

Merci à toi @Bad

De rien, ça va vite devenir chiant de modifier ça a la main, il faudrait réfléchir à faire une modal/page pour config plus simplement les CSP…

Je regarde pour PR le core à l’occasion.

oui pour l’instant c’est gérable après à la longue… ou un accès via >_OS/DB pour les personnes qui modifient en connaissance de cause mais je pense pas que ce soit réalisable.

bon bah ça revient… avec la 2eme solution dommage

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.