Alerte inactivité application Césium pour YunoHost

C’est la deuxième alerte que je reçois du robot github Yunohost pour me dire que Césium_ynh ne semble plus maintenu…

@kimamila, @moul, pouvez vous regarder ça ?

Je ne maintiens plus cette application, car il y a un souci de design pour qu’elle soit entièrement fonctionnelle.
Les navigateurs web signalent des problèmes de sécurité lorsque l’instance Césium est accédée via HTTPS (c’est le cas avec cette application) et que les requêtes vers les nœuds sont faites en clair.
La solution a été de proposer l’installation de Césium comme module sur l’application Duniter à laquelle Césium est connectée.

À vérifier ce que je dis, je ne suis plus entièrement sûr, ça fait un moment que je n’y aie pas touché.

Concernant l’alerte de la part du projet YunoHost, il s’agit de rappels de routines mis en place récemment, afin de déterminer si l’application est toujours maintenue.

Je te propose de passer ce sujet en public. Je n’y vois pas d’inconvénients.

J’ai installé Césium v1.1.3 sur mon Yunohost et je n’ais de message d’erreur…
https://cesium.vincentux.fr/#/app/home

En effet, ça semble bien fonctionner. L’app est encore bien fonctionnelle !
Ça installe la dernière version instable : la 1.1.5 actuellement.
Par contre, je n’arrive pas à joindre les deux interfaces ES. Donc pas de données Césium+.

Oui on a eu une coupure. Free a des soucis en ce moment

Top ! Du coup, l’app est entièrement fonctionnelle !

oui mais la mise à jour ne fonctionne pas :

sudo yunohost app upgrade cesium -u https://github.com/YunoHost-Apps/cesium_ynh
Info: Upgrading apps cesium
Info: Upgrading app cesium...
Warning: Job for nginx.service failed because the control process exited with error code.
Warning: See "systemctl status nginx.service" and "journalctl -xe" for details.
Error: Unable to upgrade cesium
Info: The operation 'Upgrade 'cesium' application' has failed ! To get help, please share the full log of this operation using the command 'yunohost log display 20180915-134957-app_upgrade-cesium --share'
Error: No app to upgrade

La màj a fonctionné de mon côté.
Ça doit venir de ta conf nginx qui n’est pas valide, ce qui a empéchait nginx de redémarrer.

Effectivement mais comment la corriger ? :cry:

systemctl status nginx.service
● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) (Result: exit-code) since Sat 2018-09-15 13:46:15 CEST; 20h ago
     Docs: man:nginx(8)
  Process: 26581 ExecReload=/usr/sbin/nginx -g daemon on; master_process on; -s reload (code=exited, status=1/FAILURE)
 Main PID: 1299 (nginx)
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/nginx.service
           ├─1299 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           └─1300 nginx: worker process

Sep 15 13:50:03 vincentux.fr systemd[1]: Reloading A high performance web server and a reverse proxy server.
Sep 15 13:50:03 vincentux.fr nginx[26581]: nginx: [emerg] invalid number of arguments in "location" directive in /etc/nginx/conf.d/cesium.vincentux.fr.d/cesium.conf:1
Sep 15 13:50:03 vincentux.fr systemd[1]: nginx.service: Control process exited, code=exited status=1
Sep 15 13:50:03 vincentux.fr systemd[1]: Reload failed for A high performance web server and a reverse proxy server.
Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.

Peux-tu me donner le retour de nginx -t et le contenu de /etc/nginx/conf.d/cesium.vincentux.fr.d/cesium.conf.
Le problème est peut-être lié au fait que l’app est installé en sous-domaine.
Dans mon cas, elle est installée en sous-path.

