Maîtriser ce qu’on peut : créer son cloud perso

Bonjour. Vous êtes ici sur mon blog. Ca n’a l’air de rien, mais écrire cette phrase et ce « mon » en italique et en gras est pour moi possible pour la première fois depuis près de trois ans. Depuis que j’ai cédé les rênes de Numerama, je n’avais plus jamais été chez moi pour écrire quelque chose publiquement. Quand j’avais quelque chose à dire, je le disais toujours chez les autres : assez rarement sur Facebook (et plus du tout depuis plusieurs mois), beaucoup trop souvent sur Twitter, et très occasionnellement sur Medium. Je dépendais donc pour m’exprimer de ceux qui voulaient bien me laisser parler en échange de quelques publicités et d’une politique de modération qui me pose de plus en plus questions (je reviendrai sur ce sujet précis, ça sera sûrement l’objet de mon prochain billet).

Je vais donc me remettre à écrire chez moi. Peut-être beaucoup, peut-être extrêmement peu. Aujourd’hui je n’en sais rien du tout. Après avoir passé plus de quinze ans à écrire énormément (parfois jusqu’à une douzaine d’articles chaque jour), je m’attendais à ressentir un grand manque quand j’ai signé mon dernier article, et à replonger très vite dans l’écriture quotidienne ou au moins hebdomadaire. Or en réalité, je me suis très vite senti comme incapable de réécrire une ligne et, plus surprenant à mes yeux, je n’en ressentais aucun besoin. C’est sans aucun doute que mon travail passionnant et très prenant pour Qwant me comble, mais aussi le signe que déjà les derniers temps, j’écrivais moins par goût que par nécessité. Il me fallait réapprendre à avoir envie, et je n’ai pas forcé les choses.

Bref, j’ai donc profité des vacances pour réapprendre quelques bases de code HTML/CSS et refaire mon petit site perso. On fait difficilement plus basique et on fait sûrement plus propre mais au moins c’est moi qui l’ai fait avec mes petits doigts, en écrivant chaque ligne — et je ne voyais pas l’intérêt de faire plus complexe vu le contenu. Mais surtout, j’en ai profité pour pousser plus loin ma quête d’indépendance cloudienne, et c’est tout l’objet de ce premier billet.

Héberger mes propres services cloud

Jusqu’à présent, le nom de domaine Champeau.info que j’ai depuis 2003 me servait exclusivement à héberger mes mails persos et une page d’accueil. Or j’ai toujours été attiré par l’idée d’administrer moi-même au maximum mes propres services « cloud », d’abord pour préserver ma vie privée en ne confiant pas mes données à qui cherche à les exploiter, ensuite pour avoir la satisfaction de maîtriser mes outils. Rien de plus frustrant qu’un service web qu’on aime qui ferme ses portes (oui je pense à toi Google Reader), ou que des mises à jour qui changent tout ce qu’on aime dans un produit hébergé par d’autres. Néanmoins parce que je ne prenais pas le temps, et parce que je surestimais l’apprentissage nécessaire, je n’avais encore jamais franchi le pas.

Aujourd’hui, j’ai sur mon serveur perso attaché à mon nom de domaine :

  • Mes propres mails qu’aucun individu ni aucune machine ne lit (à part l’antispam) ;
  • Mon propre service de revue de presse qui ne dépend d’aucun algorithme créé par d’autres et qui me permet de lire sans que personne sache ce que je lis ;
  • Mon propre service d’hébergement de photos, vidéos, et autres documents que je peux synchroniser depuis mon smartphone ou mon PC ;
  • Mon propre carnet d’adresses synchronisé avec mon portable ;
  • Mon propre agenda ;
  • Mon propre blog ;
  • Mon propre site.

Le tout pour un peu moins de 8 euros par mois, sans avoir recherché le moins cher.

C’est donc ici le message que je voudrais passer : si vous le voulez, vous aussi vous pouvez le faire, c’est pas si compliqué !

Comment avoir son propre hébergement cloud

Tout d’abord sachez qu’il n’y a pas besoin de s’y connaître beaucoup en informatique. C’est finalement beaucoup plus simple que ça en a l’air, et je vais modestement tenter d’expliquer comment j’ai fait moi, tout en ayant conscience que ça n’est certainement pas le meilleur des guides. Ce que je vais écrire va sûrement faire hurler plus d’un puriste et ils auront bien raison.

C’est parti.

