Créer et utiliser une clé SSH pour vos VM Linux dans Azure

D’après Microsoft, plus de 40 % des VM hébergées par le cloud Azure utiliseraient Linux et non pas Windows. Sur Windows, vous utilisez un login et un mot de passe pour vous identifier. Sur Linux, vous vous connecterez probablement en SSH.

Pour éviter d’avoir à mémoriser plusieurs identifiants et mots de passe, vous pouvez donc utiliser un clé SSH. Et ce qui est cool c’est qu’avec une seule clé SSH vous pouvez vous connecter sur autant de serveur Linux que vous souhaitez – et ce peu importe le système d’exploitation utilisé (Debian, Ubuntu, etc.).

Etape 1 – Création de votre clé SSH

Pour créer une clé SSH, il y a plusieurs façons de faire.

Si vous êtes sur un environnement Linux, vous pouvez utiliser la commande suivant depuis votre Terminal.

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

Par défaut, votre clé SSH sera créée dans le dossier .ssh\ de votre répertoire personnel. Vous pouvez choisir un code personnel – passphrase (ou choisir de laisser ce code vide). Vous trouverez 2 fichiers : id_rsa (votre clé privée) et id_rsa.pub (votre clé publique).

Si vous êtes sous Windows, vous pouvez utiliser le logiciel PuTTY et plus particulièrement l’application PuTTY Key Generator. Cliquez sur le bouton Generate et déplacez de manière votre souris jusqu’à ce que le processus soit terminé.

PuTTY

Une fois le processus terminé, sauvegardez votre clé public et votre clé privée.

  • La clé publique c’est celle que vous communiquez ou installez sur le serveur cible auquel vous souhaitez accéder.
  • La clé privée – quant à elle, c’est le fichier qui vous permettra de vous identifier (en lien avec la clé publique). – et que vous ne devez pas communiquer à un tiers.

Dans mon cas, j’ai choisi de configurer un passphrase vide. Donc, une fois que la clé SSH est utilisée, je serai automatiquement authentifié sur mon serveur sans avoir à taper un mot de passe supplémentaire. 🙂

Etape 2 – Création d’une nouvelle VM sur Azure avec votre clé publique

Maintenant, dès que vous créez une nouvelle VM sur Azure, plutôt que de sélectionner simplement un identifiant + un mot de passe, choisissez l’option clé SSH.

Choisissez tout de même un identifiant puis copiez-collez l’ensemble du contenu de votre clé publique (avec la partie BEGIN et END). Azure confirmera si c’est OK avant de créer la VM.

Je vous laisse le soin de choisir le reste des options (tags, nom, etc.). N’oubliez pas d’autoriser le port SSH 22/TCP de manière à bien pouvoir vous connecter en SSH sur votre VM.

Etape 3 – Identification avec votre clé SSH

Si vous utilisez MobaXterm pour vous connecter en SSH à vos serveurs Linux (et à plein d’autres choses), il vous suffit de procéder comme suit…

Indiquez le nom de votre serveur, votre login, le port et dans la partie Advanced, n’oubliez pas de cocher l’option Use Private Key puis sélectionnez votre clé privée.

Après quelques instants, vous serez connecté avec succès à votre VM Linux grâce à votre clé SSH. 🙂

Et si vous utilisez PuTTY, c’est du pareil au même. Indiquez le nom du serveur, login et le port. Pour choisir votre clé privée, il faut vous rendre dans Connection > SSH > Auth et choisir votre clé privée dans l’option Private key file for authentication.

PuTTY

Voilà, vous savez désormais vous connecter grâce à une clé SSH sur vos VM Linux dans Azure. Evidemment, vous pouvez utiliser la même clé pour Azure, AWS et même vos VM on-premise… En fait, vous pouvez l’utiliser partout ! 😉