nginx -t
nginx: [emerg] invalid number of arguments in "location" directive in /etc/nginx/conf.d/cesium.vincentux.fr.d/cesium.conf:1
nginx: configuration file /etc/nginx/nginx.conf test failed
server {
    listen 80;
    listen [::]:80;
    server_name cesium.vincentux.fr;

    access_by_lua_file /usr/share/ssowat/access.lua;

    include conf.d/cesium.vincentux.fr.d/*.conf;

    location /yunohost/admin {
        return 301 https://$http_host$request_uri;
    }

    location /.well-known/autoconfig/mail {
        alias /var/www/.well-known/cesium.vincentux.fr/autoconfig/mail;
    }

    access_log /var/log/nginx/cesium.vincentux.fr-access.log;
    error_log /var/log/nginx/cesium.vincentux.fr-error.log;
}

server {
    # Disabling http2 for now as it's causing weird issues with curl
    #listen 443 ssl http2;
    #listen [::]:443 ssl http2;
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name cesium.vincentux.fr;

    ssl_certificate /etc/yunohost/certs/cesium.vincentux.fr/crt.pem;
    ssl_certificate_key /etc/yunohost/certs/cesium.vincentux.fr/key.pem;
    ssl_session_timeout 5m;
    ssl_session_cache shared:SSL:50m;

    # As suggested by Mozilla : https://wiki.mozilla.org/Security/Server_Side_TLS and https://en.wikipedia.org/wiki/Curve25519
    # (this doesn't work on jessie though ...?)
    # ssl_ecdh_curve secp521r1:secp384r1:prime256v1;

    # As suggested by https://cipherli.st/
    ssl_ecdh_curve secp384r1;

    ssl_prefer_server_ciphers on;

    # Ciphers with intermediate compatibility
    # https://mozilla.github.io/server-side-tls/ssl-config-generator/?server=nginx-1.6.2&openssl=1.0.1t&hsts=yes&profile=intermediate
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-$

    # Ciphers with modern compatibility
    # https://mozilla.github.io/server-side-tls/ssl-config-generator/?server=nginx-1.6.2&openssl=1.0.1t&hsts=yes&profile=modern
    # Uncomment the following to use modern ciphers, but remove compatibility with some old clients (android < 5.0, Internet Explorer < 10, ...)
 #ssl_protocols TLSv1.2;
    #ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256$

    # Uncomment the following directive after DH generation
    # > openssl dhparam -out /etc/ssl/private/dh2048.pem -outform PEM -2 2048
    #ssl_dhparam /etc/ssl/private/dh2048.pem;

    # Follows the Web Security Directives from the Mozilla Dev Lab and the Mozilla Obervatory + Partners
    # https://wiki.mozilla.org/Security/Guidelines/Web_Security
    # https://observatory.mozilla.org/
    add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload";
    add_header Content-Security-Policy "upgrade-insecure-requests";
    add_header Content-Security-Policy-Report-Only "default-src https: data: 'unsafe-inline' 'unsafe-eval'";
    add_header X-Content-Type-Options nosniff;
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Download-Options noopen;
    add_header X-Permitted-Cross-Domain-Policies none;
    add_header X-Frame-Options "SAMEORIGIN";

    access_by_lua_file /usr/share/ssowat/access.lua;

    include conf.d/cesium.vincentux.fr.d/*.conf;
 include conf.d/yunohost_admin.conf.inc;
    include conf.d/yunohost_api.conf.inc;

    access_log /var/log/nginx/cesium.vincentux.fr-access.log;
    error_log /var/log/nginx/cesium.vincentux.fr-error.log;
}

Si y que ça je peux réinstaller Césium…

Je pense que tu viens de me donner le contenu de
/etc/nginx/conf.d/cesium.vincentux.fr.conf et non de
/etc/nginx/conf.d/cesium.vincentux.fr.d/cesium.conf.

Sinon, c’est le fichier que tu m’as donné qui est cassé selon nginx -t.
Tu peux essayer un yunohost service regen-conf nginx.

Oups…

location  {

  # Path to source
  alias /var/www/cesium/ ;

  # Include SSOWAT user panel.
  include conf.d/yunohost_panel.conf.inc;
}

C’est fais mais j’ai toujours :

nginx -t
nginx: [emerg] invalid number of arguments in "location" directive in /etc/nginx/conf.d/cesium.vincentux.fr.d/cesium.conf:1
nginx: configuration file /etc/nginx/nginx.conf test failed

ok, il manque un / : ce qui donne : location / {.

L’application doit avoir un bug d’upgrade en sous-domaine.

et je mets ça où exactement ? :thinking:

J’ai réussi à résoudre ce bug avec mon fork: https://github.com/rodinux/cesium_ynh/blob/master/conf/nginx.conf
Même pour les changements d’urls, ça fonctionne…