La première chose à faire est d’acheter votre nom de domaine et de louer l’hébergement qui va bien avec. Personnellement j’ai tout pris chez Gandi, d’abord parce que c’est une boîte dont j’ai toujours aimé l’état d’esprit et en qui j’ai toute confiance, et ensuite parce que ça me rassurait d’avoir la gestion de mon nom de domaine et de l’hébergement sur une même interface qui m’était familière (techniquement, vous pouvez très bien avoir votre domaine quelque part et le faire pointer vers un hébergement autre part ; c’est même sûrement conseillé pour qui veut faire des économies). Vous pourriez donc faire pareil chez OVH qui a des prix plus compétitifs, et chez plein d’autres prestataires. Mais puisque j’ai fais avec Gandi, je vais vous montrer avec Gandi. Si quelqu’un se sent de faire le même guide chez OVH, je serai le premier lecteur !

#1 – Réserver un nom de domaine

Il faut bien sûr d’abord trouver le nom que vous voudrez pour votre site perso, qui sera aussi le domaine de votre adresse e-mail. Puisque je possédais déjà depuis très longtemps mon domaine Champeau.info, je n’ai pas eu à faire cette étape quand je me suis lancé dans mon cloud perso. Mais pour tout refaire ici ensemble, j’ai décidé de tout refaire de A à Z avec un nouveau nom de domaine.

Pour choisir votre nom de domaine à vous, saisissez juste le nom qui vous intéresse, sans extension. Gandi vous listera toutes les extensions disponibles avec le prix correspondant. Ici vu que c’est juste pour les besoins de ce guide, je vais au moins cher : 60 centimes pour un magnifique moncloudperso.pw (pour la petite histoire l’extension .pw est celle de la République des Palaos en Océanie).

Première chose à faire : trouver votre nom de domaine

Au moment de choisir, faites attention au prix barré. C’est à peu près le prix que vous devrez payer chaque année pour conserver votre nom de domaine et donc votre adresse e-mail. Il ne sert à rien de se précipiter sur une promotion alléchante si vous devrez payer beaucoup plus cher l’année suivante et les années d’après. Pensez au long terme.

#2 – Créer une instance Simple Hosting

Avant de payer votre nom de domaine, ajoutez d’ores et déjà à votre panier un hébergement de type Simple Hosting. C’est le nom donné par Gandi à l’hébergement mutualisé, c’est-à-dire à une machine virtuelle qui est configurée pour vous et pour vous donner l’illusion d’avoir votre propre serveur, mais qui réside en réalité sur un serveur partagé par une multitude de clients différents. Cette machine virtuelle s’appelle une « instance » et n’offre qu’une liberté réduite, mais qui répond à la plupart des besoins.

C’est là que les premières complications commencent, qui peuvent faire renoncer ceux qui n’y connaissent rien ou pas grand chose. N’ayez crainte.

Il vous est en effet demandé de choisir votre configuration avec le langage de programmation que vous utiliserez sur votre serveur, et le type de base de données à utiliser. La première fois, j’ai d’abord choisi une instance Python parce que j’avais envie d’apprendre ce langage, et je me disais que je pourrais toujours installer PHP à côté. Erreur de débutant. Sur une offre d’hébergement Simple Hosting, c’est l’un ou l’autre, pas les deux. Je me suis donc finalement rabattu sur une configuration PHP. Et pour la base de données, j’ai pris MySQL parce que c’est ce que je connais depuis toujours (PostgreSQL est réputé plus performant et pris en compte par la plupart des applis).

La commande d’un espace d’hébergement Simple Hosting sur Gandi

Pour le type de serveur, je conseille très (très) fortement de prendre une formule avec SSL, c’est-à-dire avec un certificat qui assurera que les communications entre votre navigateur web et votre serveur seront chiffrées. Ce n’est pas absolument nécessaire si vous voulez juste héberger votre blog ou votre petit site perso, mais c’est une mesure de sécurité indispensable quand vous voulez héberger des données persos. Sans ça, quelqu’un qui intercepterait vos communications (sur un réseau Wi-Fi ouvert par exemple) pourrait copier le contenu des documents que vous envoyez ou consultez. Nous y reviendrons.

Le choix de la taille dépend ensuite de vos besoins. De mon côté 20 Go me suffisent pour l’instant mais là on constate un différentiel énorme et à mes yeux inexplicable avec OVH dont l’offre Hébergement Pro à prix équivalent comprend… 250 Go de stockage ! Si vous pensez que vous avez besoin de stockage je déconseille fortement Gandi dont les prix au giga-octets supplémentaire sont carrément prohibitifs (pour du 250 Go chez Gandi on est à plus de 45 euros par mois… hors taxes).

Bref, une fois votre taille d’instance choisie, vous devez lui donner un nom. Ce sera essentiellement pour la reconnaître dans votre espace d’administration Gandi si vous en avez plusieurs. J’ai mis moncloudperso-PHP-MySQL. Et pour le mot de passe, faites attention à suivre des règles de bon sens. C’est ce mot de passe qui vous servira à vous connecter sur le serveur donc à accéder à tous les documents personnels que vous y mettrez.

Une fois que tout ça est fait, il ne vous reste plus qu’à valider la commande et à payer.

#3 – Créer votre adresse e-mail

Avant de commencer à installer des choses sur notre serveur, on va d’abord configurer une première adresse e-mail. Ne plus utiliser Gmail, La Poste ou Yahoo, c’est quand même le premier vrai plaisir d’un nom de domaine à soi. Pour ce faire, c’est très simple.

Dans votre tableau de bord Gandi, rendez-vous dans la rubrique « Domaines » et cliquez sur votre nom de domaine. Puis dans le menu à gauche, cliquez sur « Boîtes et redirections Mail ».

La création d’adresses e-mail persos chez Gandi

Cliquez sur « Créer » dans le bloc Gandi Mail pour créer votre boîte. (là aussi c’est fortement à l’avantage d’OVH en terme de prix puisque Gandi propose uniquement deux boîtes mail de 3 Go avec chaque nom de domaine, alors qu’OVH Hébergement Pro intègre… 100 boîtes… de 5 Go).

Donnez lui le nom que vous voudrez, ce sera votre adresse e-mail principale. Ici, guillaume@moncloudperso.pw. Je pourrais aussi créer des alias, c’est-à-dire des adresses e-mail supplémentaires qui pointent vers guillaume@moncloudperso.pw, mais allons à l’essentiel (notez juste que c’est bien pratique pour créer des adresses poubelle à usage unique).

A partir de là, vous pourrez configurer votre adresse e-mail dans votre logiciel habituel (Outlook, Thunderbird,…) et sur votre smartphone, ou utiliser le webmail de Gandi. En faisant ce petit guide j’ai découvert que désormais ils préconisaient SoGo alors que ça a longtemps été Roundcube, plus moche et pénible sur mobile, mais plus rapide. Les deux restent accessibles, ici et .

Vos mails dans l’interface SoGo de Gandi

Avec ça vous pouvez envoyer des mails et les lire sans que Google sache à qui vous écrivez et ce que vous écrivez. Et rien que pour ça…

Freedom #2, par Vic (CC BY 2.0)

#4 – Lier votre hébergement à votre nom de domaine

On va maintenant s’attaquer aux choses sérieuses. Dans un premier temps il va falloir lier votre nom de domaine à votre instance Simple Hosting. Heureusement Gandi fait ça presque automatiquement. Dans votre tableau de bord Gandi, cliquez sur le menu Simple Hosting, puis sur le nom de votre instance et enfin sur le menu « Sites ». Là, créez votre premier site en lui donnant le nom qui sera l’adresse que vous saisirez dans votre navigateur pour y accéder :

Il faut bien comprendre qu’un nom de domaine est une sorte de raccourci qui pointe vers un serveur (dans notre cas, un serveur Simple Hosting). Tant qu’il ne sait pas vers quel serveur pointer, le nom de domaine ne sert pas à grand chose. C’est là toute l’utilité des enregistrements DNS. En principe il faudrait éditer des fichiers de zones DNS des plus complexes, mais Gandi se charge de tout si vous cliquez sur « Mettre à jour les entrées DNS » (au besoin en forçant la mise à jour après un prétendu conflit).

Dorénavant (mais ça peut prendre jusqu’à quelques heures), vous aurez accès à votre site en le visitant depuis votre navigateur. Pour l’instant, c’est juste une page HTML standard de Gandi qui dit que ça fonctionne :

#5 – Modifier votre site

A partir de maintenant, vous pouvez modifier le contenu de votre hébergement pour en prendre réellement possession et y faire ce que vous voulez. Les deux principaux outils dont vous aurez besoin pour ce faire sont :

  • Un logiciel pour accéder à distance au disque dur de votre serveur (ce qu’on appelle un client FTP). J’utilise Filezilla.
  • Un logiciel pour éditer quelques fichiers de texte. J’utilise SublimeText, mais un simple Bloc-notes (sous Windows) ou TextEdit (sous Mac) suffit.

