Serveurs de calendrier: DAViCAL (RSCDS), tuto & question

Vous n'arrivez plus à décrocher de Geckozone ? Ces applications vont vous aider à vous souvenir de ce qu'il y a d'autre à faire.

Modérateur : J2m06

Imaginons
Arias
Messages : 17
Inscription : 03 déc. 2007, 10:36

Serveurs de calendrier: DAViCAL (RSCDS), tuto & question

Message par Imaginons »

N.D.L.R.: veuillez excuser les interruptions dans la parution de ce post dû à des problèmes techniques vaillamment résolus par nos admins...

Introduction.
Je fais référence au topic Exportation sur réseau impossible où j'introduis la problématique du partage de calendrier et ses solutions. J'ajouterai à ça que ma solution part de l'option de base de d'abord installer les partages en Intranet, puis de chercher à l'étendre aux accès externes par Internet. Le démarrage par l'approche Google Calendar et cie ne me semble pas très professionnelle en entreprise. Pour une bande de copain, je ne dis pas...
De la même manière dont on choisit d'installer un serveur d'email intra-muros plutôt que de jouer avec des hotmail, yahoo et autre gmail, le calendrier de groupe doit se loger sur le même serveur, intra-muros.

Depuis l'explosion de l'excellent Thunderbird qui permet la gestion collaborative des emails en Imap, il ne manque plus qu'une aussi bonne gestion du calendrier (et tâches) pour pouvoir se libérer du suzerain ouine douze aix chenge et son vassal aout louque. Vous avez tout compris. Leur saint patron a justement dit y-a-pas-longtemps: "le logiciel libre et open source est un véritable cancer". Alors, allons y gaiement. Que les modérateurs me censurent si j'en dis trop!

Je renvoie aussi les lecteurs aux très bonnes mises au point de Yann Klis http://strasslab.net/blog/index.php?200 ... a-fin-2006
et de Amaury Bouchard http://amaury.net/informatique/travail_cooperatif pour compléter le cadre qui fait l'objet d'une demande de plus en plus forte à l'heure actuelle.

Mes ingrédients de départ: le presque très bon et très prometteur Sunbird installé sur tous les postes clients et une Debian Etch4 équipée d'Apache2 et PHP5 en guise de serveur. Il n'existe pas encore, à ma connaissance, de forum francophone sur le sujet, alors ce sera ici ....

Le document d'installation originel se trouve ici: http://rscds.sourceforge.net/installation.php
Ce qui suit est du style recette de cuisine, mais je ne peux faire beaucoup plus dans ce cadre, d'autant que suis moi-même loin d'être un pro du Linux.

Tuto: c'est parti...

1) Mon fichier /etc/apt/sources/list contient:
deb http://debian.mcmillan.net.nz/debian unstable awm
deb ftp://ftp.debian.skynet.be/debian/ stable main contrib non-free
deb http://security.debian.org/ stable/updates main


2) En console, on lance en utilisateur root:
apt-get update
apt-key advanced --keyserver subkeys.pgp.net --recv-keys CCA377BD77494424B0DB674F8C90347F8F068012
apt-get install postgresql-8.1 rscds

Après dépaquetage, 23,5Mo d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer [O/n] ? --->>> répondre O
ATTENTION : les paquets suivants n'ont pas été authentifiés.
libawl-php rscds
Faut-il installer ces paquets sans vérification (o/N) ? --->>> répondre O

3) Changer d'utilisateur:
su postgres
et lancer
createuser --no-createdb --no-createrole general
Le nouvel rôle est-t'il un superutilisateur ? (o/n) --->>> répondre n
/usr/share/rscds/dba/create-database.sh
The password for the 'admin' user has been set to '****' --->> Bien noter ce mdp car il ne vous sera plus accessible une 2d fois!
Se remettre en root:
su root

4) Editer le fichier: /etc/postgresql/8.1/main/pg_hba.conf
et y placer la ligne:
local davical general trust

5) J'ai créé un fichier /etc/apache2/sites-available/davical
(ça c'est le conseil originel, mais on peut aussi très bien le mettre en /etc/apache2/sites-enabled/davical sans problème)
dans lequel j'ai mis:
# Virtual Host def for Debian packaged RSCDS
<VirtualHost ip.de.mon.serveur >
DocumentRoot /usr/share/rscds/htdocs
DirectoryIndex index.php index.html
ServerName davical.example.net
ServerAlias calendar.example.net
Alias /images/ /usr/share/rscds/htdocs/images/
php_value include_path /usr/share/awl/inc
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value error_reporting "E_ALL & ~E_NOTICE"
php_value default_charset "utf-8"
</VirtualHost>

Vous aurez compris qu'il faut remplacer partout ip.de.mon.serveur par l'adresse IP de votre serveur...

6) Il faut créer un fichier /etc/rscds/ip.de.mon.serveur-conf.php
dans lequel on met:
<?php
// $c->domain_name = "calendar.example.net";
// $c->sysabbr = 'rscds';
// $c->admin_email = 'admin@example.net';
$c->system_name = "Really Simple CalDAV Store";
$c->collections_always_exist = true;
$c->enable_row_linking = true;
$c->default_locale = fr_FR.UTF-8;

$c->pg_connect[] = 'dbname=davical port=5433 user=general';
$c->pg_connect[] = 'dbname=davical port=5432 user=general';

?>

Remarques:
- les lignes commençant par // sont encore en commentaire et
- il faut absolument mettre "dbname = davical" et non "dbname = rscds" comme indiqué dans la doc d'origine. C'est bel et bien une erreur.

7) Pour finir, un petit dernier
reboot
(apparemment /etc/init.d/apache2 restart ne suffit pas ... car le navigateur déclare "Could not connect to PostgreSQL database", et je suis pourtant bien informé du "Starting PostgreSQL 8.1 database server: main" en fin d'install).

Après ça je peux rentrer dans l'interface web d'administration à partir d'un poste client via http://ip.de.mon.serveur
Enfin, il ne reste plus qu'à ouvrir un calendrier sur mes Sunbird clients, sur réseau, au format CalDAV à l'emplacement:
http://ip.de.mon.serveur/caldav.php/resource1/home, et une nouvelle ère de l'histoire de l'humanité commence... comme l'a maintes fois affirmé le saint patron!
resource1 et home sont des noms au libre choix, mais bien présents tous les 2 sinon l'agenda n'est pas créé. C'est seulement après avoir encodé un 1ier évènement que vous pourrez voir la ressource apparaître en administration.
Toute cette installation a été réalisée à partir d'un poste client en remote, via le couple WinSCP-Putty, idéal pour taper ses ordres en console et naviguer-manipuler-éditer ses fichiers avec la + grande aisance.

C'est ici que je vais demander votre collaboration et poser ma 1ière question.
Comme on peut s'en apercevoir, le site Virtual Host du serveur DAViCAL est installé comme site unique par défaut et ça ne m'arrange pas du tout. Les instructions figurant dans "Installation in a Sub Directory" du tuto originel sont fausses ou incomplètes.
J'ai d'autres petits sites et interfaces web de service installés sur ce serveur et le fichier /etc/apache2/sites-available/davical ainsi constitué m'inhibe tous les autres accès! Déplacer ce fichier dans /etc/apache2/sites-enabled ne change rien.
Quand je remplace <Virtual Host ip.de.mon.serveur> par <Virtual Host *> comme je vois dans les autres fichiers Virtual Host, je retrouve mes autres accès mais je n'arrive plus à reprendre contact avec mon administration DAViCAL, et Sunbird perd le contact aussi bien sûr ... C'est l'un ou les autres... J'ai épuisé tous les tutos Virtual Host trouvés sur Google. Pouvez-vous m'aider à ce que mon accès d'administration DAViCAL soit accessible au même rang que les autres? On devrait pouvoir y accéder avec une adresse du genre: http://ip.de.mon.serveur/davical ou qlq chose comme ça....

Merci d'avance.

Voila. En fin de journée du 18/12/07 j'ai trouvé réponse à ma question.
Je préfère mettre la solution ici plutôt que d'ouvrir un nouveau post par souci d'offir un tuto condensé sur 1 post.
Sans inhiber mes autres services web, j'ai réussi à faire fonctionner l'accès via http://ip.de.mon.serveur/davical (et l'agenda Sunbird via http://ip.de.mon.serveur/davical/caldav.php/resource1/home) en faisant ceci:
- dans /etc/php5/apache2/php.ini mettre include_path = ".:/usr/share/awl/inc"
- créer lien symbolique /var/www/davical vers /usr/share/rscds/htdocs
- régler le sort du port 5433 qui déclare subitement un prob mais le port 5432 récupère la situation:
soit dans /etc/rscds/ip.de.mon.serveur-conf.php commenter // $c->pg_connect[] = 'dbname=davical port=5433 user=general';
soit dans /etc/services ouvrir le port 5433 à l'image du 5432
- remplacer <Virtual Host ip.de.mon.serveur> par <Virtual Host *> dans le fichier /etc/apache2/sites-enabled/davical. Je ne sais si ce fichier sert encore vraiment pour les accès Intranet, mais Internet sans doute, je dois encore vérifier.


Ce tutorial est ma 1ière version. J'engage tout le monde à le tester. Je vais refaire une nouvelle installation pour le roder... Vive 2008 et un nouveau monde se lèvera, libre de aix chenge aout louque. A vos claviers les choutes zé les mecs. La victoire est toute proche.
.... J'ai amendé plusieurs fois ce post, le 18/12/07, depuis sa 1ière mouture. Le tuto a été vérifié une 2d fois sur un autre serveur et j'ai donc injecté qlqs corrections. Pour moi, c'est bon comme ça... Essayez donc et faites vos remarques.
.... Le 19/12/2007 j'ai refait une 3ième installation suivant les mêmes principes. Ca roule. J'ai apporté des corrections de présentation au tuto.


Derniers commentaires:
1) N'oubliez pas que pour compléter le tableau on peut aussi installer un Webmail (Horde - IMP, un des + courus) pour accéder à ses mails depuis Internet ou même Thunderbird en Imap en faisant référence à son serveur distant via une URL.
2) Une question importante reste encore à bien mettre au point pour moi: c'est celle du partage (un vrai de vrai, en temps réel) du carnet d'adresse de Thunderbird. Entre Horde-Turba et Thunderbird je n'arrive même pas a échanger le moindre carnet... En Intranet (entre plusieurs clients Thunderbird), j'ai essayé les solutions non satisfaisantes de AddressbooksSynchronizer et Synckolab. Par rapport à ces solutions très décevantes, la copie du carnet (abook.mab) automatisée dans un batch qui lance TB est encore la meilleure des solutions. Je vais donc me lancer dans la gestion du carnet via l'OpenLDAP..... Après les 1ières recherches, il s'avère que cet annuaire n'est pas (encore !) supporté en écriture par Thunderbird. Il semble aussi que l'écriture au vol n'est pas vraiment le point fort de la spécification LDAP, quoique faisable de toute manière... Mais ceci doit faire l'objet d'un autre topic...
3) Je trouve aussi que la séparation de l'agenda Sunbird et du gestionnaire de mails Thunderbird n'est pas une mauvaise chose, parce qu'on peut mieux jouer sur 2 fenêtres côte à côte. Le Lightning intégré ne permet pas de voir ses mails en même temps. Mais pour les irréductibles roués aux anciennes habitudes aout louque, évidemment...
4) Et il reste aussi à essayer de connecter l'agenda Horde-Kronolith à notre serveur DAViCAL.... tomorrow is an other day comme disent nos amis! Sans oublier Horde-Nag pour les tâches!
Ayant pas mal travaillé dans le domaine, je suis prêt à répondre à vos questions ...

Je vais continuer à amender ce post au fil de mes constations et l'avancement journalier de mes travaux. Son contenu n'est donc pas figé, loin de là. Merci de réagir nombreux et surtout d'essayer, de tester très nombreux.

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
Dernière modification par Imaginons le 25 janv. 2008, 16:08, modifié 23 fois.
youenn.ballouard
Arias
Messages : 5
Inscription : 03 déc. 2007, 16:30

Génial !!!

Message par youenn.ballouard »

Bonjour,

Merci beaucoup pour ce tuto très intéressant !!!

J'avais posté une question la dessus ... pas de réponse ... mais la je crois avoir trouvé ce qu'il me faut dans mon entreprise ... reste à essayer en réel !

Sinon je voulais savoir si vous aviez essayer de connecter rcsds avec un annuaire LDAP pour l'authentification ?

Je peux être intéressé par vos recherches concernant le partage de carnet d'adresses alors surtout n'hésitez pas à m'en faire part.


Je fais tout ce que je peux pour introduire le maximum de solution libre dans mon entreprise : le partage d'agenda, la gestion d'un domaine samba, l'utilisation du couple glpi+ocs sont nos prochaines étapes après avoir brillament migrer sous linux/libre la messagerie (Postfix+Courier+LDAP), DHCP+LDAP, SGBD MySQL, les sauvegardes (BackupPC) ou encore serveur de fax Hylafax ...

Message envoyé avec : Mozilla/5.0 (X11; U; Linux x86_64; fr; rv:1.8.1.11) Gecko/20071204 Ubuntu/7.10 (gutsy) Firefox/2.0.0.11
Imaginons
Arias
Messages : 17
Inscription : 03 déc. 2007, 10:36

Message par Imaginons »

Non, je ne me suis pas encore mis à table pour connecter RSCDS sur mon annuaire LDAP. Ce n'est pas encore assez haut dans mon échelle de priorité. Alors le 1ier qui l'entreprend peut publier son howto!
Pour la connexion du carnet au LDAP, le travail d'investigation va démarrer très bientôt...

Le Postfix+Courier+LDAP était la 1ière étape. Avec Thunderbird en Imap, on se régale de stabilité.

Le DHCP est en ligne, mais pas connecté au LDAP. Ca m'intéresse à moyen terme. As-tu un tuto à publier? Merci d'avance.

Au sujet de BackupPC, je l'ai effectivement implémenté juste avant le RSCDS. Excellent. Y a pas d'autre mot!

J'ai hâte de voir ce que tu penses du serveur DAViCAL (RSCDS) ?



Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
youenn.ballouard
Arias
Messages : 5
Inscription : 03 déc. 2007, 16:30

DHCP+LDAP

Message par youenn.ballouard »

Bonjour,

Je suis en pleine mise en place pour test de RSCDS ... je t'informe de la suite ...

Sinon pour DHCP + LDAP, je te conseille simplement d'aller voir des tutos dispos déjà (mes sources en gros) :
http://damstux.free.fr/wiki/index.php?t ... CP_et_LDAP
http://www.free-4ever.net/index.php/Accueil

Deux sites super intéressants ...

cordialement.

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
youenn.ballouard
Arias
Messages : 5
Inscription : 03 déc. 2007, 16:30

Petit problème ...

Message par youenn.ballouard »

Après un reboot comme indiqué dans le tuto, j'ai toujours le meme message :

Database Error
Could not connect to PostgreSQL database

Je ne vois pas trop la ...

merci d'avance

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
youenn.ballouard
Arias
Messages : 5
Inscription : 03 déc. 2007, 16:30

C'est bon

Message par youenn.ballouard »

Désolé d'envoyer autant de messages ... Mais c'est bon j'ai réussi ... je souhaiterai maintenant parler de l'utilisation car je ne trouve pas cela très intuitif ...

Pour ne pas déranger tout le monde on peut dial via MSN ou mail si tu veux ?

cordialement.

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
Imaginons
Arias
Messages : 17
Inscription : 03 déc. 2007, 10:36

Message par Imaginons »

Bonjour youenn,

Je t'ai envoyé un message privé sur ta boîte aux lettres. L'as-tu reçu?

A+
bvincent
Arias
Messages : 7
Inscription : 22 janv. 2008, 11:58

Re: Serveurs de calendrier: DAViCAL (RSCDS), tuto & ques

Message par bvincent »

Imaginons a écrit :The password for the 'admin' user has been set to '****' --->> Bien noter ce mdp car il ne vous sera plus accessible une 2d fois!
Si vous voulez récupérer ce mot de passe il existe une méthode assez simple.

Connecter vous à la base davical:

Code : Tout sélectionner

#psql davical
davical=# SELECT * FROM usr
Et vous pourrez récupérer votre mot de passe.

Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.11) Gecko/20061201 Firefox/2.0.0.11 (Ubuntu-feisty)
Imaginons
Arias
Messages : 17
Inscription : 03 déc. 2007, 10:36

Message par Imaginons »

Grand merci bvincent.

Bien utile ton info.
lacd11
Arias
Messages : 18
Inscription : 08 août 2006, 08:15

Message par lacd11 »

:D
J'ai tout installé comme tu as dit et ça fonctionne nickel depuis une dizaine de jours !!!! Big, big merci :!:

J'utilise Tbird 1.5 et lightning .07

Les seuls soucis que j'ai eus étaient dûs au paramétrage du courrielleur :
- Erreurs au lancement générées par lightning qui m'indiquait que l'url des calendriers n'était pas une collection caldav : résolu en rajoutant l'adresse du serveur dans les exceptions du proxy sous Thunderbird
- Pas de bouton Accepter/refuser lors de la réception d'une invitation : dans le menu Affichage, cocher "Afficher les pièces jointes dans les messages"

Si ce petit complément peut aider kékun !

Message envoyé avec : Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Mouais, y a quand même des trucs qui fonctionnent
Imaginons
Arias
Messages : 17
Inscription : 03 déc. 2007, 10:36

Message par Imaginons »

Merci de ton feedback lacd11.

Ton expérience complète bien le tableau.
Merci.
bvincent
Arias
Messages : 7
Inscription : 22 janv. 2008, 11:58

Message par bvincent »

Bonjour à tous donc moi aussi je me suis lancé dans l'installation de RSDCS alias DavICAL.

Par contre je l'ai installé à partir des sources, enfin tout c'est bien déroulé pour ce qui est de l'installation pure.

Ce tuto ma néamoins été trés utile.

Par contre j'ai un problème, c'est qu'il (DavICAL et plus particulierement apache/php5) n'arrive pas à créer de sessions sur mon serveur (par contre je les ai bien en base de données, la table qui se nomme 'session' (de la bdd DavICAL biensur =) ) contient toutes les informations concernant les connexions et donc la création (initialisation du moins) de session).

Pour résumé je dois sans arrêt me logger et que pour valider un changement via l'interface web il est nécessaire d'être loggé donc au final je ne peux pas valider les changements (ajouter un user par exemple ou tout autre procédure).

J'ai un beau message:

You must log in to use this system.

Le vrai problème c'est qu'en parallèle il devrai également créer la session dans /var/tmp (par convention) mais qu'il ne le fait pas, j'ai donc créer mon propre script de création de sessions pour vérifier les directives de ma virtual host et là sa fonctionne donc apparemment le problème vient des sources (mais ça m'étonnerai quand même vu l'aspect "sérieux" qui émane de ce projet).

Enfin j'ai fait mes recherches sur leur wiki et j'ai trouvé ceci:
I have to log in to every page

This indicates that your browser is not getting or accepting the session cookie for some reason. The cause can be several things:

1. There could be an error message coming from PHP before it sends the "Cookie" header back. Look at the source of the page, or in the webserver error log for clues. Take care not to add any new line characters after ?> in the config file in /etc/rscds/*-conf.php!
2. Your browser might be rejecting the cookie. Check in the privacy settings for your browser that it allows the cookie.
Mais moi ce n'est pas la même chose si des personnes étaient tentée de me redirigé la dessus =).

Quoi que :
Look at the source of the page
...

Bon en espérant que quelqu'un ai aussi rencontré ce problème...

Bonne fin de journée à tous Benjamin.

Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.11) Gecko/20061201 Firefox/2.0.0.11 (Ubuntu-feisty)
Imaginons
Arias
Messages : 17
Inscription : 03 déc. 2007, 10:36

Message par Imaginons »

A priori, je ne me sens pas très capable de t'aider car installer une appli à partir des sources est encore au-dessus de mes compétences...

Mais dis-mois en plus. Pourquoi dois-tu partir des sources? Sur quel système installes-tu ça? Ca veut dire que tu compiles alors? Pourrais-tu nous filer une petite procédure d'installation à partir des sources pour cette appli?

Merci d'avance.
bvincent
Arias
Messages : 7
Inscription : 22 janv. 2008, 11:58

Message par bvincent »

Je préfère toujours installer à partir des sources car avec cette manière tu sais ce que tu fais et comment c'est fait. Et récupérer les sources te permet bien souvent d'avoir une version stable plus récente que celle que tu trouvera dans les paquets pré compilés (apt-get).

En plus mais je conçois que ce soit galère au début, cela est beaucoup plus formateur.

Je rédige une procédure (sur le wiki de l'intranet de mon entreprise) et je ne manquerai pas de vous la communiquer une fois qu'elle sera publiable =) .

Cordialement Benjamin.

Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.11) Gecko/20061201 Firefox/2.0.0.11 (Ubuntu-feisty)
bvincent
Arias
Messages : 7
Inscription : 22 janv. 2008, 11:58

Aide pour la compilation

Message par bvincent »

D'ailleurs je vais vous donner des informations qui m'ont longtemps manquées pour compiler "sans problèmes" et que j'aurai aimé moi même trouvé avant.

Par contre ceci est valable pour les systèmes reposant sur debian (ubuntu, knoppix...).

Il vous faut les paquets suivants:

build-essential

Code : Tout sélectionner

apt-get install build-essential
et les headers correspondant à votre noyau.

Code : Tout sélectionner

apt-get -s install linux-headers-`uname -r`
Et la vous avez déjà une bonne base pour compilé.

Cordialement Benjamin.
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 15 invités