Yunohost – Goaccess – Rapport HTML depuis des logs d’un serveur web

Présentation de GoAcess

GoAccess présente des statistiques en lisant les logs de votre serveur Web, non pas en exécutant du code côté utilisateur.

Site : https://goaccess.io/

GoAccess fonctionne en ligne de commande et présente par défaut ses résultats dans la console, en temps réel. Une série de panels (que l'on peut étendre individuellement) présentent les différents types de données : nombres de visiteurs uniques, URL non trouvées, OS, etc. Classique. Il est également possible de générer une − plutôt jolie − page html

Le site GoAccess : analyse simple et efficace des logs d'un serveur Web - https://hal-9000.fr/?s11R3Q a fait un tutoriel qui montre qu'il est assez simple d'installer et d'utiliser GoAccess.

Autres tutoriels présentant des astuces complémentaires :
- Goaccess : un autre outil de Web Analytics par Denis Szalkowski
- GoAccess – Des logs web en temps réel et en cli

GoAccess répond à mon besoin

J'ai étudié différents systèmes permettant de générer des rapports à partir de logs, je connais un peu ELK (ElasticSearch, LogStash, Kibana), mais ça reste très complexe et un peu usine à gaz pour mon besoin qui est de tout simplement superviser / avoir des rapports issus des logs de mon serveur Yunohost. Donc GoAcess correspond bien à mon besoin.

Par défaut, Yunohost conserve les logs du serveur Nginx un certain temps (il faudra que je regarde en détail la configuration de logrotate), cela convient

Automatisons un peu tout ça...

L'objectif est d'avoir des rapports réguliers en HTML. Pour ça, j'ai mis en place une tâche CROn qui va faire une concatènation des différents fichiers de logs et générer un seul et même rapport HTML via GoAccess qui contient donc une visualisation graphique de l'ensemble des données issues de ces logs. Je peux ensuite m'envoyer le rapport par mail, le récupérer, le mettre à disposition dans un espace dédié du serveur web...

#/bin/bash

# On fait le cat dans /tmp pour que ce soit effacer ensuite
cat /var/log/nginx/blog.genma.fr-access.log* > /tmp/blog.genma.fr-access.full.log
echo "Goacess - Lancement de la generation des rapports HTML"
goaccess --log-format=COMBINED -f /tmp/blog.genma.fr-access.full.log -a -o BlogFullReport.html
# Le fichier BlogFullReport.html contient un beau rapport HTML complet généré par Goaccess.
echo "Goacess - Fini"

Yunohost ?

Yunohost propose la création de coquille vide pour des applications, via les Multi Custom Webapp, une version forkée des Custom Webapp qui permettent d'en créer plusieurs.

J'installe l'application en indiquant comme paramétrage :
- Nom de l'application : GoAccess
- Adresse et chemin : moninstanceyunohost.fr et /goacess comme sous répertoire
- Utilisateur : genma

Ca mouline (il y a la création et modification de la configuration nginx qui se fait) et ensuite j'ai bien une tuile "GoAccess" dans la liste des applications et un dossier "/var/www/webapp_genma/GoAccess" dans lequel j'ai par défaut le fichier "index.html".

Il ne reste qu'à ajouter au script ci-dessus une ligne du type

mv /tmp/BlogFullReport.html /var/www/webapp_genma/GoAccess

et depuis un navigateur web, en étant connecté à Yunohost d'aller sur
https://moninstanceyunohost.org/goacess/BlogFullReport.html

pour avoir le beau rapport généré par GoAccess !

Aller plus loin ?

Il suffit de faire un script un peu plus avancé, de le mettre en tâche planifiée (cron) et de créer par exemple un fichier index.html qui contiendra par exemple une série de liens :
- BlogFullReport_Jour1.html
- BlogFullReport_Jour2.html
- BlogFullReport_Jour3.html
- InstanceFullReport_Jour1.html
- InstanceFullReport_Jour2.html
- InstanceFullReport_Jour3.html

Ici les fichers InstanceFullReport_JourX.html étant généré par une ligne faisant appel à GoAcess mais pour un cumul de logs de fichiers Nginx pour l'instance (cumul des fichiers de log nginx pour monistanceyunohost.fr).

Il y a un an – Ma lettre de motivation

Dans le cadre des entretiens que je suis amené à faire passé et c'est la plupart du temps du très classique et conventionnel, parfois même minimaliste. Il manque le petit plus, le côté qui apporte quelque chose. J'avais d'ailleurs fait un billet sur le sujet Où sont les passionné.e.s ? (qui m'a permit de faire de belles rencontres dont deux ont abouties sur des embauches de personnes qui travailleront dans mon équipe).

Dans le présent billet je voudrais tout simplement copier coller le contenu de ma lettre de motivation que j'avais envoyé à la mi-septembre 2016 et qui avait conduit à mon entretien et à mon changement de vie.

Cette lettre, elle avait été travaillée et retravaillée un certain nombre de fois, depuis des mois, car je cherchais un nouvel emploi depuis le début de l'année et j'avais eu quelques retours et entretiens ; j'en profitais alors pour la remanier.