Commençons par accéder au disque du serveur avec le client FTP. Il vous faut connaître le nom d’utilisateur — qui chez Gandi est un nombre — et l’adresse du serveur FTP (ou plus exactement SFTP), qui sont indiqués dans la page de configuration de votre site. En l’espèce dans mon exemple, Gandi m’a attribué le nom d’utilisateur 699507, et le serveur sur lequel je dois me connecter est sftp.sd6.gpaas.net.

Dans FileZilla, il suffit de saisir l’adresse du serveur comme « nom d’hôte », le nom d’utilisateur en identifiant, le mot de passe que vous aviez choisi au moment de la création de l’instance, et le port 22.

Une fois connecté, vous trouverez le contenu de votre site dans le dossier /lamp0/web/vhosts/www.moncloudperso.pw/htdocs (à adapter bien sûr selon votre domaine). Sur une instance PHP, chaque site que vous hébergez a son propre espace, créé par Gandi dans le dossier « vhosts ». Le contenu est toujours à mettre dans le sous-dossier htdocs.

Pour l’instant vous y trouverez juste un fichier index.html, qui est le fichier chargé par défaut à l’ouverture du site. Si vous le téléchargez et l’éditez avec votre éditeur de texte, vous y trouverez le code HTML correspondant à la page vue plus haut :

Libre à vous de le modifier comme vous le souhaitez et de créer progressivement votre propre site (pour ça je vous renvoie aux nombreux cours de HTML/CSS disponibles sur Internet). Une fois modifiés, renvoyez les fichiers vers votre serveur, et le site sera mis à jour. Mais à ce stade le plus simple pour beaucoup de monde sera d’installer WordPress, qui est une plateforme de publication de contenu (CMS) basée sur le langage PHP.

#6 – Installer WordPress

WordPress est en effet très facile à prendre en main et dispose de nombreux outils de personnalisation, ce qui en fait l’outil préféré de beaucoup de webmasters (hé oui, j’utilise encore parfois ce terme désuet). Gandi propose un outil pour l’installer en quelques clics depuis l’interface d’administration du site, mais je trouve plus intéressant de mettre les mains dans le cambouis en l’installant nous-mêmes. Ca n’est pas bien compliqué et c’est un bon entraînement pour la suite.

Sachez si vous l’ignoriez que tout ce que vous écrirez sur votre WordPress sera stocké dans votre serveur à l’intérieur d’une base de données. Rappelez-vous que nous avions choisi MySQL au moment de créer notre instance. La première chose à faire avant d’installer WordPress est donc de préparer une base de données MySQL que notre CMS pourra utiliser. Ca se fait grâce à l’outil phpMyAdmin qui est déjà préinstallé sur votre instance. Pour y accéder, rendez-vous dans le volet « Base de données » de l’interface de gestion de votre Simple Hosting et cliquez sur « Aller à phpMyAdmin ». Vous devrez saisir votre nom d’utilisateur (votre identifiant, dans mon cas 699507), et le mot de passe de votre instance.

Vous arrivez alors sur la page d’accueil de phpMyAdmin. Entrez « root » comme nom d’utilisateur. « Root » est l’utilisateur qui dispose de tous les droits de modification sur l’ensemble des bases de données du serveur. Pour le moment il n’a aucun mot de passe. Laissez le mot de passe vide, et cliquez sur « Exécuter ».

Comme vous l’aurez sûrement deviné, il faut commencer par sécuriser MySQL en ajoutant un mot de passe au compte root. Une fois dans phpMyAdmin, cliquez sur « Comptes d’utilisateur » dans les onglets en haut de page, et sur « Editer les privilèges » dans la ligne du compte « root ».

Vous verrez alors un nouveau menu apparaître sous les onglets, dont « Modifier le mot de passe« . Cliquez dessus, et saisissez le mot de passe que vous souhaitez pour votre compte root. A nouveau, suivez les règles de bon sens avec un zèle tout particulier. Quiconque accéderait à votre compte root en découvrant votre mot de passe aurait accès à toutes vos bases de données et pourrait faire ce qu’il veut. Si un jour vous oubliez ce mot de passe, vous pouvez le réinitialiser depuis l’interface de gestion de votre Simple Hosting.

Pour encore plus de sécurité, nous allons désormais créer un nouvel utilisateur qui n’aura les droits d’accès qu’à la base de données de WordPress. Comme ça si jamais votre WordPress se fait pirater, le reste de votre serveur sera à l’abri. C’est une bonne pratique et phpMyAdmin la facilite.

Il suffit en effet de vous rendre à nouveau dans les « comptes utilisateurs », puis de cliquer sur « Ajouter un compte utilisateur ». Là, entrez « wordpress » en nom d’utilisateur, choisissez « local » dans le menu « nom d’hôte », et cliquez sur « générer » pour obtenir un mot de passe sécurisé prêt à l’usage. Copiez-le dans un coin, nous n’en aurons besoin qu’une seule fois. Enfin, cochez la case « Créer une base portant son nom et donner à cet utilisateur tous les privilèges sur cette base« , et sélectionnez les droits sur les « données » et la « structure ». Il n’y a plus qu’à cliquer sur « Exécuter », et votre base de données WordPress est prête.

Maintenant, il faut installer WordPress lui-même. Rendez-vous ici et téléchargez l’archive contenant les fichiers d’installation (ou cliquez directement ici). Dézippez l’archive dans un dossier de votre ordinateur, et lancez votre client FTP pour accéder au contenu de votre serveur. Rendez-vous dans le dossier htdocs de votre vhosts, et glissez-déposez l’ensemble du contenu de l’archive WordPress, pour le copier vers votre serveur.

Il faut désormais dire à WordPress comment se connecter sur la base de données, pour qu’il puisse y stocker tout ce dont il a besoin. Les informations utiles seront recherchées par WordPress dans un fichier appelé wp-config.php. Pour le moment il n’existe pas, mais il y a un modèle appelé wp-config-sample.php. Editez donc ce fichier avec votre éditeur de texte, et insérez-y vos données de connexion à la base MySQL, et notamment le mot de passe du compte utilisateur « wordpress » que nous avons créé plus haut dans phpMyAdmin:

La deuxième partie du fichier de config concerne les différentes clés de hachage qui seront utilisées par WordPress pour chiffrer certaines informations confidentielles liées à l’authentification, avec un salage qui vous est unique. Vous pourriez mettre ce que vous voulez mais le plus simple ici est d’aller sur cette page qui génère un contenu aléatoire, et de copier-coller le tout dans votre fichier à la place de l’existant.

Quand c’est fait, sauvegardez le fichier sous le nom wp-config.php, et envoyez-le vers votre serveur. Allez ensuite sur votre site depuis votre navigateur, et vous devriez voir le service d’installation de WordPress s’afficher.

Ce guide n’a pas vocation à expliquer comment configurer et utiliser WordPress, donc je ne m’étendrai pas sur le sujet, d’autant que tout est déjà expliqué par WordPress au moment de l’installation. A vous de fouiller et de faire ce que vous voulez sur votre site.

Le plus intéressant pour nous ici est de remarquer que la connexion n’est pas sécurisée. Il va donc falloir y remédier.

#7 – Chiffrer avec un certificat SSL

Vous vous souvenez probablement qu’au moment de créer notre instance Gandi Simple Hosting, nous avons choisi une formule avec SSL. Mais ça ne suffit pas à tout chiffrer d’emblée automatiquement. Il faut en effet associer un certificat SSL au site avec lequel nous voulons chiffrer toutes les communications.

Rendez-vous donc dans le menu « Sites » de votre instance Simple Hosting, et cliquez sur « Générer un certificat SSL gratuit ». Vous devrez peut-être attendre quelques minutes que le certificat soit créé.

Une fois que c’est fait, choisissez « HTTPS uniquement » comme stratégie SSL. Ca veut dire qu’il ne sera plus possible de se connecter à votre site sans que les communications soient chiffrées (ce que vous pouvez faire aussi manuellement en modifiant le fichier .htaccess à la racine de votre vhosts pour rediriger tout le trafic HTTP vers du trafic HTTPS)

Et voilà le résultat. Désormais, tout ce que j’installerai dans le site MonCloudPerso.pw sera sécurisé (en tout cas, la connexion le sera). Et vous pouvez bien sûr créer plusieurs sites et les sécuriser tous de la même manière.

Mes docu

#8 – NextCloud : un cloud « auto-hébergé » pour les photos, documents, etc.

(notez les guillemets dans ce sous-titre. Techniquement parlant on ne peut pas vraiment parler d’un « auto-hébergement » quand on utilise une machine virtuelle configurée pour nous par un hébergeur comme OVH ou Gandi. Auto-héberger veut bien dire qu’on est soit-même l’hébergeur et qu’on a donc la main à 100% sur la machine qui abrite les services et les données. C’est un abus de langage de parler d’auto-hébergement, mais je ne sais pas bien quel autre mot utiliser ici)

