Activer SSH sous cPanel : accès, clés et connexion

SSH permet de se connecter à un serveur en ligne de commande. Sous cPanel, cet accès est souvent disponible, mais pas toujours activé par défaut. Selon l’hébergeur, vous pouvez avoir un accès shell complet, un shell limité, ou aucun accès SSH sans demande au support.

Si vous gérez un site WordPress, un accès SSH change beaucoup de choses : vous pouvez utiliser WP-CLI, lancer des sauvegardes, inspecter les fichiers, corriger des permissions, importer une base SQL ou déployer du code proprement.

Voici comment activer SSH sous cPanel, générer ou importer une clé, l’autoriser, puis vous connecter depuis macOS, Linux ou Windows.

Kinsta: Premium Managed WordPress hosting

SSH sous cPanel : ce qu’il faut comprendre

cPanel ne donne pas toujours automatiquement un accès SSH. L’interface peut afficher une section SSH Access, mais l’hébergeur contrôle réellement les droits shell au niveau du serveur.

Selon votre offre, vous pouvez rencontrer plusieurs cas :

  • SSH activé : vous pouvez vous connecter directement avec votre utilisateur cPanel.
  • Jailed Shell : vous avez un accès limité à votre compte, sans accès complet au serveur.
  • SSH désactivé : l’icône peut être absente ou l’accès refusé.
  • Terminal cPanel disponible : vous pouvez ouvrir un terminal directement dans le navigateur.
  • Activation manuelle par l’hébergeur : il faut demander l’accès au support.

Sur un hébergement mutualisé, un shell limité est normal. Il permet d’administrer votre compte sans vous donner les clés du royaume. Ce qui, sur un serveur partagé, évite quelques scènes de western.

Étape 1 : vérifier si SSH est disponible dans cPanel

Connectez-vous à votre compte cPanel, puis cherchez une section nommée :

  • SSH Access ;
  • SSH Access & Terminal ;
  • Terminal ;
  • Manage SSH Keys ;
  • Security → SSH Access.

Selon le thème cPanel et l’hébergeur, le libellé peut varier. Le plus simple consiste à utiliser la barre de recherche de cPanel et à taper SSH.

Si vous ne trouvez rien, l’accès SSH est probablement désactivé sur votre offre. Dans ce cas, contactez l’hébergeur et demandez explicitement :

  • si SSH est disponible sur votre plan ;
  • si un accès Jailed Shell peut être activé ;
  • quel port SSH utiliser ;
  • quel nom d’utilisateur utiliser ;
  • si l’authentification par clé est supportée.
WPEngine: Premium Managed WooCommerce hosting

Étape 2 : ouvrir SSH Access

Dans cPanel, allez dans :

Security → SSH Access

ou :

Security → Manage SSH Keys

L’interface SSH de cPanel permet généralement de :

  • générer une nouvelle paire de clés SSH ;
  • importer une clé publique existante ;
  • autoriser une clé ;
  • supprimer une clé ;
  • télécharger une clé privée générée par cPanel ;
  • convertir une clé au format PuTTY, selon les versions.

La meilleure pratique consiste à générer la clé sur votre propre ordinateur, puis à importer uniquement la clé publique dans cPanel. Ainsi, votre clé privée ne quitte jamais votre machine.

Méthode recommandée : créer la clé SSH sur votre ordinateur

Sur macOS, Linux ou Windows récent avec OpenSSH, ouvrez un terminal et créez une clé Ed25519 :

ssh-keygen -t ed25519 -a 100 -C "votre-email@example.com"Langage du code : JavaScript (javascript)

Acceptez l’emplacement proposé, par exemple :

~/.ssh/id_ed25519Langage du code : JavaScript (javascript)

Ajoutez une passphrase solide. Elle protège votre clé privée si votre ordinateur est compromis ou sauvegardé dans un endroit peu inspiré.

Vous obtiendrez deux fichiers :

FichierRôleÀ partager ?
~/.ssh/id_ed25519Clé privéeNon, jamais
~/.ssh/id_ed25519.pubClé publiqueOui, à importer dans cPanel

Affichez la clé publique :

cat ~/.ssh/id_ed25519.pubLangage du code : JavaScript (javascript)

Copiez toute la ligne. Elle commence généralement par ssh-ed25519.

Kinsta: Premium Managed WordPress hosting

Importer la clé publique dans cPanel

Dans cPanel :

  1. Ouvrez SSH Access.
  2. Cliquez sur Manage SSH Keys.
  3. Cliquez sur Import Key.
  4. Donnez un nom à la clé, par exemple matt-macbook.
  5. Collez la clé publique dans le champ prévu.
  6. Validez l’import.

Ensuite, étape importante : il faut souvent autoriser la clé importée. Dans la liste des clés publiques, cliquez sur Manage, puis sur Authorize.

Importer une clé ne suffit donc pas toujours. Dans beaucoup d’interfaces cPanel, la clé doit être explicitement autorisée pour être ajoutée aux clés acceptées par SSH.

Méthode alternative : générer la clé dans cPanel

cPanel permet aussi de générer une paire de clés directement depuis l’interface.

  1. Allez dans SSH Access.
  2. Cliquez sur Manage SSH Keys.
  3. Cliquez sur Generate a New Key.
  4. Choisissez un nom de clé.
  5. Ajoutez une passphrase solide.
  6. Choisissez un type de clé si l’interface le permet.
  7. Générez la clé.
  8. Autorisez la clé publique.
  9. Téléchargez la clé privée.

Cette méthode fonctionne, mais elle est moins idéale : la clé privée est générée côté serveur, puis téléchargée. Je préfère générer la clé localement et importer uniquement la clé publique. C’est plus propre.

Codeable: trouvez les meilleurs développeurs WordPress

Configurer les permissions de la clé privée

Sur macOS ou Linux, la clé privée doit avoir des permissions strictes :

chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_ed25519

Si vous utilisez une clé téléchargée depuis cPanel, placez-la dans ~/.ssh/, puis protégez-la :

mv ~/Downloads/id_rsa ~/.ssh/cpanel_id_rsa
chmod 600 ~/.ssh/cpanel_id_rsaLangage du code : JavaScript (javascript)

Si les permissions sont trop ouvertes, SSH refusera la clé avec une erreur du type :

WARNING: UNPROTECTED PRIVATE KEY FILE!Langage du code : PHP (php)

Se connecter en SSH à cPanel

Pour vous connecter, il vous faut trois informations :

  • le nom d’utilisateur cPanel ;
  • le nom d’hôte ou l’adresse IP du serveur ;
  • le port SSH.

La commande standard ressemble à ceci :

ssh utilisateur@serveur.example.comLangage du code : CSS (css)

Si votre hébergeur utilise un port différent de 22, ajoutez -p :

ssh -p 2222 utilisateur@serveur.example.comLangage du code : CSS (css)

Si vous devez préciser une clé privée :

ssh -i ~/.ssh/id_ed25519 utilisateur@serveur.example.comLangage du code : JavaScript (javascript)

Avec un port personnalisé :

ssh -i ~/.ssh/id_ed25519 -p 2222 utilisateur@serveur.example.comLangage du code : JavaScript (javascript)

Le nom d’utilisateur est souvent le même que votre utilisateur cPanel. Ce n’est pas forcément votre adresse email, ni le nom du domaine.

Créer un raccourci dans ~/.ssh/config

Pour éviter de retaper la commande complète, ajoutez une entrée dans ~/.ssh/config.

Host mon-cpanel
	HostName serveur.example.com
	User utilisateur
	Port 2222
	IdentityFile ~/.ssh/id_ed25519
	IdentitiesOnly yesLangage du code : JavaScript (javascript)

Protégez le fichier :

chmod 600 ~/.ssh/configLangage du code : JavaScript (javascript)

Vous pouvez ensuite vous connecter simplement avec :

ssh mon-cpanel

C’est plus propre, surtout si vous gérez plusieurs comptes cPanel.

Utiliser le Terminal intégré dans cPanel

Certains hébergeurs activent le Terminal cPanel. Dans ce cas, vous pouvez ouvrir une session shell directement depuis le navigateur, sans client SSH local.

Dans cPanel, cherchez :

Advanced → Terminal

ou simplement Terminal dans la recherche cPanel.

Si l’icône n’apparaît pas, ce n’est pas forcément un bug. Le Terminal cPanel dépend de l’activation de la fonctionnalité côté hébergeur et de votre droit d’accès shell.

Le Terminal intégré est pratique pour des commandes rapides, mais pour un vrai travail d’administration, un client SSH local reste souvent plus confortable.

Tester la connexion SSH

Pour vérifier que l’accès fonctionne :

ssh -v utilisateur@serveur.example.comLangage du code : CSS (css)

Le mode verbose affiche les étapes de connexion. Il permet de voir quelle clé est proposée, si le serveur l’accepte, et où la connexion échoue.

Pour plus de détails :

ssh -vvv utilisateur@serveur.example.comLangage du code : CSS (css)

Cherchez notamment ces lignes :

  • Offering public key
  • Authentications that can continue
  • Permission denied
  • Bad permissions
  • Connection timed out
  • Connection refused

Le message d’erreur vous dira souvent si le problème vient de la clé, du port, du firewall ou d’un accès shell non activé.

Erreurs fréquentes

ErreurCause probableCorrection
Permission denied (publickey)Clé non autorisée, mauvais utilisateur ou mauvaise cléAutoriser la clé dans cPanel, vérifier l’utilisateur et -i
Connection refusedPort fermé ou SSH non disponibleVérifier le port SSH et demander l’activation à l’hébergeur
Connection timed outFirewall, IP bloquée, port incorrect ou réseau filtréTester depuis un autre réseau et vérifier le port
UNPROTECTED PRIVATE KEY FILEPermissions trop ouvertes sur la clé privéechmod 600 ~/.ssh/clé
Icône Terminal absenteFonction désactivée côté hébergeurContacter le support
Commande wp introuvableWP-CLI non installé ou non disponible dans le PATHInstaller WP-CLI localement ou demander à l’hébergeur

Se connecter depuis Windows

Windows 10 et Windows 11 incluent généralement OpenSSH. Vous pouvez donc utiliser PowerShell ou Windows Terminal :

ssh utilisateur@serveur.example.comLangage du code : CSS (css)

Si vous utilisez encore PuTTY, vous devrez parfois convertir une clé OpenSSH en format PuTTY .ppk. Certaines interfaces cPanel proposent une conversion. Sinon, utilisez PuTTYgen.

Pour un nouveau setup, je conseille plutôt OpenSSH natif sous Windows. C’est plus simple, plus proche de macOS/Linux, et beaucoup moins “assistant de configuration 2008”.

À quoi sert SSH sur un hébergement cPanel WordPress ?

Pour WordPress, SSH devient vite indispensable dès que vous voulez travailler proprement.

  • Utiliser WP-CLI.
  • Exporter ou importer une base de données.
  • Déployer un thème ou un plugin avec Git.
  • Corriger des permissions.
  • Lire des logs.
  • Décompresser une archive directement sur le serveur.
  • Lancer une recherche dans les fichiers.
  • Créer une sauvegarde rapide.
  • Diagnostiquer un plugin ou un fatal error.

Exemples utiles une fois connecté :

pwd
ls -la
du -sh *
find . -type f -name "error_log"
wp core version
wp plugin list
wp db export backup.sqlLangage du code : JavaScript (javascript)

Sur certains hébergements mutualisés, toutes ces commandes ne seront pas disponibles. Mais même un accès limité reste souvent plus efficace qu’un gestionnaire de fichiers web pour les tâches sérieuses.

Bonnes pratiques SSH avec cPanel

  • Utilisez une clé SSH plutôt qu’un mot de passe.
  • Protégez votre clé privée avec une passphrase.
  • N’envoyez jamais votre clé privée au support.
  • Importez uniquement la clé publique dans cPanel.
  • Autorisez explicitement la clé après import.
  • Utilisez un fichier ~/.ssh/config pour éviter les commandes trop longues.
  • Supprimez les clés inutilisées dans cPanel.
  • Demandez à l’hébergeur le port SSH exact.
  • Évitez de travailler en production sans sauvegarde récente.

Si SSH n’est pas disponible

Si votre hébergeur ne propose pas SSH sur votre offre, vous avez trois options :

  • demander l’activation du Jailed Shell ;
  • changer d’offre pour une formule avec accès SSH ;
  • migrer vers un hébergement plus adapté au développement WordPress.

Pour un simple site vitrine, on peut survivre sans SSH. Pour du WordPress professionnel, du WooCommerce ou du développement régulier, c’est vite handicapant. FTP peut dépanner. SSH permet de travailler.

Checklist rapide

  • Cherchez SSH Access dans cPanel.
  • Vérifiez que l’hébergeur autorise le shell.
  • Créez une clé SSH sur votre ordinateur avec ssh-keygen.
  • Importez la clé publique dans cPanel.
  • Autorisez la clé dans Manage SSH Keys.
  • Récupérez l’utilisateur cPanel, l’hôte et le port SSH.
  • Connectez-vous avec ssh utilisateur@hôte.
  • Ajoutez -p PORT si le port n’est pas 22.
  • Utilisez ssh -v en cas d’erreur.
  • Créez un raccourci dans ~/.ssh/config.

À retenir

  • SSH sous cPanel dépend des droits accordés par l’hébergeur.
  • L’interface SSH Access permet de gérer les clés SSH.
  • Le Terminal cPanel n’apparaît que si l’hébergeur l’a activé.
  • La méthode la plus propre consiste à générer la clé localement, puis importer la clé publique.
  • Une clé importée doit souvent être autorisée dans cPanel.
  • Le nom d’utilisateur SSH est généralement l’utilisateur cPanel.
  • Le port SSH peut être différent de 22.
  • ssh -v permet de diagnostiquer la plupart des échecs de connexion.

En résumé, activer SSH sous cPanel consiste surtout à vérifier que l’hébergeur autorise le shell, ajouter une clé publique dans SSH Access, l’autoriser, puis se connecter avec le bon utilisateur, le bon hôte et le bon port. Une fois en place, SSH rend l’administration WordPress beaucoup plus rapide, plus propre et nettement moins dépendante des clics dans le gestionnaire de fichiers.

Sources

Laisser un commentaire