Pour moi, cette lettre se voulait complémentaire de mon CV complet (que je fournissais). Avec CV (de deux pages) et cette lettre de motivation (qui fait un format A4), je joignais aussi un résumé de carrière, complémentaire du CV qui expliquait en une page A4 le parcours, la cohérence entre les différentes missions de ma carrière et mon parcours personnel. Ce résumé (qu'on retrouvera ci-dessous) présentais donc à la fois mon parcours professionnel et mon parcours personnel sous pseudonyme. Je liais alors définitivement les deux comme je l'ai expliqué dans mon billet Du pseudonymat au pseudonyme.

Avec ces trois documents, j'estimais donner ainsi toutes les informations nécessaires aux recruteurs, ce qui permettait d'avoir un entretien où on savait déjà qui j'étais, ce que je prétendais savoir faire, mon parcours.. Cela a permis une discussion plus directe et me semble donc avoir été bénéfique.

Voici donc ma lettre

Par la présente lettre, je vous présenterai mes motivations et aspirations quand à ma candidature que je présente à Linagora.

Ce que je recherche ?
Je suis arrivé à un moment de ma vie où j'ai besoin de travailler et mobiliser mes compétences pour des valeurs qui me sont chères, pour m'épanouir au sein de mon travail, dans un cadre motivant et avec une équipe qui me tire vers le haut et me permet d'exploiter mon plein potentiel. Je souhaite en particulier pouvoir travailler avec le système d'exploitation de mon choix (Debian ou Ubuntu) sur des technologies à base de logiciel libre - open-source. Et je pense que Linagora répond à ces différents critères.

Pour moi, l'informatique est un outil destiné à répondre aux besoins "métiers" du client. Le cœur de son métier n'étant pas l'informatique, nous pouvons l'accompagner dans la mise en place des meilleures solutions afin de satisfaire ses impératifs tout en respectant ses contraintes. Je considère que l'informaticien doit être l'interface entre le client et les architectes, développeurs et autres équipes techniques spécialisées, en leur donnant des directives précises, ciblées et faisant appel à leur meilleur niveau de technicité.
Je recherche donc un poste dans de la MOA, avec à la fois du relationnel et de l'accompagnement client, et de la gestion d'équipe technique et développeur.

Ce que je peux apporter à Linagora ?

Mon expérience. Mes parcours professionnel et personnel sont présentés dans le document ci-joint et mon CV, mais en quelques mots, il y a mon expérience de consultant et la maturité acquise au cours de mes 11 années passées au sein de Capgemini. Et mon expérience du monde du logiciel libre et de l'open-source, étant donné que je suis un utilisateur, autodidacte, depuis plus de 12 ans, impliqué au sein de différentes communautés du logiciel libre.

Mon expérience de consultant et ma maturité dans ce domaine, tout comme mon expérience personnelle riche dans le monde du logiciel libre, ma capacité de communication écrite et mon aisance orale, seront des atouts pour Linagora. Avoir quelqu'un qui puisse comprendre les besoins du client, les exprimer en spécifications fonctionnelles et techniques, qui sachent présenter aux clients les avantages et spécificités des produits open-source et plus particulièrement ceux de Linagora, la plus value qu'à Linagora pour mener à bien les projets informatiques des clients, les accompagner dans leur transition informatique. Cette personne, c'est moi.

De plus j'ai une très forte capacité d'adaptabilité. Selon les besoins du moment, les temps forts, je pourrais également intervenir pour faire de la revue de code, tester des applications, rédiger des cahiers des charges. Je pourrais contribuer à de la localisation d'applications, valider l'accessibilité des tutoriaux d'installation, aider à leur amélioration. Je pourrais aider à la gestion et aux interactions avec les différentes communautés de l'open-source et du logiciel libre...

Me contacter ?

Je vois, de mon point de vue, plein de choses diverses et variées au sein desquelles je pourrais m'épanouir pleinement, contribuant au déploiement et au rayonnement de Linagora... Si ma présentation et mon profil vous intéressent, je me tiens disponible pour répondre aux questions éventuelles, donner des informations complémentaires et m'entretenir avec des membres de Linagora.
Jérôme « Genma »

Résumé de carrière

Résumé de carrière

Voici un résumé de carrière qui apporte quelques précisions sur mon parcours. J'ai donc commencé ma carrière en 2005 chez Capgemini en tant que consultant AMOA. Le client était l'Etablissement Français du Sang et ma mission a consisté à assurer le suivi de la migration (du lancement du projet au suivi en garantie en passant par la mise en production) de leur logiciel métier au sein de différentes régions. J'ai travaillé sur l'accompagnement et la conduite du changement, les reprises des données, le suivi du projet... J'ai en particulier été sensibilisé aux problématiques des données personnelles médicales et à l'importance de la cohérence et de l'intégrité de ces dernières.

De 2008 à 2011, j'ai été développeur junior sur les technologies Java/J2EE, dans le cadre d'un grand projet pour la Direction générale des Finances publiques (DGFiP) puis le Ministère de l'Education Nationale.

Entre 2011 et 2013, j'ai travaillé sur un petit projet d'évolution d'un logiciel métier pour la société Sécuritas. Ce travail consistait en l'accompagnement du client dans la rédaction des spécifications en langue anglaise, le développement de ces dernières en .NET/C# ou la gestion du développement en offshore (au Vietnam) avec revue de code et recettes, la tenue et le suivi des réunions parfois en anglais. Le tout en méthodologie AGIL.

Depuis mars 2013, je suis sur une TMA d'un projet aux technologies obsolètes (.NET 1.1, PL/SQL, VBS). Sur ce projet, j'ai effectué la rédaction des spécifications et des évolutions fonctionnelles. Pour palier les problématiques des pannes matérielles, j'ai participé à la virtualisation des serveurs (Windows Server 2003) sous VMWare ESX.

Résumé du parcours personnel

A titre personnel, depuis plus de 12 ans, je suis intéressé par les nouvelles technologies (je fais beaucoup de veille sur ces sujets) et l'open-source. J'utilise GNU/Linux comme système d'exploitation pour mon serveur (Debian) et mon desktop (Ubuntu). Je suis impliqué au sein de différentes communautés (Mozilla, CozyCloud, Yunohost, Debian, Framasoft). Je participe à des install-party, je fais de l'auto-hébergement (administration système et devops), du support, je donne régulièrement des conférences (Ubuntu-Party, JDLL de Lyon, Capitole du Libre de Toulouse, ou encore en médiathèque parisienne) Je rédige des tutoriels, un peu de documentation et surtout un blog, depuis plus de 12 ans sur lequel je synthétise et partage toutes mes connaissances nouvellement acquises : https://blog.genma.fr.

Je m'intéresse également aux technologies liées au chiffrement, à la virtualisation, au Cloud, ainsi qu'aux problématiques concernant les données personnelles et la vie privée (par exemple, je suis un utilisateur de Tor dont je suis les développements et évolutions, j'utilise TrueCrypt - maintenant Veracrypt - depuis 2008, je chiffre mes mails avec GPG, je chiffre mes disques durs (Luks), pour ne citer que ces technologies). Je suis sensible aux problématiques des fuites de données, de pentest, de hacking, de failles de sécurité, d'injection SQL et autres techniques utilisées par les attaquants potentiels. Je coanime des café vie privée / cryptoparty, et je donne à ce titre des cours et des conférences dans des domaines qui vont de l'hygiène numérique (pour le grand public, sensibilisation à différentes problématiques autour des données personnelles..) à l'autodéfense numérique (formation de journalistes aux techniques de chiffrement, par exemple).

Yunohost et les applications Framasoft

Comme je le disais dans mon billet et ma conférence De Framasoft à Yunohost, réapproprions nous le cloud un partenariat avait été mis en place entre Framasoft et Yunohost avec du temps d'un salarié de Framasoft consacré au packaging d'application Framasoft pour Yunohost.

Quelques mois après, où en est-on ?

L'idée n'est pas de parler au nom de Framasoft mais plus de remettre en avant cette collaboration et de faire un petit suivi de l'avancement. Une image valant mieux qu'un long discours :

On peut donc voir qu'il reste donc encore des applications à packagées, il faut maintenir les packages existant (en les faisant évoluer pour que les applications installées sur une instance Yunohost soient mises à jour ou qu'une installation fraîche installe la dernière version de l'application...)

Si vous souhaitez aider, si vous avez un peu de temps ou tout simplement des retours d'expérience à faire, il y a un topic dédié dans le forum Yunohost sur le sujet.

Contribuez à Yunohost

D'une façon plus générale, Yunohost a besoin de contributeurs pour tous les aspects du projet. A savoir :
- backend : python (simple), bash (lua)
- frontend : html/js (sammy.js)
- packging des apps : full bash, et des connaissance en sysadmin sont nécessaires (configuration nginx)
- sécurité : revue de code
- infrastructure du projet : debian, deb toolchain, ruby
- relation avec la communauté : communication, support via le forum, dans les issues de Git...
- aide à la traduction et à la documentation
- testing (les versions beta) avec rapport de bugs
- ...

Debian – Rester sur une version ; passer de stable en stable

Yunohost n'est pas compatible avec Stretch

Debian Stretch est sortie en version stable au début de l'été. Pour le détail, voir la dépêche Linuxfr Debian 9 : Stretch déploie ses tentacules.

Les changements apportés par cette version sont suffisamment importantes pour que Yunohost ne soit pas encore compatible. Pour rappel, Yunohost repose sur Debian en n'étant qu'une surcouche (les manipulations spécifiques à Debian restent possibles, même si il faut savoir ce que l'on fait pour ne pas casser la compatibilité avec Yunohost).

Pour en savoir plus, voir le sujet dans le forum : Debian Stretch | YunoHost is NOT YET compatible | YunoHost N'EST PAS ENCORE compatible

Comment rester sur une version de Debian

Comme indiqué dans le message du forum, il faut donc conserver la mention "jessie" comme version dans le fichier sources.list et autres.

$ cat /etc/apt/sources.list
deb http://url_du_depot.fr jessie main
deb-src http://url_du_depot.fr jessie main
deb http://security.debian.org/ jessie/updates main
deb-src http://security.debian.org/ jessie/updates main

Autre façon de faire, avec la commande sed, pour remplacer "main" par "jessie".
Dans le fichier "install" de l'application non officielle (à utiliser en connaissance de cause)
no_stretch_ynh

# Backup old sources.list
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

sudo cp -R /etc/apt/sources.list.d /etc/apt/sources.list.d.bak

# Change sources.list with "stable" as distribution
sudo sed -i "s@ stable \+main@ jessie main@g" /etc/apt/sources.list
sudo sed -i "s@ stable-updates @ jessie-updates @g" /etc/apt/sources.list
sudo sed -i "s@ stable/updates @ jessie/updates @g" /etc/apt/sources.list

# Idem for sources.list.d/*.list
sudo sed -i "s@ stable \+main@ jessie main@g" /etc/apt/sources.list.d/*.list
sudo sed -i "s@ stable-updates @ jessie-updates @g" /etc/apt/sources.list.d/*.list
sudo sed -i "s@ stable/updates @ jessie/updates @g" /etc/apt/sources.list.d/*.list

Ou au contraire, comment migrer d'une version stable à une autre

Si on souhaite faire des montées de version stable en version stable pour suivre les évolutions de Debian (pour un serveur ou un poste bureautique sur lequel cela est possible), au contraire, on aura un fichier sources.list du type :

$ cat /etc/apt/sources.list
deb http://url_du_depot.fr stable main
deb-src http://url_du_depot.fr stable main
deb http://security.debian.org/ stable/updates main
deb-src http://security.debian.org/ stable/updates main

Et si c'est en version testing de Debian que l'on veut être (pourquoi pas), ce sera donc :

$ cat /etc/apt/sources.list
deb http://url_du_depot.fr testing main
deb-src http://url_du_depot.fr testing main
deb http://security.debian.org/ testing/updates main
deb-src http://security.debian.org/ testing/updates main

Jouons avec Ansible et Virtualbox

Prérequis : ce billet nécessite de connaître Virtualbox, savoir installer et connaître les commandes de base de Debian et avoir des bases en Ansible.

Virtualbox

Virtualbox est là pour me permettre d'avoir différentes machines Debian. J'en ai créer une par défaut, avec une installation minimale de Debian, j'ai ajouté SSH et y ai ajouté ma clef SSH de mon utilisateur de ma machine hôte.

J'ai deux machines virtuelles,
- debianAnsible01
- debianAnsible02

Chacune de ces machines a deux cartes réseaux :
- une carte eth0 en mode NAT : l'accès Internet de la machine hôte est alors partagé, je peux faire des mises à jour etc. La machine virtuelle voit Internet mais n'est pas vu du réseau local (elle est derrière un NAT qui est géré par VirtualBox). Retour ligne manuel
- une carte eth1 en mode Réseau Privé hôte sur vbonet0 : la machine est visible et voit la machine hôte et réciproquement. Cette interface réseau me sert pour me connecter en SSH depuis ma machine hôte sur la machine virtuelle.

Les IP des machines sur l'interface eth1 (qui sera utilisée par Ansible) sont donc :
- 192.168.56.102 Debian_Ansible01
- 192.168.56.103 Debian_Ansible02

On liste les machines de VirtualBox

$ VBoxManage list vms |grep Debian
"Debian_Ansible01" {f7e91481-b0db-4583-a2de-c3d04e81e4e3}
"Debian_Ansible02" {e0449d42-682f-41d0-be73-1816c0b8f334}

Ansible

Pour avoir une présentation détaillée et comprendre Ansible, je vous invite à lire le journal de Skhaen sur LinuxFr : Journal Déploiement et automatisation avec Ansible - partie 1

Je pars de l'étape où Ansible est installé sur ma machine hôte (qui fait tourner VirtualBox).

J'ai créé un fichier /etc/ansible/hosts

[virtualboxDebian]
Debian_Ansible01
Debian_Ansible02

Et dans mon fichier /etc/hosts j'ai les lignes

192.168.56.102 Debian_Ansible01
192.168.56.103 Debian_Ansible02

Jouons un peu

Démarrage des machines depuis la ligne de commande

VBoxManage startvm Debian_Ansible01
VBoxManage startvm Debian_Ansible02

Ping des différentes machines

$ ansible -m ping all --one-line
Debian_Ansible01 | SUCCESS => {"changed": false, "ping": "pong"}
Debian_Ansible02 | SUCCESS => {"changed": false, "ping": "pong"}

Pour avoir l'uptime des machines

$ ansible all -m command -u genma --args "uptime" --one-line
Debian_Ansible01 | SUCCESS | rc=0 | (stdout) 10:50:16 up 29 min, 1 users, load average: 0,00, 0,01, 0,03
Debian_Ansible02 | SUCCESS | rc=0 | (stdout) 10:50:16 up 25 min, 1 users, load average: 0,00, 0,01, 0,05

Remarque : l'option —one-line permet d'avoir le retour json sur une seule ligne et non sur plusieurs.

Ajout des paquets aux VM

Pour avoir des paquets d'installer sur tout les serveurs, Ansible me permet de l'automatiser facilement.
On commence par éditer un fichier /etc/ansible/roles/debian_complete_installation.yml pour y mettre le bloc suivant :

---
- hosts: all
remote_user: root

tasks:
- name: install common packages for all servers
apt:
update_cache=yes
state=latest
name={{item}}
with_items:
- curl
- htop
- sudo
- tar
- unzip
- vim
- wget
- whois
- screen

Après l'avoir enregistré, il suffit de lancer la commande suivante pour installer cette liste de paquets sur tout les serveurs :

ansible-playbook -i hosts /etc/ansible/roles/debian_complete_installation.yml

Mises à jour des VM via Ansible

Pour mettre à jour les VM via Ansible, on créer un fichier de template
/etc/ansible/roles/genma_apt_update.yml

---
- hosts: all
remote_user: root

tasks:
- name: update and upgrade apt packages
apt:
update_cache=yes
state=latest
upgrade=yes

Mise à jour des VM via Ansible
Après l'avoir enregistré, il suffira de lancer la commande suivante pour installer cette liste de paquets sur tout les serveurs :

ansible-playbook -i hosts /etc/ansible/roles/genma_apt_update.yml

Rappel : mon ficher hosts ne contient que mes machines Ansible pour l'instant.

Si on se connecte dans la VM, on voit bien que le apt-get update et upgrade a été lancé (on a les processus correspondant qui tournent).

Ansible renvoit sur la ligne de commande :

ansible-playbook -i hosts /etc/ansible/roles/genma_apt_update.yml
PLAY [all] *********************************************************

TASK [Gathering Facts] *********************************************
ok: [Debian_Ansible01]
ok: [Debian_Ansible02]

TASK [update and upgrade apt packages] ******************************
changed: [Debian_Ansible01]
changed: [Debian_Ansible02]

PLAY RECAP **********************************************************
Debian_Ansible01 : ok=2 changed=1 unreachable=0 failed=0
Debian_Ansible02 : ok=2 changed=1 unreachable=0 failed=0

Ansible et plusieurs groupes dans le hosts

Si mon fichier /etc/ansible/hosts contient plusieurs groupes et que je ne veux lancer un playbook que sur un groupe dédié, l'option est de la forme

--extra-vars="hosts=virtualboxDebian"

La commande pour lancer les mises à jour sera donc

{{Eteindre les machines}}

Pour éteindre les machines, là encore, on passe par un playbook Ansible
/etc/ansible/roles/genma_shutdown.yml

---
- hosts: all
remote_user: root

tasks:
- name: shutdown
command: /sbin/shutdown -h now

- name: wait go down
local_action: wait_for host={{ ansible_ssh_host }} port=22 state=stopped

Et quand on le lance :

ansible-playbook -i hosts /etc/ansible/roles/genma_shutdown.yml

PLAY [all] *********************************************************

TASK [Gathering Facts] *********************************************************
ok: [Debian_Ansible02]
ok: [Debian_Ansible01]

TASK [shutdown] *********************************************************

Sauvegarde de l'état des machines via un Snapshot Virtualbox

Prise de snapshot

VBoxManage snapshot Debian_Ansible01 take snapshot_VM_MAJ_par_Ansibe_OK
VBoxManage snapshot Debian_Ansible02 take snapshot_VM_MAJ_par_Ansibe_OK

Conclusion

Un premier tutoriel assez simple qui montre, je l'espère les possibilités d'Ansible, que personnellement je serai amené à utiliser de plus en plus régulièrement. D'autres tutoriaux seront donc amenés à être publier au fur et à mesure de mon apprentissage.

Wget derrière un SSO

SSO ???

Un ensemble de page derrière un SSO (abréviation en anglais Single Sign-On : SSO) ou authentification unique est une méthode permettant à un utilisateur d'accéder à plusieurs applications informatiques (ou sites web sécurisés) en ne procédant qu'à une seule authentification.. C'est le fameux système que l'on retrouve en entreprise où on se connecte une fois pour accéder aux différentes applications de l'Intranet. Pour des infrastructures variées et complexes, il y a lemonldap par exemple. Ou pour Yunohost, il y a SSOwat, un SSO pour nginx, écrit en Lua.

Ma problématique

Sur une des applications de l'Intranet de l'entreprise dans laquelle je travaille, j'ai eu à récupérer différentes pages via l'outil Wget. Soucis, wget ne permet pas de se connecter au SSO.

Au lancement de Wget, l'application ne me voyant pas connecté, je suis renvoyé vers le SSO et ma page récupérée par Wget, même si le lien est correct contient deux champs HTML "Identifiant et mot de passe", soit la mire de connexion.

A l'arrivée sur la page de l'application, il y a une vérification de la présence du cookie d'authentification et comme wget ne le fournit pas, on est renvoyé vers l'authentification.

La solution ?

On lance Firefox dans lequel on a ajouté l'extension Export Cookies. On se connecte sur le site (on a donc un cookie d'authentification qui est créé). On exporte ce cookie via le menu "Outils -> Export Cookies" et on sauvegarde le ficher cookies.txt.

Puis on relance la commande wget qui va bien, avec les options qui vont bien à savoir :

wget --load-cookies cookies.txt -p --no-check-certificate https://application.enterprise.com/page01.htmlt -O ./Applicaton_page01.html

--no-check-certificate pour éviter le soucis avec https
--load-cookies cookies.txt : charge le cookie d'authentification sur le SSO

Ce qui manque à beaucoup de tutoriel

Je vois passer dans mon agrégateur RSS et je lis un certain nombre de tutoriels sur les services à mettre en place soi-même, sur l'autohébergement, sur comment installer tel ou tel service (NextCloud par exemple). Ces tutoriels sont une très bonne choses, ils donnent de l'information, partagent des bonnes pratiques. Il y a plus de précisions sur comment sécuriser l'installation (avec les services webs, le cas d'une connexion en https est de plus en plus abordé, avec souvent comme recommandation de mettre en place un certificat Let's Encrypt).

Toutefois, j'estime que dans ces bonnes pratiques, il manque toutefois une bonne pratique importante pour que ce tutoriel soit complet : les sauvegardes. Quels sont les fichiers de configuration à sauvegarder pour réinstaller le logiciel par exemple et retrouver le même paramétrage. Et surtout quelles sont les données utilisateurs, où elles se trouvent et comment les conserver ?

Je ne m'attends pas à avoir un tutoriel complet sur les sauvegardes (il y a des tas de façon de faire et d'outils pour faire ça), mais au moins à pouvoir savoir quelles sont les données que je dois impérativement sauvegarder. Un lien vers un autre tutoriel en ligne déjà existant sur comment sauvegarder m'irait très bien...

Si je dois réinstaller une machine ou migrer sur une autre machine par exemple, je réinstalle tout. Du coup, pour le logiciel, je repartirai de la dernière version (à partir du code source ou des paquets). Mais pour mes données, je repartirai de mes sauvegardes. J'aimerais donc savoir où je dois restaurer mes données (logiquement au même endroit depuis lequel j'ai fait mes sauvegardes).

De même, pour aller plus loin, des précisions sur les formats supportés, les possibilités d'import et d'export et dans quels formats sont fait les sauvegardes, seraient le top du top.

Du coup, pour les prochains tutoriels que je ferai, dès que je me poserai la question de comment faire la sauvegarde, je ferai les tests (sauvegarde ET restauration de cette sauvegarde) et je ferai alors une section dédié dans le corps du billet de blog tutoriel. Car autant appliquer moi-même les recommandations que je fais.

Cryptpad, tutoriel et critiques

Présentation de Cryptpad

Pour en savoir plus sur Cryptpad et son fonctionnement, ses caractéristiques et spécificités, je vous invite à lire le très bon article de NextInpact : CryptPad v1.10.0 est disponible, à la découverte du service collaboratif chiffré de bout en bout

En résumé, c'est un système de pad chiffré zeroknowledge le service ne détient pas les clefs de chiffrement utilisées par les utilisateurs en local et ne peut donc pas consulter le contenu. On parle en général de solution de bout en bout, ou E2E (End-to-end) pour les intimes. Il est donc possible de partager un document, de l'éditer à plusieurs, sans que celui-ci soit stocké en clair sur le serveur. L'usage est ainsi considéré comme privé, mais pas anonyme, prévient l'équipe qui renvoie vers l'utilisation de Tor ou d'un VPN pour ajouter un telle couche de protection.

Les fonctions apportées par Cryptpad :
- CryptPad - Pad
- CryptCode - Éditeur de code collaboratif
- CryptSlide - Présentation en markdown
- CryptPoll - Sondage

Installation de Cryptpad sur CentOS - pourquoi cette documentation ?

Le site officiel https://cryptpad.fr/ ne détaille pas assez l'installation et j'ai un peu galéré à avoir un système fonctionnel et plus abouti que de simplement suivre ce qui est indiqué sur la page de documentation par défaut qui permet de cloner le dépôt Git, de lancer l'application sur un port exotique depuis la ligne de commande...

Voir https://github.com/xwiki-labs/cryptpad/wiki/Installation-guide

Exemple de souci rencontré

On a donc des dossiers qui créés par défaut depuis l'endroit où on lance le server Cryptpad... La preuve :

[root@cryptpad tmp]# mkdir /tmp/test
[root@cryptpad tmp]# cd /tmp/test/
[root@cryptpad test]# /usr/bin/node /home/cryptpad/server.js
loading rpc module...

[2017-07-26T08:35:04.802Z] server available http://[::]:3000
Cryptpad is customizable, see customize.dist/readme.md for details
^C
[root@cryptpad test]# ls
blob blobstage datastore pins

Cryptpad vient de créer des dossiers (nécessaires à son fonctionnement) depuis l'endroit où je le lance... Oui je suis en root donc il a les droit, mais quand même...

De plus, je connais mal "Node", lancer un serveur en Javascript, j'ai encore un peu de mal avec ça (je suis de la vielle école), c'est lancé sur un port exotique (3000), directement exposé, sans proxy ou autre.

Pour réussir à trouver une configuration de Nginx qui marche, j'ai du testé les différentes solutions proposées dans des issues Github du projet, car là encore, il n'y a rien dans la documentation.

Le fait que le projet propose la fourniture d'un espace de stockage aux utilisateurs enregistrés contre rémunération (cela semble être le business model) me fait penser que la documentation est volontairement pauvre pour que l'on ait à passer par eux en tant que prestataire...

De même, dans le fichier de configuration l.156 et suivante semble confirmer cette hypothèse (source du fichier

/*
* If you are using CryptPad internally and you want to increase the per-user storage limit,
* change the following value.
*
* Please note: This limit is what makes people subscribe and what pays for CryptPad
* development. Running a public instance that provides a "better deal" than cryptpad.fr
* is effectively using the project against itself.
*/
defaultStorageLimit: 50 * 1024 * 1024,

Mais le plus gênant pour moi - je vous laisse juger - toujours dans ce même fichier :

/*
* By default, CryptPad also contacts our accounts server once a day to check for changes in
* the people who have accounts. This check-in will also send the version of your CryptPad
* instance and your email so we can reach you if we are aware of a serious problem. We will
* never sell it or send you marketing mail. If you want to block this check-in and remain
* completely invisible, set this and allowSubscriptions both to false.
*/
adminEmail: 'i.did.not.read.my.config@cryptpad.fr',

J'aime beaucoup l'humour (i.did.not.read.my.config = je ne lis pas mon fichier de configuration : moi, je le lis...) mais est-ce normal que le logiciel que j'installe contacte l'éditeur. Et ce n'est pas indiqué ailleurs, bien en évidence...

Bref, voici mon tutoriel, plus complet ci-dessous.

Installation de Cryptpad

Je suis parti sur un serveur sur lequel était installé CentOS.

Installation de Cryptpad

# yum install epel-release
# yum install -y nodejs git
//Ajout d'un user cryptpad
# adduser cryptpad
# su cryptpad
// Dans /home/cryptpad on clone le depot github
$ cd /home/cryptpad
$ git clone https://github.com/xwiki-labs/cryptpad
// on deplace le contenu un cran au-dessus
$ cd /home/cryptpad/cryptpad
$ mv * ../
$ mv .* ../
$ cd ..
//Installation de cryptpad via la commande npm
$ npm install
//retour en root
# npm install -g bower
//Retour en utilisateur cryptpad
# su cryptpad
$ bower install --allow-root
$ cd /home/cryptpad/
//Copie du fichier de configuration par defaut
$ cp config.example.js config.js
//Changement des droits
chmod -R 755 /home/cryptpad/
//Il faut créer / copier le dossier customize pour que les pads anonymes soient actifs et sauvegardés
cp -r customize.dist/ customize/

Ouverture du port sur le firewall

Pour activer l'ouverture du port 3000 :

# firewall-cmd --zone=public --add-port=3000/tcp --permanent
success
# firewall-cmd --reload
success
# firewall-cmd --zone=public --list-ports
3000/tcp

Lancement de cryptpad

Depuis la ligne de commande, permet de lancer cryptad pour faire de tests temporaires :

$ node ./server.js

Installation en tant que service (Systemd)

Création d'un fichier /etc/systemd/system/cryptpad.service qui contient :

[Unit]
Description=cryptpad
After=network.target

[Service]
Type=simple
ExecStart=/usr/bin/node /home/cryptpad/server.js
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=cryptpad-app
User=cryptpad
Group=cryptpad
Environment=PATH=/usr/bin:/usr/local/bin
Environment=NODE_ENV=production
WorkingDirectory=/home/cryptpad

[Install]
WantedBy=multi-user.target

Installation de Nginx comme proxy

Comme indiqué dans mes critiques, j'ai passé du temps à tester différents configurations pour finir par trouver celle qui marche

Exemple de fichier de configuration nginx :
https://github.com/xwiki-labs/cryptpad/blob/master/docs/example.nginx.conf

Fichier de configuration nginx qui marche :

[root@cryptpad cryptpad]# cat /etc/nginx/conf.d/cryptpad.conf
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}

upstream wscrypt {
server 127.0.0.1:3000;
}

server {
listen 80;
server_name cryptpad.monserveur.com;
return 301 https://cryptpadpad.monserveur.com$request_uri;
}

server {
listen 443 ssl;

server_name cryptpad.monserveur.com;
ssl_certificate /etc/moncertificat.crt;
ssl_certificate_key /etc/moncertificat.key;
ssl_trusted_certificate /etc/gandi_SSLCA2.pem;
ssl_dhparam /etc/ssl/certs/dhparam.pem;

ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # omit SSLv3 because of POODLE
# ECDHE better than DHE (faster) ECDHE & DHE GCM better than CBC (attacks on AES) Everything better than SHA1 (deprecated)
ssl_ciphers 'ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA';
ssl_prefer_server_ciphers on;

location / {
proxy_pass http://wscrypt;
}

location /cryptpad_websocket {
proxy_pass http://wscrypt/cryptpad_websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}

}

Configuration du firewall

# firewall-cmd --add-service=http
# firewall-cmd --add-service=https
# firewall-cmd --runtime-to-permanent
# firewall-cmd --reload

Pour vérifier :

# firewall-cmd --list-services

Sauvegarde des pads et des utilisateurs

Le dossier contenant toutes les données (pad et comptes utilisateurs) se situe dans le dossier datastore. Le transfert de de dossier permet de migrer d'une instance Cryptpad à une autre. (Il suffit de réinstaller une instance CryptPad et de copier coller le contenu du dossier datastore sauvegardé).

Cryptpad et Yunohost

Pour celles et ceux qui ont une instance Yunohost, et qui seraient intéressées par l'application Cryptpad, celle-ci est packagée et disponible ici : https://github.com/YunoHost-Apps/cryptpad_ynh et il y a un sujet de discussion sur le forum.

Soucis à la mise à jour...

Une nouvelle version est sortie corrigeant une faille de sécurité étant sortie, j'ai donc fait la mise à jour / migration vers la nouvelle version.

Reprend le guide officiel https://github.com/xwiki-labs/cryptpad/wiki/Installation-guide avec des compléments :

Faire une sauvegarde avant

# cp -rv /home/cryptpad /Backup/cryptpad_avant_migration

cd /home/cryptpad
git pull
npm update
bower update

# Manquant dans la documentation
# Sinon, on a toujours les anciens skins/design pour l'interface.
# yes |cp -rv ./customize.dist/ ./customize/

Et surtout IL FAUT PURGER / VIDER LE CACHE DU NAVIGATEUR pour éviter tout conflit / soucis de rafraîchissement.

Reste à faire

Pour moi, il me reste à faire une intégratin de LDAP, l'ajout éventuel d'une base de données pour le stockage des pads, la charge en fonction du nombre d'utilisateurs... vu que le serveur sera utilisé au quotidien par les équipes de l'entreprise où je travaille.

Et comprendre où / comment on a des logs... Car là ça utilise "node".

Tokyo Rider, un DJ qui fait de la synthwave

Dans le présent billet, je voudrais vous faire découvrir la musique de Tokyo Rider. Tokyo Rider est un jeune collègue (22 ans), Russe, en stage dans mon entreprise avec lequel j'ai beaucoup d'affinité sur différents sujets, entre autre une passion pour la culture Japonaise. Tokyo Rider est un DJ qui compose lui même sa musique et la met à disposition sur sa page Soundcloud Soundcloud de Tokyo Rider.

Turn your engine to overdrive. Tonight we're hitting top speed on the streets of midnight Tokyo. Tokyo Rider will take you through neon-lit outrun scenery in a mindblowing synthwave rave. Get ready for the ride !

Rien que les pochettes des différents albums (pour lesquels il a fait appel à différents artistes) me plaisent beaucoup de part leur ambiance.

Niveau sonorité, c'est de la musique électronique. Je ne saurai pas la qualifié exactement (ma période musique électronique où je savais bien différencier Techno, House, Trance et autres genres remonte à la fin des années 90 début des années 2000). En y regardant de plus près, il qualifie lui-même sa musique de Synthwave. La synthwave, ou outrun, est un genre musical ayant émergé au début des années 2010, influencé par la musique et des films des années 1980. (...)Musicalement, la synthwave s'inspire de la new wave et des films, des dessins animés et des émissions de télévision issus des années 1980. Des compositeurs tels que John Carpenter et Tangerine Dream sont fréquemment cités comme influences. Le style est principalement instrumental, et se compose le plus souvent d'éléments sonores issus des années 1980 comme les tambours électroniques et les basses de synthétiseur analogique. Cependant, la synthwave utilise également des éléments modernes, comme les lignes de basses side-chain, issus des genres modernes de musique électronique comme l'electro house Synthwave sur Wikipedia

Ceci explique cela. Cette musique touche à ma fibre nostalgeek... et otaku (avec une influence nippone très présente, avec des chants en Japonais). Le combo gagnant ! D'abord écoutée parce que je connais l'artiste, l'écoute a ensuite laissée place au plaisir personnel... Et plus j'écoute, plus je suis fan de l'artiste. Que je vous invite donc à découvrir à votre tour via : Soundcloud de Tokyo Rider.

Lifehacking – L’application Tasks de Nextcloud

Avec le temps, je continue de faire évoluer mes méthodologies de travail. J'utilise beaucoup l'outil de Notes qui se synchronise avec mon instance Nextcloud personnel et je me retrouve à avoir plein de notes qui deviennent des actions d'une todo-liste. J'ai donc cherché à aller un peu plus loin. Je n'ai pas besoin d'un Kanban, j'en ai un si besoin (via l'application Kanboard). Et il existe un outil du même type qui peut s'intégrer dans Nextcloud. Mais ce n'est pas pratique pour une synchronisation / utilisation depuis un smartphone et j'ai avant tout besoin d'un outil utilisable depuis mon téléphone et également depuis un PC. Je cherchais avant tout une alternative à l'application en ligne Todoist, pour un usage personnel, et moins complexe. Et depuis quelques semaines j'utilise l'application Tasks de Nextcloud.

L'application Tasks

L'application Task s'installe facilement via l'outil d'installation des applications de Nextcloud. Le dépot Githun de l'application https://github.com/nextcloud/tasks permet de suivre l'évolution, les bugs et demande existante, il faudra que je me penche dessus.

Par défaut, Tasks reprend les noms des différents calendriers que l'on a dans la partie Agenda, il est possible d'en ajouter d'autres. Ces catégories permettent alors de classer les différentes tâches. Chaque tâche peut avoir une date de début, une date de fin, une priorité (prioritaire ou non), une zone de description pour compléter le champ titre. On peut ajouter des mots clefs / Tags.

Par rapport à un Kanban, il n'y a que deux états pour les tâches : à faire ou fait. Une tâche étant marquée comme fait est conservée mais devient invisible / masquée par défaut.

Dans les choses sympathiques, il y a du "drag & drop" dans l'interface. Comprendre : on peut déplacer une tâche comme sous-tâche d'une autre. Ce qui s'avère très pratique pour réorganiser des tâches déjà créées / existantes.

Synchronisation sur le téléphone

Il faut installer Davdroid et l'application OpenTasks (applications libres disponibles via F-Droid). Les tâches sont alors synchronisées entre l'application Tasks dans Nextcloud et l'applicatif OpenTasks, dans les deux sens. Pratique quand ajoute un élément depuis son smartphone.

Ce qu'il manque ? Les limites de l'application Tasks

- Ce n'est pas multi-utilisateur, on n'a pas de diagramme de Gant. Et ce n'est pas le but de cette application. Cette application se veut rester simple et efficace.
- C'est indépendant de l'agenda. Même si on a la notion de date, les tâches ne s'ajoutent pas dans l'agenda.
- Pas de possibilité de faire des recherches. Le CRTL+F (fonction de recherche du navigateur) est donc bien utile.

Sauvegarde

Toutes les données se trouvant dans la base de données utilisée par Nextcloud, en faisant un dump de cette base de données régulièrement, je sauvegardes ces tâches. J'ai testé le réimport du dump sur une base de recettes et effectivement, ce dump suffit à restaurer les différentes tâches.

Lifehacking ?

J'utilise donc l'application Tasks depuis plusieurs jours et à l'usage, ça correspond à ce que je souhaitais faire / ce dont j'avais besoin. Si je résume mon organisation, j'utilise donc 3 applications pour mon organisation personnelle :

- Calendrier : pour des événements précis, ponctuels ou récurrents, avec un label rapide et des rappels / alerte
- Notes : prise de notes que je dépile rapidement, que je trie et efface, ajoute dans mes tâches
- Tasks : une sorte de todo avec des sous éléments, des tags.

Je parcours régulièrement ma todo-liste qui est donc dans Tasks. L'avantage est très nettement celui de pouvoir le faire depuis mon smartphone et de pouvoir l'éditer depuis le smartphone, en ayant quelque chose de rapide, simple et un peu plus évolué qu'un fichier texte et moins complexe que
le fichiers Calc que j'ai et conserve, toujours pour mes usages de suivi de mes journées.

UbuCon – Convention Ubuntu Europe

Un petit billet pour relayer le fait que début Septembre, durant 3 jours, ce sera l'UbuCon Paris - Convention Ubuntu Europe.

Ca se déroule les 8, 9 et 10 septembre 2017 (du vendredi au dimanche), à la Cité des sciences et de l'industrie, Parc de la Villette, PARIS, France

Toutes les informations sont sur le site https://ubucon.paris/.

Un événement grand public, professionnel et communautaire lors duquel sont attendus 10 000 visiteurs.

Organisé par la communauté, cet événement accueillera les professionnels, les institutions, les contributeurs Ubuntu européens, et plus largement toute la communauté du Libre et le grand public.

Une programmation riche et variée de conférences, tables rondes, ateliers et démonstrations. Un parcours théâtralisé sous forme de 6 univers présentant les usages numériques de demain.

Je serai très probablement sur place au moins le week-end. A voir selon le programme... quand il sera publié.

C’est compliqué de danah boyd

Présentation de l'éditeur

C'est compliqué Les vies numériques des adolescents de danah boyd

Pouvez-vous parler à ma mère ? Lui dire que je ne fais rien de mal sur internet ?

Pour répondre aux angoisses des adultes devant les médias sociaux, danah boyd est partie à la rencontre des adolescents. Loin du sensationnel médiatique, les paroles recueillies expriment le désir farouche des jeunes d'accéder à une vie sociale dans des espaces publics. En confrontant les théories sociologiques et les pratiques des adolescents, danah boyd nous offre une contribution majeure autant qu'un véritable message d'espoir et de confiance dans la jeunesse.

« C'est compliqué », statut sentimental favori des adolescents sur Facebook, sert ici de métaphore espiègle pour nous inciter à prendre en compte tous les aspects de leurs vies numériques.

danah boyd est fondatrice et présidente de l'institut de recherche Data & Society, sociologue chez Microsoft Research et professeure associée de la New York University. Son travail explore la question des inégalités en relation avec l'extension des technologies numériques dans la société. On trouvera ses articles et interventions sur son site personnel : http://danah.org

Site de l'éditeur http://cfeditions.com/boyd/

La critique de Genma

Donnant régulièrement des conférences sur l'hygiène numérique, j'ai été confronté à des questions de parents d'adolescents me demandant comment ils pouvaient gérer le rapport à l'identité numérique, aux réseaux sociaux, au harcèlement en ligne et autres sujets sur lesquels je suis incapable de me prononcer. Je suis né bien avant Internet et j'ai commencé à aller sur Internet, j'étais déjà majeur / étudiant. Les générations actuelles sont quasiment nées avec un smarpthone dans les mains. Comme je ne connais pas ces problématique (je ne suis quasiment jamais en contact avec des adolescents, même via mes activités associatives), mais souhaitant toutefois apporter des premiers éléments de réponses et pouvoir renvoyer vers des personnes plus à même de répondre et d'aider ces parents, je me suis procuré le livre C'est compliqué de danah boyd, que j'ai pris le temps de lire pendant mes congés.

Le livre a été publié dans sa version originale en 2014, traduit en 2017 pour sa version française. Trois à l'ère d'Internet, c'est long... Surtout que dana boyd a commencé son long travail bien avant, du temps de MySpace (qui se souvient encore de MySpace ?). De plus ce livre aborde la société américaine et beaucoup des éléments sont très liés à cette société. Toutefois, un certain nombre de points abordés peuvent être transposés, je pense, à la vie quotidienne des adolescents français d'aujourd'hui.

Ce livre aborde donc les thèmes suivants : identité, vie privée, addiction, danger, harcèlement, inégalités, soit tout ce que l'on est droit d'attendre d'un livre qui parle de la relation qu'ont les adolescents au numérique. C'est donc assez complet et exhaustif.

Dans les reproches que je ferai, il y a le fait que le livre a été écrit sur plusieurs années et ça se ressent. En effet, on a un certain nombres de redites et de répétition, on a l'impression que différentes interviews sont mentionnées plusieurs fois. Parfois, différentes interviews avec des adolescents différents amènent aux mêmes conclusions et on a donc des redites... C'est un peu dommage. Mais une chose qu'on ne pourra pas enlever au livre, c'est le très grand travail qui a été réalisé. Les nombreuses notes de bas de pages et les renvois vers d'autres publications de chercheurs américains sont là pour en témoigner. Ce livre n'est donc pas un guide de bonnes pratiques attention mais plus une étude sociologique de type universitaire. Et est également un témoignage historique, une trace de ce qu'est Internet durant les années 2010, pour une certaine partie de la population et pourra donc être utilisé pour une étude sur la mutation et l'évolution de ce réseau, d'une certaine façon.

Est-ce que ce je conseille ce livre, et si oui à qui ? Comme j'ai essayé de l'expliquer, ce livre n'est pas un guide. J'aurai plus tendance à aiguiller des parents vers le Guide de survie des aventuriers d'Internet édité par Le Cecil - Centre d'Études sur la Citoyenneté, l'Informatisation et les Libertés. Le livre C'est compliqué de danah boyd sera à réserver à des personnes qui font des études de type sociologique.

Bilan de mes vacances d’été

Le mois de juillet a été assez calme sur le blog avec peu de publications et en août, ça l'a été encore plus jusqu'au présent article. Pourquoi ? Durant le mois de Juillet j'ai été très pris professionnellement en semaine et le week-end, j'avais besoin de faire autre chose, j'avais d'autres occupations et je n'avais pas le temps – ni l'envie - de me mettre devant un ordinateur pour rédiger des billets de blog.

Il y un an vs Août 2017 Il y a un an, en août 2016, mes 3 semaines de vacances se concluaient par la rédaction d'un état des lieux et un bilan sur moi-même Redéfinir mes priorités. Cette année, c'est le présent billet qui sera cet état des lieux. Car un an après, je souhaite refaire le même bilan, pour moi-même avant tout, parce que j'ai envie de le rédiger et de garder une trace de tout ça. Mais parce que c'est également l'occasion de vous donner des nouvelles, à vous lecteurs, après ce long silence.

Vacances ?

Durant les trois premières semaines d'août, j'ai eu des jours de congés, mais je ne qualifierai pas cette période de vacances à proprement dite. Tout simplement parce que je ne suis pas parti. Non pas pour des raisons financières, ma situation de privilégié fait que je peux le permettre sans soucis, tout simplement parce que Ryo-Oki n'avait pas de congés durant cette période. Comme l'année dernière, j'ai donc passé les trois semaines chez moi, seul en journée ; des journées qui ont toutefois été bien occupées. Ryo-Oki travaillant, elle se levait en semaine, donc point de grasse matinée. Levé peut de temps après elle, pour commencer mes journées dès 8h et les finir à son retour vers 19h, m'octroyant une heure de pause le midi pour déjeuner tranquillement. Et le reste du temps ? J'ai appliqué la même méthode que l'année dernière et qui avait fait ses preuves, voir à ce sujet mon billet Lifehacking et vacances.

J'avais établi une todo-liste de choses à faire, je me suis débarrassé la 1ère semaine des choses les plus longues. Et par conséquence, la première semaine n'a pas été de tout repos. Comme j'aime bien débuter les vacances en ayant fait les tâches ménagères, vu que je vais passer du temps enfermé chez moi, autant que la maison soit propre. Grand ménage à fond, des petits travaux de bricolage par ci par là, entretien du jardin, différents travaux de peintures et de rafraichissements qui étaient prévus depuis un moment, la semaine est vite passée. Un week-end passé chez un ami, à Nantes, pour couper et souffler un peu. Et j'ai alors pu débuter une seconde et une troisième semaine un peu plus productive, toujours au même rythme.

Ce blog

J'ai donc profité de la seconde et troisième semaine de vacances pour écrire pas mal de billets d'avance, sur différents sujets, ce qui devrait me permettre d'assurer un rythme de publication régulier dès la rentrée durant les premières semaines, le temps d'en réécrire d'autres. Il y aura un certain nombre de billets techniques et de tutoriaux. J'ai encore beaucoup de choses que je veux apprendre (et donc partager par la suite) et il y en aura d'autres. J'ai profité des mes deux semaines de vacances fasse à un ordinateur prou faire quelques petits projets personnels que j'avais prévu, en peaufiner d'autres... #Teaser. Je commencerai à publier ça au fur et à mesure ces prochaines semaines et il y a des beaux tutoriaux dont je suis assez content.

Détox digitale

Chaque année, on a comme marronnier pour l'été le fait de profiter des congés d'été pour se déconnecter, pour se débrancher, s'éloigner de son smartphone... Parfois même on utilise le terme de détox. Personnellement, il est loin le temps où j'étais cyberdépendant, avec un besoin compulsif de regarder mes fils RSS dès le matin pour être sûr de ne rien rater car je voulais tout lire. J'avais pris le temps de comprendre que je ne pouvais pas tout suivre, pas tout lire, et qu'il fallait que je choisisse, que je ne pouvais pas suivre tous les projets. Là encore, je renvoie vers mon billet Redéfinir mes priorités.

J'avais constaté sur juillet une volonté et un besoin de me déconnecter le week-end, de faire autre chose. J'ai donc profité que ce soit plus calme sur l'agrégateur RSS et les réseaux sociaux (un certain nombre de personnes sont en vacances et publient donc moins) pour prendre un peu du recul. Comme je l'ai dit plus haut, j'ai fait une première semaine où j'ai fait autre chose, j'avais besoin de souffler de me changer les idées. Et ça a continué les deux semaines suivantes.

Prise de recul mais pas de coupure, car comme je l'ai une fois de plus constaté, Internet fait bel et bien partie de ma vie de tous les jours. Je ne regarde quasiment pas la télévision (qui est avant tout un écran pour diffuser des choses que je choisis de voir), je n'écoute pas la radio. Je m'informe et suit l'actualité – qui m'intéresse - essentiellement via Internet. J'ai passé pas mal de temps à rattraper et dépiler mes fils RSS, surtout pour faire ma veille, suivre et apprendre quelques tutoriaux, enrichir mon wiki personnel en y prenant des notes. Pour mes comptes de réseaux sociaux et mes mails, j'ai lu et consulté tous les jours, sans répondre, par volonté de rester déconnecté, de m'éloigner un peu et d'avoir des vacances. Et ce même si cela paraît contradictoire (le fait de vouloir s'éloigner tout en étant présent). J'ai eu des sollicitations, des demandes, mais je n'ai pas répondu et quasiment pas interagi. J'avais besoin de souffler.

Le premier semestre a été un temps d'adaptation et de prise de rythme avec le changement important qu'il y a eu dans ma vie (mon nouvel emploi et ma montée en responsabilité au sein de l'entreprise). La fatigue s'est accumulée, cachée par le stress positif tout au long des premiers mois. Et arriver aux vacances, j'ai eu besoin de faire des siestes et de réduire le rythme, de prendre un peu de temps pour moi, pour lire par exemple, ou aller me balader un peu. Le tout étant bien évidemment des tâches incluses dans Lifehacking quotidien.

Mes vacances peuvent donc se résumer à de la prise de temps pour moi, pour faire des choses que je voulais faire, pour avancer des projets que j'avais. Et ça c'est une bonne chose. En parlant de projets,

Mes projets pour cette fin d'année ?

Avec la rentrée, j'ai différents projets de conférences au cours des prochains mois :
Octobre - Le Festival Numok 2017 Comme lors de deux précédentes années et pour la 3ème année, je participerai à Numok, le festival numérique des bibliothèques et médiathèques de la ville de Paris. Je serai dans de nouveaux lieux, je ferai un billet dédié le moment venu avec toutes les informe nécessaires (lieu, sujet, horaire etc.). Ça se passe la 2ème moitié d'Octobre, à Paris, en fin de journée en semaine et le samedi après-midi. Mes différents billets des années précédentes montrent que j'attache une importance particulière à ce festival qui me permet d'aller à la rencontre du grand public, non informaticien, pour partager mes connaissances sur l'hygiène numérique, parler des projets Framasoft et de la Degooglisation… Cette année, moins de conférence que les années d'avant (il y a des semaines où j'en donnais 3 pour arriver à un total de 7). Un peu moins de temps pour préparer ça, j'ai un rythme de travail différent…

Octobre - Conférence sur les mangas Également prévu sur Massy dans une médiathèque début novembre (le 10) à 19h, dans le cadre d'une animation dédiée au Japon, je referai ma conférence d'initiation et de présentation des Mangas, pour partager une passion que j'ai mise un peu de côté (je ne lis plus de publication récente depuis une dizaine d'années, mais j'aime toujours les classiques dont je parle d'ailleurs dans ma conférence). Ça change de sujet, ça me plaît et c'est ce dont j'ai envie.

Novembre - Capitole du libre J'ai soumis un sujet de conférence pour le Capitole du libre qui se tiendra les 18 & 19 novembre à ENSEEIHT de Toulouse. Le titre : "Du pseudonymat au pseudonyme..." Pendant près de 15 ans, depuis mes débuts sur Internet, j'ai toujours fait de la gestion de mon identité numérique, séparant mon identité civile, Jérôme, de mon identité numérique, Genma, sous laquelle je tiens un blog. Ce pseudonymat a été maintenu malgré une activité publique plus importante au travers de différentes participations à des événements et des conférences, même si l'étanchéité entre ces deux identités était assez poreuse... Avec mon nouvel emploi, le choix d'outer ce pseudonymat et de passer au pseudonyme a été fait ? Pourquoi ? Dans quel but ? Quelles conséquences sur ma vie professionnelle, le fait que mon employeur sache que je suis Genma ? Le tout sur fond de retour d'expérience avec des réponses à des questions tells que quels sont les pièges rencontrés et à éviter dans le cadre du pseudonymat ? Ou encore en quoi le pseudonymat est-il différent de l'anonymat et du pseudonyme ? Il faudra que je prépare ça, j'ai déjà pas mal d'idées et de notes (il faudrait presque que je fasse du mindmapping pour organiser tout ça). Je suis assez enthousiaste à l'idée de faire ces conférences.

Tipee

Mon blog a un Tipee https://www.tipeee.com/genma, le plafond qui me permet de manger mon plat japonais préféré rue St Anne à Paris a été atteint. J'aimerai aller un peu plus loin, il faudrait / faudra donc que je m'investisse un peu plus en débutant une communication régulière sur Tipee, en prévoyant des projets ou autre. Il va falloir que je prépare tout ça.

Conclusion

Ce blog et moi avons donc connue une longue période d'absence, mais c'est pour mieux revenir et être plus régulier ces prochaines semaines et prochains mois. L'air de rien, on a fêté les 13 ans du blog en Juin dernier, et cette longévité est liée au fait que ce blog a toujours et est toujours un plaisir personnel, et non une contrainte. Si je veux faire une pause, si je n'ai pas l'envie d'écrire ou si je n'ai rien à dire, alors il ne se passe rien. Certain d'entre vous y verront peut être un signe de la quarantaine qui approche (je fêterai mes 38 ans d'ici quelques semaines)… #Teaser ? #Teaser !

Philosophie de vie

Dans ce billet, je voudrais expliquer une des philosophies qui dirige ma vie. Cette philosophie (je ne sais pas comment le dire autrement, je ne suis pas assez littéraire pour ça), c'est le principe suivant :

Savoir ce que tu veux, te donner les moyens de l'obtenir, ne rien regretter. Telle est ma philosophie de vie.

Savoir ce que tu veux. Il faut se définir ce que l'on souhaite, un objectif à atteindre. Un objectif peut être quelque chose de simple ou au contraire quelque chose de complexe.

Se donner les moyens de l'obtenir Pour atteindre l'objectif que l'on s'est fixé, il faudra faire des choix, des concessions, des sacrifices. Le temps que l'on consacrera à ce projet, à ces objectifs, c'est autant de temps qu'on ne passera à faire autre chose. Une façon de se donner les moyens de l'obtenir, c'est de pratiquer le lifehacking par exemple, pour gérer au mieux son temps, les tâches à faire etc.

Ne rien regretter. C'est là la partie la plus dure. Comme on aura fait des choix, des sacrifices, des concessions, on peut être tenter de regretter. De regretter ce que l'on n'a pas fait, ses choix, de se dire "et si..."

D'autant plus que si au final on a raté l'objectif que l'on s'était défini en ayant défini ce que l'on voulait. On pourra ne pas l'avoir atteint pour des raisons indépendantes de nous ou au contraire parce qu'au final, on n'aura pas fait tout ce qu'il fallait, parce que les choix ou sacrifices étaient trop importants. Nombreuses sont les causes qui peuvent mener à l'abandon ou l'échec du but que l'on s'était fixé. Il faudra alors prendre sur soi, et ne pas regretter. Il ne faudra pas ruminer son échec, considérer que l'on aura perdu du temps ou aurait dû faire autrement. Il ne faut pas regretter. Car le temps que l'on aura passé pour ce projet, c'est qu'on voulait le faire. C'est ce que l'on avait choisit.

Ce qu'il faut aussi voir et comprendre, c'est que l'on peut avoir plusieurs objectifs en paralèlle, de plus ou moins longue durée.

Des exemples concrets ?

Je veux procrastiner. Ce que je veux : procrastiner. Ce que je fais : rien. Ne rien regretter : oui c'est du temps où j'aurai pu faire avancer tous ces projets qui n'avance pas, mais j'ai fait le choix de ne rien faire. Je ne dois pas regretter. J'ai choisi de ne rien faire.

J'apprends une nouvelle langue. Je vais passer du temps, du temps que je ne consacrerai pas à autre chose. Les jours, semaines, mois, années passent. Et je n'ai pas pu avancer sur d'autres projets. Et au final, je me rends compte que savoir cette langue ne me sert à rien, ou que, comme j'ai fini par abandonner, j'aurai peut-être dû faire autre chose. Non. Si j'ai passé du temps à apprendre cette langue, c'est que c'était un choix, j'ai fait ce que je voulais.

Conclusions

La vie est un peu plus complexe et ne peut pas de résumer / se cantonner à une phrase, cette philosophie n'intègre pas la notion de plaisir (il est important que l'objectif que l'on se fixe soit quelque chose qui nous fasse plaisir et limite les contraintes par exemple). Mais c'est là une bonne base que j'utilise depuis plus d'une quinzaine d'années et cela marche relativement bien. Et du coup, je la soumets à votre vision et jugement, via ce billet de blog.

Émission Blockbuster sur France Inter

Du lundi au vendredi à 11h, sur France Inter, par Frederick Sigrist Une plongée dans ces hits du cinéma / de la littérature, ces albums de légende, ces séries inoubliables…

Un Blockbuster est une œuvre qui a eu un succès mondial. A chaque émission son thème et on retrouvera des sujets divers et variés de Dallas à Harry Potter, de Zelda à Star Wars en passant par La Fièvre du samedi soir et Grease ou encore Millénium. Ce qui en fait une émission aux sujets divers et hétéroclites, ayant pour point commun d'avoir été un Blockbuster.

L'émission s'articule toujours autour d'un même format :
- présentation et discussions autour de l'œuvre avec des invités et spécialistes en rapport (ayant généralement écrit un livre sur le sujet ou assez lié).
- Son impact dans la culture populaire
- Petit jeu de type questionnaire autour des chiffres
- Interview et portrait d'un ou une geek sur le domaine
- Blind-test musical
Le tout entrecoupé de musique régulièrement (tous les quart d'heure) et rythmée avec des extraits musicaux (ça reste très radiophonique).

Cela dure un peu moins d'une heure et ça passe très vite, c'est une émission de qualité, un très bon divertissement de l'été en cette période où beaucoup de podcast font une pause estivale. Je prends plaisir à redécouvrir des œuvres très connues à travers d'autres regard. A écouter, c'est disponible ici : https://www.franceinter.fr/emissions/blockbuster.