C’est maintenant que l’auto-hébergement de ses services cloud prend tout son sens. Si vous êtes comme la grande majorité des internautes, vos contacts, photos, fichiers, etc., sont synchronisés avec les serveurs de Google et/ou de Microsoft, qui en profitent pour regarder ce que vous stockez et en déduire des informations à votre sujet, qu’ils pourront exploiter ou indirectement revendre. Mais maintenant que vous avez votre propre serveur dans le cloud, vous pouvez reprendre la main sur tout ça !

Il existe plusieurs solutions open-source. La solution française qui avait ma préférence était Cozy, mais sa méthode d’installation est incompatible avec du Simple Hosting (ceci dit si vous voulez juste vous débarrasser au maximum des GAFA c’est très bien et ils ont une offre gratuite jusqu’à 5 Go, et à seulement 2,99 €/mois pour 50 Go, sans aucune prise de tête pour l’installation).

Je me suis donc rabattu sur Nextcloud, qui est le successeur d’Owncloud et qui a l’avantage d’utiliser PHP et de répondre exactement à mon besoin, voire davantage. Je voulais surtout pouvoir synchroniser mes photos avec un cloud à moi (parce que jusqu’à présent je refusais toute solution cloud tiers à la Google ou autre, et donc si je perdais mon téléphone, je perdais toutes mes photos).

L’installation de Nextcloud est déconcertante de facilité. Téléchargez simplement ce fichier setup-nextcloud.php (bouton droit, enregistrer sous…) et envoyez le sur votre vhosts à l’aide de Filezilla ou d’un autre client FTP. Une fois que c’est fait, ouvrez ce fichier avec votre navigateur (dans mon cas, www.moncloudperso.pw/setup-nextcloud.php), et cliquez sur « Next ».

