Aller au contenu

Blog ·

Migrer de cPanel vers DirectAdmin

L’itinéraire le plus emprunté hors de cPanel, et ce qui ne suit pas : règles de noms, quotas, l’identifiant que stocke votre facturation et cinq vrais pièges.

Par Provibr

C’est l’itinéraire le plus emprunté hors de cPanel, et on l’emprunte pour une raison : la licence cesse de croître avec votre nombre de clients. cPanel Premier facture 0,49 $ par compte et par mois au-delà de 100 comptes au 1er janvier 2026 ; DirectAdmin Standard coûte 29 $ par mois pour un nombre illimité de comptes, relevé sur directadmin.com le 21 août 2026. À mille comptes sur un serveur, cela fait 510,99 $ contre 29 $.

L’économie est facile à calculer. Ce qui suit est la partie qui ne l’est pas : ce qui doit réellement se passer, ce qui ne survit pas au déménagement, et les endroits précis où un premier script de migration fait discrètement la mauvaise chose.

Provibr prend en charge les deux panneaux, et un client sur l’un ou l’autre nous paie la même chose. Nous n’avons aucune raison de vous pousser vers ce déménagement, seulement de le rendre exact si vous le faites.

En quoi consiste réellement une migration

Quatre choses, et seule la première dispose d’un bon outillage.

  1. Les données. Fichiers, bases de données, courriel, zones DNS. C’est la partie pour laquelle les éditeurs écrivent des outils de conversion.
  2. Les identités. Noms d’utilisateur, domaines, noms de forfait. Ils doivent exister sur la destination et ne survivent pas toujours sans changement.
  3. L’automatisation. Tout ce qui crée, suspend et facture vos comptes vise cPanel et doit viser ailleurs, en général pendant que les deux panneaux sont actifs.
  4. La vague de tickets. Tout ce qui se comportait d’une façon et se comporte désormais autrement, arrivant sous forme de tickets dans les deux semaines qui suivent.

Nous n’avons pas mené votre migration de données et nous n’allons pas décrire l’outillage de conversion de qui que ce soit comme si nous l’avions testé. Les points deux, trois et quatre sont les nôtres, parce que nous avons mesuré les deux panneaux en construisant des intégrations contre eux.

La règle des noms d’utilisateur va renommer certains de vos clients

Les deux panneaux imposent une forme de nom d’utilisateur, et ce ne sont pas les mêmes. La colonne cPanel a été mesurée en créant des comptes sur WHM 11.136 jusqu’au refus ; la colonne DirectAdmin est la règle qu’impose sa propre API.

cPanel / WHMDirectAdmin
Motif^[a-z][a-z0-9]{0,15}$^[a-z][a-z0-9]{2,15}$
Longueur1 à 163 à 16
Doit commencer parune lettreune lettre
Tiretrefusérefusé
Trait de soulignementrefusérefusé
Majusculesmises en minuscules en silenceconservées ou refusées, jamais réécrites
Noms réservésoui, avec leur propre erreur (root et d’autres)non mesuré

Celle qui piège tout le monde, c’est le minimum. Un compte cPanel peut faire un ou deux caractères ; un compte DirectAdmin ne le peut pas. Si vous en avez (et les hébergeurs anciens en ont d’ordinaire une poignée datant des débuts), ils ont besoin d’un nouveau nom, ce qui veut dire prévenir le client et mettre à jour chaque référence à l’ancien nom.

Et il y a un piège à la sortie. WHM accepte un nom d’utilisateur en majuscules, le crée en minuscules, et annonce une réussite sans mentionner le changement. Le compte que vous croyez appelé MyClient s’appelle donc myclient sur le serveur depuis le jour de sa création. Tout inventaire que vous constituez pour la migration doit être lu depuis le serveur plutôt que depuis vos propres archives, sinon une partie ne correspondra à rien.

Ce que stocke votre facturation est sur le point de ne plus pointer sur rien

C’est la partie qu’on sous-estime, parce qu’elle est invisible jusqu’à la bascule.

Votre facturation, vos scripts de mise en service, votre supervision et vos outils de support identifient tous un compte d’hébergement par quelque chose. Sur cPanel, ce quelque chose est le nom d’utilisateur. Après le déménagement, c’est encore un nom d’utilisateur, mais si l’un d’eux a été renommé, la référence est morte, et une référence morte dans un cycle de relance ne lève aucune erreur. Elle ne suspend rien.

