Migration de Gandi vers Ouvaton

La semaine dernière, je prenais un train pour aller rencontrer Pacôme Thiellement. Arrivé sur place, je n'ai pas fait attention à mes mails, et ce n'est que le lendemain que j'ouvre celui de Gandi intitulé « mise à jour des tarifs ». Mon sang ne fait qu'un tour :

Nous vous informons que le service GandiMail (inclus avec votre nom de domaine), prendra fin le 30 novembre 2023. Vous avez la possibilité de convertir facilement chacune de vos adresses e-mail existantes, vers notre nouvelle offre MailBox. Par ailleurs, notez que nous mettons à jour notre politique tarifaire pour l'ensemble de nos produits à compter du 13 juillet 2023.

Cela faisait près de quinze ans que j'étais chez Gandi, à la fois pour les noms de domaine, l'hébergement, et du coup les mails. J'avais pris sur moi l'augmentation des prix, et même l'arnaque d'être forcé à changer de plan SimpleHosting à S+ pour bénéficier des certificats SSL… Oh, j'avais lorgné un temps sur o2switch, mais l'impossibilité d'utiliser le WebDAV d'un Nextcloud sur leurs hébergements rendait cette solution impraticable. Mais là, 5 € par mois pour une boite mail dont je n'utilise que 200 Mo (c'est dire comme l'espace disque « offert » m'intéresse peu…), ajoutés à la vingtaine d'euros d'augmentation sur des services déjà plus chers que la concurrence, c'était la goutte d'eau.

J'ai donc passé deux jours à comparer les offres et puis, sur un coup de tête motivé par deux facteurs, j'ai choisi Ouvaton. Ces deux facteurs :

1. C'est une coopérative. Mes recherches en philosophie sociale m'amènent à critiquer le capitalisme, alors autant joindre l'acte à la parole.

2. Les membres ont accès à un Nextcloud mutualisé.

En m'inscrivant, je ne savais pas si le Nextcloud fonctionnerait en WebDAV. Ni même comment créer des vhosts en sous-domaines (comme dev.yom.li). À vrai dire, au vu du site rudimentaire, et du panel d'administration qui l'est même plus, j'avais de profonds doutes quant au bien fondé de mon coup de tête. Heureusement, j'ai eu le temps de lire les forums, mais également cet excellent billet : Migration de OVH vers Ouvaton.

Création d'un vhost

Une fois le compte créé (et si possible, la part sociale achetée), tout se déroule dans le panel d'administration OuvAdmin. On commence par l'onglet *Domaines*, et l'on crée un *domaine d'hébergement* pour le domaine que l'on va migrer (par exemple *yom.li*). On s'assure que la case *Gestion des mails* est cochée. On s'occupera du transfert du nom de domaine après.

Une fois le domaine d'hébergement créé, on va se positionner dans l'onglet *Web* et l'on crée un *espace web* pour chaque sous-domaine (avec un compte FTP lié à chacun). Par exemple, *yom.li*, *dev.yom.li* et *editions.yom.li*. Notez que si l'on n'a pas créé de *domaine d'hébergement* avant cette étape, tout ce que l'on peut faire c'est créer des sous-domaines à *ouvaton.org*.

À partir de là, on se connecte au FTP de Gandi, on récupère les fichiers de chaque vhost, et on les upload sur chaque *espace web*. Nos fichiers sont à présent hébergés chez Ouvaton, mais pas encore accessibles depuis un navigateur.

Changement des serveurs de noms

Maintenant, on se connecte à l'administration de Gandi, et parmi les paramètres de notre nom de domaine, on va cliquer sur l'onglet *Serveurs de noms*. Par défaut, le nom de domaine utilise les serveurs de Gandi (LiveDNS ou quelque chose de ce goût-là). On va les modifier pour avoir ceux de Ouvaton :

ns1.ouvaton.coop
ns2.ouvaton.coop
ns3.ouvaton.coop

On peut suivre la propagation des DNS avec https://www.whatsmydns.net/. Quelques heures plus tard, une fois la propagation terminée, vos sites sont bien hébergés chez Ouvaton et accessibles via les bonnes adresses.

Création d'une boîte mail

Dans l'onglet *Courriels* de OuvAdmin, on crée les boîtes mails et redirections. Normalement, un simple glisser-déposer depuis Thunderbird suffit à migrer les mails d'une boîte à une autre.