Choisissez le nom du répertoire d’installation de Nextcloud, qui sera l’adresse de votre service (https://www.moncloudperso.pw/nextcloud), et cliquez à nouveau sur « Next ». Attendez alors quelques minutes que les fichiers d’installation soient téléchargés — visuellement il se passe rien pendant le téléchargement, jusqu’à un message « Success ».

Ensuite, vous devrez choisir votre nom d’utilisateur et votre mot de passe. Comme toujours, choisissez bien votre mot de passe, personne ne doit être capable de le deviner ! Utilisez de préférence un générateur de mot de passe ou suivez la méthode de la CNIL.

En principe Nextcloud peut fonctionner sans serveur de base de données MySQL. Par défaut, il se propose en effet d’utiliser SQLite, qui fonctionne avec des fichiers créés sur le disque. Mais c’est lent. MySQL est bien plus performant (PostgreSQL encore plus si vous l’avez), et donc il est préférable de créer une base de données et un utilisateur pour Nextcloud. Pas besoin de créer par avance la base de données et l’utilisateur, comme on l’a fait pour WordPress (ça fait même planter l’installation). Il suffit de saisir les informations root et l’installateur Nextcloud se charge de créer lui-même un utilisateur et deux bases de données.

Une fois l’installation terminée, vous pouvez vous logger avec vos identifiants, et vous arrivez là dessus :

Considérez ça comme un disque dur virtuel, vers lequel vous pouvez envoyer tous les fichiers que vous voulez. Le mieux est tout de même d’installer les applications Nextcloud pour ordinateur et smartphone qui vous permettront par exemple d’envoyer automatiquement vos photos vers votre Nextcloud.

Comme adresse de serveur au moment de la configuration de votre application, mettez l’adresse où est installée Nextcloud sur votre site. Dans mon cas : https://www.moncloudperso.pw/nextcloud. Puis identifiez-vous pour accéder à votre compte.

Le menu le plus important ici est « Téléversement automatique », qui vous permet de choisir quels contenus de votre smartphone envoyer automatiquement vers votre serveur Nextcloud. Notez que ça fonctionne uniquement avec les nouveaux contenus ajoutés (par exemple si vous prenez une nouvelle photo). Pour faire une sauvegarde de votre contenu actuel, vous devrez l’envoyer vous-mêmes vers votre Nextcloud en cliquant sur le gros rond bleu en bas à droite. Armez-vous de patience, l’upload est lent et peut vider votre batterie pendant plusieurs jours — je n’ai pas encore fait toutes les optimisations préconisées mais je ne sais pas si c’est lié.

Notez que Nextcloud permet de faire beaucoup d’autres choses en y ajoutant des applications liées à votre cloud perso, mais je vous renverrai vers la documentation de Nextcloud. Par exemple, vous pouvez ajouter votre carnet d’adresses et votre agenda, pour que personne d’autre que vous ne puisse y avoir accès, en profitant d’un serveur CalDav et CardDav (je n’en parle pas parce que chez moi l’import des contacts a buggé et je teste donc une solution plus spécifique mais aussi moins user-friendly : Baikal). A vous d’explorer les possibilités !

#9 FreshRSS : pour reprendre la main sur ses sources d’information

Si vous êtes comme moi, vous avez abandonné pendant longtemps les newsletters et les flux RSS, au profit des réseaux sociaux qui sont remplis de liens vers des actus. Mais à l’usage on se rend compte qu’on ne maîtrise plus vraiment sa revue de presse. Soit qu’on dépende des algorithmes de Facebook qui cachent beaucoup plus de contenus qu’ils n’en montrent, en nous enfermant dans ce que Facebook estime plus engageant pour nous (raison pour laquelle je n’utilise plus du tout Facebook) ; soit qu’on dépende de son niveau d’activité sur Twitter. Et puis il y a une forme de paresse dans laquelle on s’enferme, à ne plus consulter que les actus qui nous tombent tout cru dans le bec, plutôt que de faire sa propre revue de presse.

J’ai donc décidé de revenir aux bonnes vieilles méthodes à l’ancienne, et de réinstaller chez moi mon propre agrégateur de flux RSS (comme ça pas de risque que ça ferme…), qui va aller chercher les dernières actus des sites et des blogs auxquels je m’abonne. A moi ensuite de lire ce qui m’intéresse dans tout ça. Le matin, plutôt que de commencer par ouvrir Twitter, j’ouvre désormais mon lecteur RSS, ce qui au passage est beaucoup plus reposant pour les nerfs.

En terme d’outils, sur un serveur PHP la référence est Tiny-Tiny RSS, mais j’ai suivi les conseils et installé FreshRSS qui est plus léger tout en faisant exactement ce qu’on peut attendre d’un agrégateur RSS moderne.

A ce stade vous devriez savoir l’installer vous-même, mais allons-y pour un dernier pas-à-pas. Téléchargez donc l’archive d’installation, et décompressez-là dans un dossier de votre ordinateur que vous nommerez « FreshRSS ». Envoyez ensuite ce dossier vers votre vhosts avec Filezilla ou un autre client FTP. 

Avec votre navigateur, rendez-vous à l’adresse de votre installation de FreshRSS (chez moi, https://www.moncloudperso.pw/FreshRSS/) et suivez les indications de l’installateur jusqu’à arriver à la configuration de la base de données. Vous l’aurez deviné, nous devons d’abord créer la base de données qui va bien avec phpMyAdmin, comme nous l’avons fait plus haut pour WordPress. Faites donc exactement pareil, mais avec « freshrss » comme nom d’utilisateur, et saisissez les informations dans le configurateur de FreshRSS :

A vous ensuite d’ajouter vos flux RSS et de les organiser comme vous le souhaitez (notez que pour ajouter un flus RSS il suffit de copier-coller l’adresse du site ou du blog que vous voulez suivre, l’adresse du flux est détectée automatiquement).

La dernière chose à faire est d’assurer le rafraîchissement automatique des flux RSS pour que ça soit à peu près à jour quand vous ouvrez l’appli. Pour cela on va utiliser anacron qui permet d’exécuter des tâches côté serveur, à une fréquence régulière. Malheureusement les instances Simple Hosting ne permettent pas d’avoir plus régulièrement qu’une fois par heure, mais c’est toujours mieux que rien.

Pour demander de rafraîchir FreshRSS toutes les heures, il faut modifier le fichier anacrontab dans le dossier /lamp0/etc/cron de votre instance Simple Hosting en y ajoutant cette ligne, à adapter avec votre domaine :

1@hourly 0 php /lamp0/web/vhosts/www.moncloudperso.pw/htdocs/FreshRSS/app/actualize_script.php > /tmp/FreshRSS.log 2>&1

Voilà pour l’essentiel. Il y aurait encore beaucoup de choses à aborder, mais si vous avez tout suivi, vous devriez désormais être capable d’installer d’autres applications sur votre serveur. Et d’ouvrir vous-mêmes votre blog pour partager vos propres conseils !

27 thoughts on “Maîtriser ce qu’on peut : créer son cloud perso”

  1. J’ai installé FreshRSS mais il ne rafraîchit pas les articles sur tous les flux « Aucun flux à actualiser », je suis obligé de le faire sur chaque flux pas vraiment pratique, s’il y a une astuce je suis preneur.

  2. Bonjour,

    Article très intéressant ! Pour ma part, j’utilise l’application RSS de Nextcloud qui est elle aussi assez « light » et peut être synchronisée avec avec des applis Android tel que OCReader. Ca évite d’avoir 2 applications web à gérer (Nextcloud et FreshRSS).

    Bonne continuation,

  3. Super article, bravo.
    J’ajouterai le lien vers les « apps » de Nextcloud, pour mieux se rendre compte de tout ce qu’il peut gérer 😉
    https://apps.nextcloud.com/apps/
    En revanche, j’ai aussi constaté de sacrées lenteurs lors d’uploads Nextcloud depuis mon téléphone, lors de tests 🙁

  4. Bonjour Guillaume, effectivement super intéressant, mon site photo piwigo est hébergé chez GANDI, bon je vais voir ce que je peux faire, car tu m’as l’air bien au courant de tout ça 🙂 moi je ne prends que des photos !
    en tout cas merci…

  5. Salut,
    J’ai la même idée depuis 8 mois et c’est avec grand plaisir que je découvre ta publication.
    Pour ma part j’ai acheté un nom de domaine et loué un vps linux chez alls-heberg à ce moment là. J’ai d’abord voulu installé les sites/services sur le vps mais je me suis confronté a la courbe d’apprentissage trop forte. En plus de devoir gérer le vps il faut mettre en place lamp pour heberger les sites. Et j’ai découvert qu’on peu « chargé » les sites/services directement dans l’hébergement mutualisé ce que tu nous montres ici entre autre.
    C’est donc avec grande attention que je vais étudier en profondeur ce que tu proposes après avoir lu rapidement. Surtout je voulais installer freshrss ou tinytinyrss, nextcloud, shaarlii et autres, ça tombe bien.
    Merci

  6. Merci pour ce guide très détaillé.
    Cela me réconforte dans certains de mes choix.

    Concernant Gandi, on peut acheter (ou investir ;- ) certains domaines pour 10 ans.
    exemple pour le .pw C’est 60€TTC pour les 10 ans.
    Certes, comparé au 60 cents c’est beaucoup, mais comparé au renouvellement à 14.40 …

  7. Pour un minimum de sécurité, ne mettez pas les logins que vous utilisez sur votre blog. Et n’utilisez jamais les logins par défaut du style root, admin, wordpress, votre nom de famille.
    Et pour WordPress installez des plugins, il y a pleins de blogs expliquant ce qu’il faut faire.
    Vous seriez surpris de voir les informations qu’ils trouvent (le nom de votre chien) pour hacker votre site.

  8. Petite astuce avec le lecteur de flux RSS, vous pouvez y importer vos abonnements youtube et ne plus dépendre de ce que la plateforme souhaite vous montrer ou pas.

    Pour cela, vous allez sur cette page: https://www.youtube.com/subscription_manager , puis tout en bas, vous cliquez sur « Exporter les abonnements ». Vous récupérez un fichier subscription_manager (vérifier bien que le fichier à bien l’extension .opml
    Ensuite, direction FreshRSS (ou votre agrégateur RSS préféré), Gestion des abonnements > Importer/Exporter > selectionner votre fichier opml, et validez 🙂

    Enjoy votre liste de vidéos sans algo de filtrage 🙂

  9. Merci pour ces tutos 🙂
    Belle initiative que de montrer comment reprendre ses données en main !
    Je suis utilisateur d’Owncloud depuis 2013 et du coup je viens de tester Nextcloud. Alors autant la partie fichiers fonctionne très bien, autant la configuration contacts/calendrier sous iOS/Macos est vraiment problématique… je n’arrive même pas à jouter un compte carddav dans les préférences système 🙁 Il faut que je fouille la doc !

  10. Bonsoir, j’ai suivi votre billet avec attention et j’avoue avoir du mal à comprendre. D’où ma question qui va certainement vous paraitre stupide :
    au lieu de faire tout cela, est ce qu’il n’aurait pas été plus simple d’installer directement NextCloud sur votre serveur ? je n’ai certainement pas compris et je demande donc vos lumières. Sinon quelles sont les différences entre ce que vous faites et NextCloud server ?

Répondre à Seafire Annuler la réponse

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *