Yunohost, Peertube et Yunohost… problème de jetons d'identification

Bonjour !

Je rencontre un petit problème actuellement.

Je pose en gros la configuration : j’ai un serveur sur lequel je fais tourner Yunohost sur domain.tld.
Dessus, j’ai aussi installé une instance de Peertube et Mastodon, respectivement sur peertube.domain.tld et mastodon.domain.tld.

Note importante : je n’ai pas installé ces deux instances avec les paquets Yunohost.

Quand je ne suis pas connecté sur Yunohost avec le SSO, pas de souci : Mastodon et Peertube fonctionnent bien indépendemment tous les deux.

En revanche si, après m’être connecté sur ces deux services je tente de me connecter à mon compte sur le SSO sur domain.tld, je reçois alors sur Mastodon comme Peertube des messages d’erreur très similaires :

  • Mastodon : 401 Le jeton d’accès n’est pas valide
  • Peertube : Error : token is invalid

Et à l’inverse, quand je me déconnecte puis me reconnecte sur une de ces instances, je me retrouve déconnecté du SSO.

Vous auriez des idées sur la manière dont je pourrais corriger le problème ?

La configuration pour Peertube : https://paste.yunohost.org/wohuguwago.nginx
La configuration pour Mastodon : https://paste.yunohost.org/atojinekuj.nginx

Note : les fichiers de conf nginx redirect__3 et redirect__4 ont été entièrement commentés pour laisser la place aux fichiers de conf de Mastodon et Peertube issus des paquettage de Yunohost.

Merci d’avance pour tout coup de main. :slight_smile:

1 Like

La sortie de l’outil de diagnostic de Yunohost : https://paste.yunohost.org/ajewidulop.json

Hm du coup peut-être que trifouiller un peu ton /etc/ssowat/conf.json.persistent et rajouter tes domaines en skipped_url ou unprotected_url (je pense que c’est plutot skipped_url qu’il te faut)

1 Like

Il semble que ça fonctionne avec skipped_url !

Merci beaucoup. :slight_smile:

1 Like

Quelqu’un pourrait-il m’expliquer à quoi dans ressembler ce fichier /etc/ssowat/conf.json.persistent?

Merci !

Bonjour, j’ai la même question, je ne trouve pas comment éditer le fichier.
J’ajoute dans le fichier
“skipped_url” : {“video.iphodase.fr”}
qui est l’adresse de mon peertube mais je me retrouve avec une erreur internal 500 nginx
J’ai tenté de mettre un ; à la fin cela ne change rien.
je supprime la ligne tout repart mais je ne peux pas être en SSO et connecté à mon peertube.
si quelqu’un pouvais me donner la bonne méthode?
Merci

Réponse peut être tardive…

Voici l’excellent tuto de MathDaTech qui m’a aidé.

Régler l’issue d’authentification

Si sur l’écran d’accueil, vous apercevez un message flash d’erreur intitulé “Error : token is invalid” et que vous n’arrivez pas à vous connecter en root, pas de panique, il y a une solution de contournement.

Comme dis précédemment, PeerTube n’utilise pas le système d’authentification SSO de Yunohost et il y a un bug qui empêche de se connecter normalement. Cela fait partie de l’issue “Unable to log in as root/admin after installation #30” sur le github YunoHost-Apps/peertube_ynh.

Pour régler ce soucis temporaire, il faut se connecter en SSH à votre serveur, puis éditer le fichier de configuration de SSOwat conf.json.persistent , avec la commande :
nano /etc/ssowat/conf.json.persistent
et rajouter dans ce fichier, les lignes de paramètres suivant :

“skipped_urls”: [
peer.example.com”,
],

à adapter en fonction de votre domaine. Enregistrez les modifications et quittez votre session SSH.

Si vous rafraichissez votre page PeerTube, vous devriez pouvoir vous connecter sans problème.

4 Likes

Merci c’est parfait, juste faire gaffe que le bon vieux copier/coller met mal les " ce qui fait une erreur 500!
résolue

Bonjour,

Est ce qu’il serait possible d’avoir le code exact à rentrer du coup ? J’ai moi aussi une erreur 500 :persevere:

Merci d’avance.

You have to restart ssowat after you make changes.

Like this ?

sudo yunohost app ssowatconf

Yes like this :slight_smile:

(I’m not sure you need to do this when playing with /etc/ssowat/conf.json.persistentyunohost app ssowatconf only regenerate /etc/ssowat/conf.json)

 "skipped_urls ": [
 "[peer.example.com](http://peer.example.com/) ",
],

tape dans ton puty ou terminal à la main les "

1 Like

Par contre je n’ai plus accès à mon admin yunohost aujourd’hui, je réouvre le fichier et j’ai fais une erreur en supprimant la ligne qui était présente dans
/etc/ssowat/conf.json.persistent
quelqu’un peut me la redonner ou cela n’a rien à voir?

Alors moi dans mon fichier /etc/ssowat/conf.json.persistent
j’ai :

{
    "redirected_urls": {}
}

Du coup j’ajoute les lignes :

{
    "redirected_urls": {}
}
 "skipped_urls ": [
 "[peertube.vincentux.fr](https://peertube.vincentux.fr/) ",
],

J’ai exécuté la commande suivante :

yunohost app ssowatconf

mais maintenant j’ai cette erreur lorsque je veux me logger :confused:

\<html> <head><title>500 Internal Server Error</title></head> <body bgcolor=“white”> <center><h1>500 Internal Server Error</h1></center> <hr><center>nginx</center> </body> </html>

Faut-il redemarrer le serveur pour que tous soit pris en compte ?

Et c’est des [crochets] ou des {parentheses}??

Non é_è

  • Il n’y a pas besoin de faire yunohost app ssowatconf
  • Il faut mettre ton bloc à l’intérieur des { }, en rajoutant une virgule après "redirected_urls":{}
  • Comme montré quelques posts plus haut (post de @art15te) , la syntaxe n’est pas
 "skipped_urls ": [
 "[peertube.vincentux.fr](https://peertube.vincentux.fr/) ",
],

mais :

"skipped_urls": [ "peertube.vincentux.fr" ],
{
    "redirected_urls": {},
    "skipped_urls": [ "peertube.vincentux.fr" ],
}

Super,
ça fonctionne… merci beaucoup :hugs::hugs::hugs:

2 Likes

Salut vincentux,

Cependant, cette méthode entraîne un souci au niveau de Matrix ; il ne se connecte plus si j’ajoute ces lignes.

As-tu une solution ?

Merci !

1 Like