Avant de déplacer un seul compte, produisez une liste à trois colonnes : le nom d’utilisateur cPanel, le nom d’utilisateur DirectAdmin qu’il portera, et l’identifiant que détient votre facturation. Si ces trois-là ne s’accordent pas sur chaque ligne, la migration n’est pas prête, quelle que soit la qualité du transfert de données.

Cinq choses mesurées sur les deux API qui casseront un premier script

Tout ceci est né de l’écriture d’intégrations contre des serveurs en fonctionnement, et les cinq produisent des résultats faux plutôt que des erreurs.

Les deux panneaux signalent l’échec par un HTTP 200. cPanel renvoie result: 0 à l’intérieur d’un objet metadata ; DirectAdmin renvoie error=1 dans le corps. Un script qui vérifie le code de statut voit une réussite pour chaque échec, des deux côtés du déménagement. cPanel a aussi une troisième forme : un jeton erroné ou absent revient en HTTP 403 avec un objet cpanelresult et aucun metadata du tout, si bien qu’un analyseur qui ne connaît que metadata ne peut pas distinguer un mauvais jeton d’un serveur en panne.

La limite de disque "0" de cPanel signifie illimité, pas zéro. Il en va de même pour les chaînes "unlimited" et, pour la consommation, "none". Un script de migration qui lit le quota source comme un nombre et l’écrit sur la destination créera des comptes sans aucun espace disque pour chaque client illimité que vous avez, et il le fera sans le moindre avertissement.

L’adresse de contact de cPanel peut être la chaîne littérale "*unknown*". Idem pour deux ou trois des champs de débit de courrier. Copiez-la sans vérifier et vous avez créé des comptes dont l’adresse de contact est un espace réservé, ce que vous découvrez quand le premier avis de suspension n’arrive nulle part.

La recherche de comptes de cPanel est une correspondance de sous-chaîne, pas une correspondance exacte. Demander provibrtest1 a renvoyé à la fois provibrtest1 et provibrtest12345. Si votre migration vérifie chaque compte après l’avoir déplacé en cherchant son nom dans le panneau source, vous pouvez confirmer le mauvais compte et marquer comme migré un client qui ne l’est pas. Filtrez vous-même exactement sur le nom d’utilisateur.

Un serveur cPanel sans comptes ne renvoie pas une liste vide. Il omet entièrement la clé de données. Un script qui traite une clé absente comme un échec signalera comme une erreur votre dernier serveur vidé avec succès ; un script qui la traite comme « aucune réponse reçue » est pire, car sur un serveur actif c’est la différence entre « ce compte a disparu » et « nous n’avons pas pu le dire ».

Du côté de DirectAdmin, deux points de plus valent d’être connus. Sa liste d’utilisation accuse un retard d’environ trois secondes sur les créations et les suppressions : une étape de vérification qui s’exécute juste après une création ne voit rien et conclut que le compte n’a pas été créé. Utilisez plutôt la liste de comptes qui fait autorité. Et le texte de confirmation de la réactivation d’un compte affiche littéralement « have been suspended », ce qui compte précisément lors d’une bascule, quand suspendre sur un panneau et réactiver sur l’autre sont les deux moitiés de chaque déplacement.

Ce qui ne suit pas

Au-delà des données elles-mêmes :

Ce qui se passe
ForfaitsNon portables. Vous les recréez à la main sur DirectAdmin, et les limites qu’ils contiennent sont à vous de tenir à jour.
Domaines additionnels et garéscPanel signale les domaines principaux, additionnels, sous-domaines et garés par compte. DirectAdmin crée un compte avec un domaine ; les autres s’ajoutent ensuite dans le panneau. Toute automatisation doit savoir lequel est le principal.
Compteurs de bande passanteDes totaux mensuels que le serveur remet lui-même à zéro. Ils ne migrent pas, et le premier mois après une migration s’affiche bas sur le nouveau panneau et haut sur l’ancien.
Motifs de suspensionLe texte est renvoyé en écho sur cPanel et stocké par compte. Prévoyez de réenregistrer pourquoi ce qui est suspendu l’est.
Tout ce qui appelait l’API de cPanelScripts destinés aux clients, hooks, extensions tierces. Ils n’ont pas d’équivalents DirectAdmin par défaut.
Les quotas de disque jamais appliquésVoir plus bas. Celui-ci est une vague de tickets, pas un problème de données.

Le piège des quotas, et pourquoi il tombe la première semaine

Un serveur cPanel n’applique les quotas de disque que si le système de fichiers où résident les comptes prend les quotas en charge. Sans cela, WHM accepte le forfait, accepte le chiffre, et n’applique rien. Nous l’avons mesuré exactement sur un serveur WHM 11.136 en fonctionnement : un compte déplacé vers un forfait doté d’un quota de 2 Go a continué d’annoncer sa limite comme unlimited, et les chiffres de disque par compte sont revenus vides. Rien n’a échoué et rien n’a été refusé.

Si c’est l’état de votre parc, chaque compte a de fait bénéficié d’un disque illimité aussi longtemps que c’était vrai, et certains auront largement dépassé ce que vous leur avez vendu. Passez à un panneau qui, lui, applique le quota que vous avez configuré, et ils frappent tous le mur la même semaine.

Vérifiez-le avant de planifier la migration, pas pendant. Si les quotas ne sont pas appliqués, vous avez une décision à prendre au sujet des comptes en dépassement (les relever, les contacter ou les tarifer), et c’est une bien meilleure décision à prendre à l’avance que dans une file de tickets.

Le test de connexion de Provibr indique si les quotas sont réellement appliqués sur un serveur cPanel, à côté de la version et des décomptes de comptes, ce qui est un moyen économique de le savoir. C’est aussi pourquoi la plateforme lit la limite de disque d’un compte sur le compte et non sur le forfait : ce que le compte annonce est ce qui s’applique.

Faites-le par cohortes, et comptez des mois

Le schéma qui marche est ennuyeux, et c’est le seul qui marche.

Dirigez d’abord les nouvelles commandes vers DirectAdmin. Rien n’a besoin de migrer pour cela, le panneau de destination est éprouvé en conditions réelles, et vous apprenez son comportement sur des comptes dont personne ne dépend depuis des années.

Déplacez ensuite les comptes au pire rapport licence/chiffre d’affaires. Vos forfaits les moins chers, dont les clients se soucient le moins de l’interface.

Puis tout le reste, par lots que vous pouvez assumer. Une taille de lot où un mauvais après-midi reste rattrapable, ce qui, pour la plupart des hébergeurs, est plus petit qu’ils ne le prévoient d’abord.

Gardez l’ancien panneau jusqu’à ce que le dernier compte l’ait quitté et qu’un cycle de facturation complet se soit écoulé. Le mois qui suit une migration est celui où le compteur se remet à zéro, où les factures partent et où les écarts apparaissent.

Les mois intermédiaires

Pendant toute cette période, vous exploitez deux panneaux. Deux connexions, deux façons de compter ce que vous avez vendu, deux endroits où regarder quand un client appelle, et deux jeux d’automatisation qui doivent s’accorder sur qui est suspendu. Cette période est le vrai coût du déménagement, et c’est la raison pour laquelle beaucoup d’hébergeurs décident de migrer puis ne commencent jamais.

Provibr relie les deux panneaux au même compte. Un compte cPanel et un compte DirectAdmin figurent dans la même liste de serveurs, comptent dans la même capacité et arrivent sur la même facture mensuelle, avec derrière eux les mêmes actions : suspendre, réactiver, changer de forfait et supprimer. L’agent se connecte vers l’extérieur depuis votre propre réseau : aucun des serveurs n’a besoin d’un port entrant ouvert, et rien n’est installé sur l’un ni l’autre. Les comptes que vous n’avez pas créés via Provibr sont laissés tels quels jusqu’à ce que vous les repreniez : un panneau qui compte déjà quatre cents comptes devient ainsi quelque chose que vous reprenez plutôt que quelque chose que vous reconstruisez.

Il ne déplace pas vos données. Il supprime la raison d’en repousser le déplacement.

À lire ensuite

Les prix publics cPanel de 2026 proviennent de la couverture publique de l’annonce entrée en vigueur le 1er janvier 2026 ; les prix DirectAdmin ont été relevés sur directadmin.com le 21 août 2026. Chaque comportement d’API décrit ici a été mesuré sur des serveurs cPanel et DirectAdmin en fonctionnement lors de la construction des intégrations Provibr. Aucune affirmation n’est faite sur l’outillage de conversion de données d’aucun éditeur, que nous n’avons pas testé.

Commencez avec un hôte et un agent

Créez un compte, installez l’agent avec une seule commande et connectez votre premier hôte Proxmox. La période d’essai dure 14 jours et ne demande aucune coordonnée de paiement.