From 196fea5a9304ef0363d41a9d545947e299b97aeb Mon Sep 17 00:00:00 2001 From: Baptiste Jonglez Date: Tue, 15 Apr 2025 23:31:29 +0200 Subject: [PATCH] Feuille de route migration email et cryptpad --- .../2025-04-15-restauration-email-cryptpad.md | 140 ++++++++++++++++++ 1 file changed, 140 insertions(+) create mode 100644 content/operations/2025-04-15-restauration-email-cryptpad.md diff --git a/content/operations/2025-04-15-restauration-email-cryptpad.md b/content/operations/2025-04-15-restauration-email-cryptpad.md new file mode 100644 index 0000000..ecdecc8 --- /dev/null +++ b/content/operations/2025-04-15-restauration-email-cryptpad.md @@ -0,0 +1,140 @@ +--- +title: "avril 2025" +description: "Avril 2025: perte d'une zone, migration des services email et cryptpad" +date: 2025-04-15 +dateCreated: 2025-04-15 +weight: 40 +extra: + parent: 'operations/pannes.md' +--- + +15 avril 2025 : coupure de la connexion fibre sur le site à Lille (scorpio). +Les services cryptpad et email sont impactés. + +On apprend que Free ne pourra intervenir que dans 3 jours, on migre donc les services pour ne pas attendre. + +# Référence et cheatsheet + +Voir [2024-05-12-migration-email](@/operations/2024-05-12-migration-email.md) pour la précédente panne identique. + +Il y avait notamment une cheatsheet bien pratique qu'on ne va pas dupliquer ici. + +# Infos infra + +- Site source : scorpio (Lille), machine abricot +- Site destination email : corrin (Nantes), machine pasteque +- Site destination cryptpad : bespin (Bruxelles), machine df-ymk +- Volume de données à migrer : 3 GB pour cryptpad, 24 GB pour les emails + +# Vision haut niveau + +On décide de mettre les emails et cryptpad sur des sites différents, pour éviter une panne simultanée +(ce sont nos deux seuls services qui sont "figés" sur un unique site). + +Au vu des volumes, on part sur une restauration de backup pour les mails (avec synchro finale via 4G), et une copie complète de la prod via un réseau 4G pour cryptpad. + + +# Relais SSH via connexion 4G + +L'opératrice sur place à Lille connecte son laptop en filaire au réseau local des machines de Lille, et se connecte au partage de connexion 4G de son téléphone via Wi-Fi. + +Elle fait ensuite un reverse tunnel SSH vers pasteque avec la commande suivante : + +``` +ssh -p 22202 sonlogin@corrin.site.deuxfleurs.fr -C -N -v -R 0.0.0.0:4242:192.168.1.41:110 +``` + +Dans le détail : + +- port 22202 : c'est le port SSH pour joindre pasteque en IPv4 (redirection de port) +- `-C` : activer compression +- `-N` : ne pas ouvrir de shell (la commande ssh va juste bloquer tant que la connexion est ouverte) +- `-v` : afficher des logs +- `-R 0.0.0.0:4242:192.168.1.41:110` : écouter sur le port 4242 sur pasteque, et rediriger les connexions vers l'IP 192.168.1.41 port 110 (le service SSH d'abricot sur le réseau local) + +Ainsi, tout admin peut se connecter à abricot à travers ce tunnel : + +``` +# En local +eval $(ssh-agent) +ssh-add ~/.ssh/id_rsa +ssh -A pasteque.machine.deuxfleurs.fr +# Sur pasteque +ssh -p 4242 localhost +# On arrive sur abricot +``` + +Pour les migrations, on pourra rajouter sa clé SSH dans `/root/.ssh/authorized_keys` sur les différentes machines, +et faire tous les SSH en root. + + +# Feuille de route cryptpad + +- Copier les données de cryptpad à travers le tunnel SSH : + +``` +# Depuis pasteque en étant root, avec le tunnel décrit au-dessus +rsync -a --info=progress2 -e "ssh -p 4242" root@localhost:/mnt/ssd/cryptpad /mnt/ssd/ +``` + +- Il y a 3 GB de données à copier, ça a pris environ 40 minutes + +- Changer le site et la contrainte de machine dans le job Nomad, et déployer + +- D53 fait sa magie et ça remarche + +# Feuille de route emails + +- Se connecter au compte Gandi et changer l'enregistrement SPF de deuxfleurs.fr (TXT: rajouter le nouveau site) + +- Restaurer le dernier backup des mails sur le noeud cible (pasteque) + + On commence par monter le répertoire cible de pasteque en sshfs + +``` +# Sur pasteque, en root +mkdir /mnt/ssd/mail_from_backup_20250415 +# Sur un laptop connecté au réseau local de pasteque +mkdir -p ~/tmp/pasteque +sshfs root@pasteque.machine.deuxfleurs.fr:/mnt/ssd/mail_from_backup_20250415 ~/tmp/pasteque +``` + + + Puis on passe par les scripts restic du dépôt nixcfg : + +``` +./restic_summary +./restic_restore_gen dovecot ID ~/tmp/pasteque +``` + + + Il y avait 24 GB pour 133.000 fichiers à restaurer, ça a pris environ 1h30 + +- Dupliquer le dossier pour pouvoir repartir du backup en cas de souci + +``` +# Sur pasteque, en root +cp -a /mnt/ssd/mail_from_backup_20250415 /mnt/ssd/mail +``` + +- Faire un rsync au-dessus de la 4G pour resynchroniser les changements depuis le backup + +``` +# Sur pasteque, en root, en utilisant le tunnel SSH décrit ci-dessus +rsync -a --delete --info=progress2 -e "ssh -p 4242" root@localhost:/mnt/ssd/mail/ /mnt/ssd/mail/ +``` + + + malgré la latence de la connexion 4G et le nombre de fichiers, la synchronisation est faite en quelques minutes + +- Modifier le job Nomad email.hcl (changer site et contrainte de machine) et relancer le service + +- D53 et diplonat font leur magie et normalement ça repart sur le nouveau site + +- Modifier le job Nomad des backups backup-daily.hcl (site et contrainte de machine) et relancer le service + +- Vérifier que SoGo fonctionne bien et qu'on peut se connecter, envoyer / recevoir des emails + +- Vérifier la réputation de la nouvelle adresse IP : voir [2024-05-12-migration-email](@/operations/2024-05-12-migration-email.md). + + Tout est OK. + +- Test d'envoi de mail manuel vers gmail.com : OK + +- Test d'envoi de mail manuel vers outlook.fr : il n'arrive pas à l'autre bout... + + Max a ouvert un ticket, ID 7073324911