Nexcloud pb accès Agenda et Contact via Thunderbird ou DAVx (caldav et carddav)

Bonjour,

Mon Nextcloud fonctionne parfaitement (v. 18.0.7 sur un Yunohost 4.04, le tout sur un VPN)
Par contre, impossible d’accéder à mes agenda et carnets d’adresse via Thunderbird ou DAVx5

En regardant l’onglet Administration/Vue d’ensemble je lis :

Il y a quelques avertissements concernant votre configuration.

* La configuration du serveur web ne permet pas d'atteindre "/.well-known/caldav". Vous trouverez plus d'informations dans la [documentation](https://docs.nextcloud.com/server/18/go.php?to=admin-setup-well-known-URL).
* La configuration du serveur web ne permet pas d'atteindre "/.well-known/carddav". Vous trouverez plus d'informations dans la [documentation](https://docs.nextcloud.com/server/18/go.php?to=admin-setup-well-known-URL).

Il ne me semble pas avoir modifié quoique ce soit dans ma config serveur.

Lorsque je vais lire la doc, c’est assez proche du chinois pour moi (mais je ne demande qu’à apprendre) :
https://docs.nextcloud.com/server/18/admin_manual/issues/general_troubleshooting.html#service-discovery

Quelqu’un ici a-t-il rencontré et résolu ce même problème ?

Est-ce que tu aurais installé à un moment une autre app comme agendav ou autre truc qui permet de gérer contact/calendrier ?

hum… non… les seuls trucs installés sont Kimai2 Kanboard et Mattermost

Moké alors regardons la sortie de :

grep -nr "caldav\|carddav" /etc/nginx/

Sinon faut peut-être regarder dans le README de l’app nextcloud, me semble qu’il y a des infos là dessus … (Je sais qu’il y a des trucs du genre on desactive automatiquement la gestion des .well-known si une autre app l’utilise, etc…)

je viens de passer en ssh (su) pour passer la ligne de commande.
il ne retourne rien, ni info, ni erreur. rien, nada, que pouic, je passe juste à la ligne suivante

Quid de baikal, est-ce que tu l’aurais installé par le passé ?

Brefle sinon pour comprendre il faudrait regarder le log d’install / upgrade de nextcloud le plus récent …

Sinon tu peux la faire un peu à la sauvage et éditer

nano /etc/nginx/conf.d/tondomaine.tld.d/nextcloud.conf

et rajouter tout en haut :

location = /.well-known/carddav {
  return 301 https://$server_name__PATH__/remote.php/dav;
}
location = /.well-known/caldav {
  return 301 https://$server_name__PATH__/remote.php/dav;
}

en remplaçant PATH par le path où est installé nextcloud (typiquement /nextcloud)

Puis nginx -t pour vérifier que nginx est happy, et si c’est le cas systemctl reload nginx

non… pas installé Baikal sur ce serveur
bon… je vais opter pour le côté sauvage, tu m’as super bien guidé pour les certif, je tente ma chance…

Hum…
la modif du fichier s’est bien passée.
par contre lorsque je lance nginx -t ça me retourne bash: nginx: command not found

sudo nginx -t

Ah… la vache… Merci ! je croyais qu’être en su suffisait, je n’avais pas tilté qu’il fallait passer certaines commandes en sudo … (si tu as le temps de m’expliquer en 3 lignes ou me renvoyer vers une doc, je suis preneur)

Là, tout à bien fonctionné !! Nextcloud ne met plus d’alerte et mes agendas se partagent parfaitement.
Un grand merci.

Bonjour,
Je vois que vous avez résolu les problèmes de synchronisation entre les dernières versions de NextCloud et Thunderbird. Pourriez-vous éventuellement faire une synthèse qui décrirait la situation de départ et les solutions mises en œuvre? Car j’ai le même type de problème et j’ai un peu peur de mal m’y prendre. En vous remerciant

Bon… je vais essayer de passer de l’autre côté alors :slight_smile: (du bugué au débugueur)
déjà, il me faudrait comprendre si nous avons exactement le même problème.
Que dit Nextcloud en allant sur : “Paramètres” -> “vue d’ensemble” au niveau avertissement sécurité et configuration ?

1 Like

Mouarf alors c’est tout un truc, entre le qu’est-ce que c’est, le pourquoi, les micro détails techniques, les bonnes pratiques et ce que font les gens dans la vraie vie…

  • en simplifié. sudo c’est pour faire un truc en root (le dieu suprême de la machine) depuis un utilisateur “pas root” (en l’occurence, admin dans ton cas j’imagine) … même si sémantiquement on pourrait se dire “admin c’est l’admin alors il a les droits non ?” … mais non, le droit qu’il a, c’est d’utiliser sudo
  • sudo permet de pas être connecté en root en permanence, ce qui est un risque si tu fais pleins de manip partout sur pleins de machine … (dans le sens où tu peux vite taper une commande dans le mauvais terminal, et catastrophe). Il y a d’autres avantages aussi, genre si tu taf à plusieurs sur une machine, ça évite de devoir filer le mot de passe root à tout le monde, et puis pour auditer c’est mieux, etc …
  • Donc dès que tu fais une tache d’administration (genre redémarrer un service, installer un paquet, editer un fichier de conf), tu as besoin de sudo
  • Le truc c’est que certaines commandes comme nginx sont stockée dans /sbin/ … et par défaut si tu n’es pas root, ces commandes ne sont “pas dispo du tout”, comme si elles n’étaient même pas installée. Pour ça qu’il te dit nginx: command not found ce qui laisse penser que nginx n’est pas installé … mais en fait si. Par contre quand tu fais sudo (ou que tu es root) il va aussi chercher les commandes dans /sbin/, donc ça marche
  • Theoriquement les gens conseillent de ne pas être root en permanence sur leur machine. En pratique perso je passe souvent root avec sudo su pour pas avoir à taper sudo devant chaque commande … mais faut aussi être attentif et prudent avec ce qu’on fait.
1 Like

top ! merci d’avoir pris le temps de l’explication. Je pensais que su permettait de passer en sudo le temps de la session, mais en fait c’est un cran en dessous.

Ah ben c’est plus compliqué que ça :wink:

su est une commande qui permet de passer root, oui (su c’est pour super-user, une autre facon de parler de root)

Sauf que si tu fais cette commande toute seule, il te demandera /le mot de passe de l’utilisateur root/

Sauf que dans certains contexte, ce mot de passe n’est pas forcément défini ou n’est pas connu (bon, dans le cas de yunohost, c’est le meme que admin).

Mais si tu executes sudo su, tu demandes en tant que root (sudo) d’ouvrir un shell root (su), donc il ne te demande pas le mot de passe root car tu es déjà root… Un équivalent, c’est de faire sudo -i (sudo interactif)

bon, bon, bon… je note juste dans ma case mémoire que si une commande ne répond pas alors que je suis logué en su alors, je teste quand même en sudo :slight_smile:

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.