Attention toutefois : bien que sur les forums il ait été question de supporter l'adressage en « + » (par exemple `truc+sitemarchand@mondomaine.tld` qui renvoie automatiquement vers `truc@mondomaine.tld`), ce n'est pas du tout effectif, et les redirections ne supportent pas les caractères `*` et `+`. Autrement dit, si vous êtes inscrit⋅e⋅s sur, disons au hasard, Discord avec une adresse en `truc+discord@mondomaine.tld`, il faut impérativement modifier votre adresse sur Discord (pour un alias en `truc.discord@mondomaine.tld` par exemple). Je conseille de le faire *avant* la propagation des DNS. Si, comme moi, vous n'aviez pas fait attention et qu'un site en particulier vous impose un mail de vérification sur l'adresse d'origine (au hasard… Discord et Nintendo 😡), vous pouvez temporairement utiliser votre boîte mail chez Gandi en modifiant les *enregistrements DNS* de votre *domaine d'hébergement*. Il faut virer les deux enregistrements MX d'Ouvaton (`mc01.ouvaton.coop.` et `mc02.ouvaton.coop.`) pour ceux de Gandi :

spool.mail.gandi.net.
fb.mail.gandi.net.

Une fois le changement d'email effectué, il suffira de revenir aux enregistrements MX d'Ouvaton.

⚠️ EDIT 29/06/2023 : Le « + adressing » est maintenant supporté par Ouvaton, cette étape n'est donc plus nécessaire.

Transfert des noms de domaines

Normalement, là vous êtes libres de Gandi, hormis sur la gestion du nom de domaine proprement dit. Il faut suivre cette procédure. Je conseille l'ouverture d'un ticket d'assistance, qui semble plus rapide. Pour information, une demande effectuée le vendredi soir sur trois domaines différents (.fr et .li) a abouti le samedi matin (pour le .li) et le dimanche matin (pour les deux .fr). Même si cela prend plus de temps, de toute manière vos visiteurs sont déjà transférés sur le nouvel hébergement, donc ce n'est pas pressé.

Certificats SSL

Procéder à la migration ainsi offre donc l'avantage certain du transfert sans interruption pour vos visiteurs. Le désavantage, c'est que les certificats Let's Encrypt doivent être en échecs puisqu'ils indiquent une adresse en `*.ouvaton.coop` (cf. https://forums.ouvaton.coop/t/certificat-sur-sous-domaine/3247/4). Il vous faudra donc ouvrir un ticket d'assistance pour demander une génération des certificats sur les différents *espaces web* que vous avez ouverts. Notez que ce problème de génération des certificats ne s'effectue que sur les *espaces web* que vous avez ouverts *avant le transfert effectif des noms de domaine*. Autrement dit, la génération automatique se fera sans encombre sur les prochains *espaces web*. Sans vouloir donner une trop bonne image du support, le problème était réglé deux heures après l'ouverture d'un ticket, un vendredi soir qui plus est (rarement vu support aussi réactif).

Fin

Comme mes sites sont statiques ou à base de CMS flat file, je n'ai pas traité de la migration d'une base MySQL, mais je vous renvoie au billet Migration de OVH vers Ouvaton. Le tout m'aura pris trois jours, en comptant les téléchargements puis upload des fichiers, les changements d'adresse Nextcloud, et la modification de toutes mes adresses mail comportant des alias « + » sur tous mes comptes en ligne. Pendant ce temps, l'intégralité de mes sites étaient opérationnels, visitables sans interruption, avec seulement quelques heures où les navigateurs affichaient une erreur de certificat. Il y a pire comme migration…

Je retrouve ainsi un pack hébergement + domaines + mail plus de deux fois moins cher que chez Gandi et je n'ai plus à maintenir de Nextcloud (qui n'a jamais fait de mise à jour sur un hébergement Gandi ne peut comprendre ce soulagement). Gandi offrait en sus : un anacron (mais comme je ne m'en servais que pour mettre à jour FreshRSS, une simple ligne dans mon propre cron suffit), un cache Varnish (qui, vu la nature de mes sites, me prenait plus la tête qu'il n'apportait de véritable plus), une console SSH (dont je ne me servais que pour mettre à jour Nextcloud, donc) et un support de git (chaque vhost pouvait être un dépôt git, et il était possible de faire un `pull` en PHP).

Seul le dernier point pourra me manquer, dans le sens où je m'en servais pour mettre à jour mes projets sous Ygg, mais je vais juste m'atteler à l'écriture d'un script qui fait ça en pur PHP.

----

Permaliens :