Auto-héberger son agenda avec Baïkal

Magazine
Marque
Linux Pratique
HS n°
Numéro
46
Mois de parution
octobre 2019
Spécialité(s)


Résumé

Il est très utile de pouvoir avoir un calendrier partagé accessible à tout moment sur toute sorte de clients : PC, tablette, téléphone... La solution la plus simple est souvent d’utiliser Google Calendar. Dans cet article, nous allons voir qu’il n’est pas si compliqué d’héberger soi-même un calendrier partagé à l’aide de Baïkal. Nous aborderons l’installation et la configuration de Baïkal. Pour finir, nous découvrirons la configuration des clients Thunderbird, Android et iOS.


Body

Site du projet : http://sabre.io/baikal/

1. Premiers pas

1.1 Téléchargement de Baïkal

On télécharge d’abord Baïkal sur le site https://github.com/sabre-io/Baikal/releases :

$ wget https://github.com/sabre-io/Baikal/releases/download/0.5.3/baikal-0.5.3.zip

$ unzip baikal-0.5.3.zip
$ ls -l baikal

total 16

drwxr-xr-x 4 scolas scolas 4096 avril 23 15:55 Core

drwxr-xr-x 4 scolas scolas 4096 juin  17 19:10 html

drwxr-xr-x 3 scolas scolas 4096 mai   13 16:25 Specific

drwxr-xr-x 7 scolas scolas 4096 mai   13 16:26 vendor

La documentation nous apprend que seul le répertoire html doit être accessible et que les autres répertoires doivent être inaccessibles pour éviter toute faille de sécurité.

1.2 Configuration du site d’hébergement

Nous allons voir comment installer Baïkal chez notre hébergeur (OVH ici). Une manipulation similaire sera à effectuer chez d’autres hébergeurs.

Pour l’installation de Baïkal, le plus simple est donc de créer un sous-domaine à l’aide de la console OVH comme par exemple http://calendrier.monsite.fr et de positionner le répertoire racine du site à html.

1.3 Envoi des fichiers

L’étape suivante consiste à envoyer les fichiers sur le site de l’hébergeur. Nous pouvons transférer les fichiers à l’aide d’un client FTP tel que Filezilla.

2. Installer et configurer Baïkal

2.1 Installer Baïkal

Accédons ensuite au site pour effectuer l’installation : https://calendrier.monsite.fr (Figure 1).

02

Figure 1

On choisit le fuseau horaire sur lequel on se trouve : dans notre cas Europe/Paris.

On active CalDav (la partie gestion de calendrier) et CardDav (la partie gestion du carnet de contacts). Au niveau de l’authentification, nous laisserons la valeur par défaut digest.

Finalement, nous spécifions le mot de passe administrateur.

Il va nous falloir ensuite configurer la base de données que nous souhaitons utiliser. Nous avons deux possibilités :

  • SQLite : une base de données stockée dans un fichier ;
  • MySQL : une base de données plus classique et aussi plus fiable.

Dans notre exemple, nous utiliserons la base de données MySQL fournie par OVH, il faut donc saisir les informations de connexion à la base (host, port, database name, username, password).

Une fois la base de données configurée, nous pouvons utiliser Baïkal en accédant au menu d’administration : https://calendrier.monsite.fr/admin.

2.2 Configurer son calendrier

Connectons-nous sur l’interface d’administration : https://calendrier.monsite.fr/admin.

Une fois connectés, la page principale apparaît (le dashboard, figure 2). Les informations qui nous intéressent se situent en bas, on y découvre : le nombre d’utilisateurs, le nombre de calendriers, le nombre d’évènements, le nombre de carnets d’adresses ainsi que le nombre de contacts.

06

Figure 2

Créons maintenant un nouvel utilisateur. Pour ce faire, il faut cliquer sur Users and resources tout en haut de l’interface d’administration.

Pour le moment, il n’y a pas d’utilisateur, créons donc un nouvel utilisateur avec le bouton Add User.

Nous renseignons les informations de notre nouvel utilisateur qui va pouvoir utiliser calendrier et carnet d’adresse Baïkal (Figure 3).

09

Figure 3

Accédons maintenant à la configuration de notre utilisateur en cliquant sur Calendars. Nous constatons que notre utilisateur dispose d’un calendrier par défaut : « Default Calendar ». Cliquons sur le bouton Edit en bleu pour configurer ce calendrier (Figure 4).

11

Figure 4

Le menu suivant nous apprend que l’ID de notre calendrier est default, nous pouvons ensuite changer différentes informations telles que le nom à afficher (Display Name) et la description (Description).

Validons les modifications en cliquant sur le bouton Save changes. Notre calendrier est désormais prêt à l’emploi.

3. Utiliser son calendrier

Le calendrier est désormais opérationnel. Notre URL d’accès est : https://calendrier.monsite.fr/cal.php/calendars/Sebastien/defaut/.

3.1 Calendrier Thunderbird

13

Figure 5

Sous Thunderbird, pour retrouver notre calendrier, on clique sur Ajouter calendrier et on spécifie notre URL.

3.2 Calendrier Android

Malheureusement, les systèmes Android ne supportent pas nativement les calendriers CalDav.
Installons l’application « Caldav Sync Free Beta » (Figure 6).

14

Figure 6

Une fois installée, nous pouvons ajouter un nouveau compte CalDav. Entrons ensuite les paramètres de notre calendrier.

Notre calendrier est désormais prêt à l’emploi (Figure 7).

17

Figure 7

3.3 Calendrier iOS

Les systèmes iOS quant à eux supportent nativement les calendriers CalDav.

Configurons donc notre calendrier à l’aide de notre URL (Figure 8).

18

Figure 8

4. Créer un calendrier partagé

Il est très souvent utile de pouvoir partager son calendrier sans pour autant que celui-ci ne soit accessible en modification. Pour ce faire, il existe un plugin permettant de modifier les permissions. Téléchargeons-le :

$ ls -l baikal

total 16

drwxr-xr-x 4 scolas scolas 4096 avril 23 15:55 Core

drwxr-xr-x 4 scolas scolas 4096 juin  17 19:10 html

drwxr-xr-x 3 scolas scolas 4096 mai   13 16:25 Specific

drwxr-xr-x 7 scolas scolas 4096 mai   13 16:26 vendor
$ cd baikal/html/admin$ wget https://raw.githubusercontent.com/mrbaseman/calendar-tools/master/permissions.php

Une fois téléchargé, envoyons-le chez notre hébergeur en FTP.

Ensuite, créons le nouvel utilisateur public.

Ce nouvel utilisateur accédera en lecture seule à notre précédent calendrier, il est donc conseillé de supprimer le calendrier par défaut de cet utilisateur.

Donnons l’accès en lecture seule à public au calendrier Sebastien via l’URL : https://calendrier.monsite.fr/admin/permissions.php (Figure 9).

20

Figure 9

Finalement, configurons l’accès au calendrier Sebastien avec l’utilisateur public (Figure 10).

21

Figure 10

Désormais, l’utilisateur public pourra consulter le calendrier de Sebastien sans pour autant pouvoir le modifier.

Conclusion

En quelques étapes simples, nous sommes désormais capables d’héberger nous-mêmes notre calendrier partagé et donc nous passer d’un fournisseur externe dont nous ne savons pas toujours comment sont utilisées nos données.



Article rédigé par

Par le(s) même(s) auteur(s)

Contrôler vos modèles Lego PoweredUp au Joypad à l'aide de votre Raspberry Pi

Magazine
Marque
Hackable
Numéro
30
Mois de parution
juillet 2019
Spécialité(s)
Résumé

Dans cet article, nous allons voir comment piloter un robot Lego PoweredUp à l’aide d’un JoyPad, grâce à un Raspberry Pi. Nous allons installer tout le nécessaire sur notre Raspberry Pi pour pouvoir piloter notre modèle Lego PoweredUp. Nous utiliserons NodeJS, donc le langage JavaScript, pour piloter notre modèle Lego.

Contrôler vos modèles Lego au joypad à l'aide de BrickPi

Magazine
Marque
Hackable
Numéro
29
Mois de parution
avril 2019
Spécialité(s)
Résumé

Dexter Industries propose des cartes d’extension pour Raspberry Pi. Dans cet article, nous allons nous intéresser à la carte BrickPi permettant de piloter les moteurs et senseurs Lego MindStorms. Nous verrons comment piloter notre robot Lego à l’aide d’un joypad. Nous développerons notre programme grâce au langage Python.

Les derniers articles Premiums

Les derniers articles Premium

Stubby : protection de votre vie privée via le chiffrement des requêtes DNS

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Depuis les révélations d’Edward Snowden sur l’espionnage de masse des communications sur Internet par la NSA, un effort massif a été fait pour protéger la vie en ligne des internautes. Cet effort s’est principalement concentré sur les outils de communication avec la généralisation de l’usage du chiffrement sur le web (désormais, plus de 90 % des échanges se font en HTTPS) et l’adoption en masse des messageries utilisant des protocoles de chiffrement de bout en bout. Cependant, toutes ces communications, bien que chiffrées, utilisent un protocole qui, lui, n’est pas chiffré par défaut, loin de là : le DNS. Voyons ensemble quels sont les risques que cela induit pour les internautes et comment nous pouvons améliorer la situation.

Surveillez la consommation énergétique de votre code

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Être en mesure de surveiller la consommation énergétique de nos applications est une idée attrayante, qui n'est que trop souvent mise à la marge aujourd'hui. C'est d'ailleurs paradoxal, quand on pense que de plus en plus de voitures permettent de connaître la consommation instantanée et la consommation moyenne du véhicule, mais que nos chers ordinateurs, fleurons de la technologie, ne le permettent pas pour nos applications... Mais c'est aussi une tendance qui s'affirme petit à petit et à laquelle à terme, il devrait être difficile d'échapper. Car même si ce n'est qu'un effet de bord, elle nous amène à créer des programmes plus efficaces, qui sont également moins chers à exécuter.

Donnez une autre dimension à vos logs avec Vector

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Avoir des informations précises et détaillées sur ce qu’il se passe dans une infrastructure, et sur les applications qu'elle héberge est un enjeu critique pour votre business. Cependant, ça demande du temps, temps qu'on préfère parfois se réserver pour d'autres tâches jugées plus prioritaires. Mais qu'un système plante, qu'une application perde les pédales ou qu'une faille de sécurité soit découverte et c'est la panique à bord ! Alors je vous le demande, qui voudrait rester aveugle quand l'observabilité a tout à vous offrir ?

Les listes de lecture

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.
11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.
10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Voir les 60 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous