J’ai développé une version modifiée de ce paquet Duniter pour YunoHost, l’URL pour installer l’application est https://github.com/c-geek/duniter_ynh.
Que fait précisément cette version modifiée ? Elle passe Duniter en mode full-HTTPS !
L’interface d’administration
Celle-ci devient accessible à l’adresse /webui
, en HTTPS, et nécessite d’être authentifié sur son instance YunoHost. Exemple : https://gtest2.cgeek.fr/webui.
On a donc :
Vous <--HTTPS--> duniter.chez.vous.tld/webui
L’accès à son instance Cesium
Cesium est embarqué dans l’interface d’administration. L’accès à Cesium se fait donc également en HTTPS, connecté au nœud Duniter de la même instance YunoHost (en HTTPS aussi), et nécessite d’être authentifié.
On a alors :
Vous <--HTTPS--> duniter.chez.vous.tld/cesium <-- HTTPS --> duniter.chez.vous.tld (nœud)
Le nœud Duniter
Le nœud lui-même ne devient accessible qu’en HTTPS, sans requérir d’authentification puisque l’API est publique.
Ce qui signifie :
Quiconque <--HTTPS--> duniter.chez.vous.tld (nœud)
Tout cela est pré-configuré !
La configuration correcte du nœud est donc prise en charge par le paquet et est parfaitement cohérente avec l’environnement YunoHost. Techniquement, on a :
- Duniter écoute sur
localhost:<port_de_votre_choix>
- Duniter est accessible via le nom de domaine choisi pendant l’installation, et sur le port 443 (HTTPS), via un reverse proxy Nginx. Exemple : https://gtest2.cgeek.fr/blockchain/current.
- L’interface d’administration, tout comme Cesium, sont également gérés par Nginx et protégées par l’authentification YunoHost.
Bref, tout passe par les contrôles YunoHost, et donc chaque requête passe par le Nginx de votre YunoHost. Vous ne devriez donc plus avoir le moindre problème de configuration avec ce paquet.
N.B. : en vrai, vous pourriez encore avoir un message de “your node is not reachable”, mais cela sera corrigé avec Duniter v0.90.7.
Voilà, si vous avez une instance YunoHost vous pouvez tester, je m’en vais réaliser une PR pour officialiser tout cela dans le paquet officiel duniter/duniter_ynh.
Amusez-vous bien
edit : à noter que Cesium pourrait tout aussi bien être accessible publiquement. Je mettrai peut-être une option pour cela.
edit 2 : hop c’est fait ! https://gtest2.cgeek.fr/cesium devrait être accessible publiquement du coup.
edit 3 : il se peut que les liens gtest2.cgeek.fr ne fonctionne plus quand vous cliquerez dessus, c’est un nœud de développement