SSH vous donne un shell root sur votre serveur cloud depuis votre propre terminal, et chaque détail dont vous avez besoin pour vous connecter est affiché sur la page du serveur dans KPanel, prêt à être copié.
Un serveur cloud vous appartient à partir du système d'exploitation, ce qui signifie que la ligne de commande est l'endroit où se fait la plupart du travail. Ce guide couvre la recherche de vos détails de connexion, la connexion avec une clé ou un mot de passe, la configuration correcte d'une clé, la console du navigateur comme solution de secours, et la poignée d'erreurs qui représentent presque tous les échecs de connexion.
Trouver vos détails de connexion
- Connectez-vous à KPanel.
- Cliquez sur Serveurs Cloud dans la barre latérale gauche, puis cliquez sur votre serveur.
- Trouvez la carte Connexion.
La carte contient trois champs à copier dans le presse-papiers :
| Champ | Ce que c'est |
|---|---|
| Commande SSH | Une commande complète, prête à coller dans votre terminal |
| Adresse IPv4 | L'adresse IPv4 publique du serveur |
| Adresse IPv6 | L'adresse IPv6 du serveur, affichée lorsqu'une adresse est attribuée |

Si la carte indique « L'adresse IP apparaîtra ici une fois la mise en place terminée », le serveur est encore en cours de construction. La mise en place d'un serveur cloud prend environ soixante secondes et la page se met à jour automatiquement quand c'est terminé.
Connexion avec une clé SSH
Si vous avez collé une clé publique dans le champ Clé publique SSH lors de la commande du serveur, l'authentification par clé est déjà configurée et il n'y a pas de mot de passe à taper.
- Copiez la Commande SSH de la carte Connexion.
- Collez-la dans votre terminal et appuyez sur Entrée.
ssh root@203.0.113.1
Votre client SSH trouve la clé privée correspondante et s'authentifie automatiquement. Si votre clé se trouve à un endroit non standard, pointez-la explicitement :
ssh -i ~/.ssh/my-kapsule-key root@203.0.113.1
Les clés sont à la fois plus faciles et plus sûres que les mots de passe. Il n'y a rien à retenir, rien à taper dans une invite de phishing, et rien pour qu'une attaque de devinette de mot de passe automatisée puisse trouver. Si vous utilisez toujours un mot de passe, générer une clé et l'ajouter prend environ deux minutes.
Configuration d'une clé pour la première fois
Générez une paire de clés sur votre propre machine, pas sur le serveur :
ssh-keygen -t ed25519 -C "your-email@example.com"
Appuyez sur Entrée pour accepter l'emplacement par défaut et définissez une phrase secrète lorsque vous y êtes invité. Vous avez maintenant deux fichiers :
~/.ssh/id_ed25519est votre clé privée. Elle ne quitte jamais votre machine, et vous ne la collez nulle part.~/.ssh/id_ed25519.pubest votre clé publique. C'est celle que vous donnez aux serveurs.
Affichez la clé publique et copiez la ligne entière unique, y compris le préfixe ssh-ed25519 et le commentaire de fin :
cat ~/.ssh/id_ed25519.pub
Quand vous commandez un serveur, collez cette ligne dans le champ Clé publique SSH. L'indice du champ le dit clairement : « Collez votre clé publique pour activer l'authentification par clé. Si laissé vide, un mot de passe root vous sera envoyé par courriel. »
Ne collez jamais le contenu d'un fichier sans .pub à la fin. C'est votre clé privée, et quiconque en dispose peut se connecter en tant que vous sur chaque serveur qui lui fait confiance. Si vous partagez jamais une clé privée par accident, générez une nouvelle paire et remplacez la clé publique partout immédiatement.
Pour ajouter une clé à un serveur que vous avez déjà, connectez-vous comme vous le pouvez aujourd'hui et ajoutez la ligne de clé publique à /root/.ssh/authorized_keys.
Connexion avec un mot de passe
Si vous avez laissé le champ Clé publique SSH vide au moment de la commande, un mot de passe root vous est envoyé par courriel une fois que le serveur est mis en place.
- Copiez la Commande SSH de la carte Connexion.
- Collez-la dans votre terminal et appuyez sur Entrée.
- Entrez le mot de passe root envoyé par courriel à l'invite.
Changez ce mot de passe dès que vous êtes connecté, avec passwd, et ajoutez une clé SSH en même temps. Un mot de passe envoyé par courriel a parcouru plus loin qu'un identifiant ne devrait le faire.
La console du navigateur
La Console du navigateur vous donne un terminal dans KPanel, sans client SSH et sans passer par le port 22. C'est l'outil pour le moment où votre propre accès est ce qui a cassé.
- Ouvrez la page du serveur et cliquez sur Console du navigateur dans les boutons d'action, ou allez à
/cloud-servers/<server-id>/console. - Cliquez sur Démarrer la console. KPanel démarre un terminal sur le serveur via HTTPS avec des identifiants à usage unique.
- Le Nom d'utilisateur et le Mot de passe sont affichés sur la page, avec un bouton Copier les identifiants. Le terminal s'ouvre dans la page elle-même, et votre navigateur peut vous demander ces identifiants.
- Travaillez comme vous le feriez dans n'importe quel shell.
Les sessions de console s'arrêtent automatiquement après 30 minutes. Démarrer une nouvelle session émet de nouveaux identifiants, donc rien n'est laissé à l'écoute une fois que vous avez terminé. Une console du navigateur a également besoin d'un domaine configuré avec HTTPS sur le serveur, ce qui signifie une application installée via le panneau. Sur un serveur nu, la console vous le dira plutôt que d'échouer silencieusement.
Utilisez la console pour annuler une règle de pare-feu qui vous a verrouillé, réinitialiser un mot de passe, ou réparer la configuration sshd. Une fois que vous êtes de nouveau connecté via SSH normalement, vous n'en avez plus besoin.
Maintenir la sécurité d'accès SSH
Le port 22 est toujours ouvert sur un pare-feu de serveur KapsuleHost, par conception, donc un changement de pare-feu ne peut jamais vous verrouiller complètement hors de la machine.
Cela signifie que la sécurité de votre shell repose sur la façon dont vous vous authentifiez, pas sur le fait de masquer le port. Deux choses font la plupart du travail :
- Utilisez des clés, pas des mots de passe. Alors un mot de passe deviné n'est pas un moyen d'entrer.
- Laissez fail2ban activé. Il est activé par défaut et bannit les adresses qui échouent à plusieurs reprises l'authentification SSH. Vous pouvez voir le commutateur sur la page Gestion du serveur.
Gestion du pare-feu et de la sécurité du serveur cloud couvre les deux, plus les règles personnalisées pour les ports dont votre propre application a besoin.
Dépannage
« Connexion refusée. » Rien n'écoute. Vérifiez que le serveur affiche En cours d'exécution dans KPanel, mettez-le sous tension s'il est éteint, et utilisez la console du navigateur pour vérifier que sshd fonctionne.
« Connexion expirée. » Le trafic n'arrive pas. Confirmez que vous utilisez l'adresse IPv4 de la carte Connexion, et vérifiez si votre propre réseau bloque le port 22 sortant. Un réseau d'entreprise ou universitaire le fait parfois.
« Permission refusée (publickey). » Le serveur ne reconnaît pas votre clé. Confirmez que vous avez collé la ligne .pub, entière et inchangée, et que votre client offre la clé privée correspondante. Ajoutez -v à la commande ssh pour voir quelles clés il a essayées.
« Permission refusée, veuillez réessayer » sur un mot de passe. Le mot de passe est incorrect, ou l'authentification par mot de passe est désactivée parce que vous avez fourni une clé. Utilisez la clé, ou la console du navigateur.
« L'IDENTIFICATION DE L'HÔTE DISTANT A CHANGÉ. » La clé d'hôte du serveur est différente de celle que votre client se souvient. C'est attendu après une reconstruction, parce que le système d'exploitation a été réinstallé. Supprimez l'entrée obsolète pour cette adresse IP de votre fichier known_hosts et reconnectez-vous. Si vous n'avez rien reconstruit, arrêtez-vous et contactez-nous avant de vous connecter.
Je me suis verrouillé avec une règle de pare-feu. Le port 22 reste ouvert, donc c'est inhabituel, mais si une règle à l'intérieur du serveur vous a bloqué, utilisez la console du navigateur pour la supprimer.
Si aucun des éléments ci-dessus ne vous donne un shell, envoyez un courriel à support@kapsulehost.com avec le nom du serveur, l'adresse à partir de laquelle vous vous connectez, et le texte d'erreur exact.