Authentification SSH avec utilisation de clés asymétriques
Transcription
Authentification SSH avec utilisation de clés asymétriques
DOSSIER TECHNIQUE Authentification SSH avec utilisation de clés asymétriques RSA (Debian + Putty) Date Version Référence Auteur VOS CONTACTS TECHNIQUES JEAN-PHILIPPE SENCKEISEN ANTOINE CRUE 16/03/2010 2.0 Antoine CRUE LIGNE DIRECTE : 01 34 93 35 33 EMAIL : [email protected] LIGNE DIRECTE : 01 34 93 35 33 EMAIL : [email protected] Ce document contient des informations confidentielles qui sont la propriété de la société ORSENNA. Il ne peut être diffusé ou transféré en dehors de votre organisation sans l’autorisation écrite d’une personne habilitée par ORSENNA. Il ne peut être copié ou reproduit sous quelque forme que ce soit. ORSENNA se réserve le droit de modifier, sans préavis, certaines conditions prévues dans la présente offre, compte tenu de l’évolution des services ORSENNA (services, équipements, programmes, documents, tarifs). Les renseignements contenus dans le présent document peuvent donc faire l’objet de modifications. ORSENNA est un nom déposé. Cette proposition n’est valable qu’accompagnée du Visa technique. Authentification SSH avec utilisation de clés asymétriques Orsenna DOSSIER TECHNIQUE Sommaire 1 INTRODUCTION ......................................................................................................................................... 3 1.1 1.2 2 MISE EN PLACE.......................................................................................................................................... 4 2.1 2.2 2.3 2.4 2.5 2 | Orsenna CONTEXTE .............................................................................................................................................. 3 OBJECTIFS .............................................................................................................................................. 3 INSTALLATION D’OPENSSH SUR LE SERVEUR (DEBIAN) ......................................................................... 4 INSTALLATION DE PUTTY ....................................................................................................................... 4 INSTALLATION DE PUTTYGEN ET CREATION DES CLES ........................................................................... 5 MISE EN PLACE DE LA CLE SUR LE SERVEUR (DEBIAN) ........................................................................... 7 MISE EN PLACE DE L’AUTHENTIFICATION DANS PUTTY ET TEST DE FONCTIONNEMENT ........................ 10 Réf. 16/03/2010 Authentification SSH avec utilisation de clés asymétriques Orsenna DOSSIER TECHNIQUE Authentification SSH avec utilisation de clés asymétriques RSA(Debian + Putty) 1 1.1 Introduction Contexte L'authentification des utilisateurs par clés RSA permet au serveur SSH de reconnaître la machine cliente essayant de se logger, et de comparer sa clé unique d'identification à une base de donnée d'identifiants "de confiance". Il va donc falloir commencer par configurer la partie serveur (Debian) puis ensuite notre partie cliente (Windows avec Putty). Nous avons donc deux clés, une clé publique et une clé privée. La clé privée restera toujours privée, la clé publique servira à être transmisse afin d’authentifier la machine. Echanges de clés Serveur distant (Debian) 192.168.0.153 PC client Windows XP avec Putty 1.2 Objectifs L’objectif de ce document est de pouvoir configurer relativement facilement la partie serveur (Debian) ainsi que la partie cliente (Windows avec Putty). Il y aura donc 2 grandes parties dans ce document, la première décrivant l’installation et la configuration des divers logiciels et une deuxième phase de test. 3 | Orsenna Réf. 16/03/2010 Authentification SSH avec utilisation de clés asymétriques Orsenna DOSSIER TECHNIQUE 2 2.1 Mise en place Installation d’openSSH sur le serveur (Debian) La première étape consiste à installer sur notre poste Debian le logiciel OpenSSH, cela va permettre à une machine distante de se connecter au serveur. apt-get update => Cela permet de mettre à jour les paquets. apt-get install openssh-server => Cela permet d’installer OpenSSH. Si besoin cliquer sur entrée pour passer à l’étape suivante. Il n’y a rien d’autre à faire pour le moment, passons maintenant à la configuration du client (Windows + Putty). 2.2 Installation de Putty La deuxième étape consiste à installer Putty, vous pouvez le télécharger à cette adresse : http://putty.very.rulez.org/download.html Lors du premier lancement vous devez arriver sur l’interface suivante : Mettre l’adresse à laquelle on souhaite accéder (serveur), dans notre cas le 192.168.0.153 Numéro de port (22) Choix du type de connexion Figure 1 - Interface de Putty Nous pouvons dès à présent tester la connexion vers notre serveur en entrant son adresse sans se soucier de l’authentification RSA. Il suffit ensuite de cliquer sur « Open » pour se retrouver sur notre interface Debian en ligne de commande : 4 | Orsenna Réf. 16/03/2010 Authentification SSH avec utilisation de clés asymétriques Orsenna DOSSIER TECHNIQUE Figure 2 - Page d'authentification de Debian Notre OpenSSH fonctionne donc correctement. Nous voulons maintenant utiliser l’authentification RSA, cela va permettre d’éviter de retaper son password à chaque ouverture de session. Le serveur nous identifiera directement avec notre clé. Comme nous l’avons dit au début, il va donc falloir les générer à l’aide du logiciel PuttyGen. 2.3 Installation de PuttyGen et création des clés Nous allons donc passer à la génération des clés privées et publiques. Vous pouvez télécharger le logiciel PuttyGen à cette adresse : http://putty.very.rulez.org/download.html Voici ce que vous allez trouver lors du premier lancement du logiciel : Génération de la clé Type de clé Nombre de bits pour notre clé Figure 3 - Interface du logiciel PuttyGen 5 | Orsenna Réf. 16/03/2010 Authentification SSH avec utilisation de clés asymétriques Orsenna DOSSIER TECHNIQUE Il faut maintenant générer notre clé, il suffit de cliquer sur : - Generate - Il faut ensuite bouger la souris pour génère des chiffres, lettres et caractères aléatoirement. Figure 4 - génération des clés Nos deux clés sont maintenant générées : Clé générée par le logiciel Ajout d’une phrase (ne rien mettre si nous voulons directement se connecter en entrant seulement le login) Sauvegarde de la clé publique (inutile) Sauvegarde de la clé privée (le plus important) Figure 5 - sauvegarde des clés Nous avons donc deux possibilités, la première étant de ne pas mettre de Key passphrase, la seconde étant d’en ajouter une. Dans cet exemple je prends comme Key passphrase : 123456789 Il faut maintenant sauvegarder notre clé privée dans un fichier (save private key). Ce fichier doit être local à notre ordinateur. Nous pouvons sauvegarder notre clé publique mais ce n'est pas une obligation car elle est calculée à partir de la clé privée. Nous l’enregistrons donc sur notre bureau. Il faut maintenant dire au serveur qu’il doit utiliser cette clé. Attention : Laissez cette fenêtre ouverte car nous devons copier la clé sur le serveur. Il faudra recommencer la procédure de génération en ca de fermeture. 6 | Orsenna Réf. 16/03/2010 Authentification SSH avec utilisation de clés asymétriques Orsenna DOSSIER TECHNIQUE 2.4 Mise en place de la clé sur le serveur (Debian) Il faut maintenant mettre la clé sur le serveur, la méthode la plus simple est de se connecter à celui-ci avec Putty comme nous l’avons vu au point 2.2 : Figure 6 - connexion à notre machine Debian Figure 7 - Entrer le login et le password de la session Il faut maintenant créer un dossier pour stocker notre clé : Mkdir –p .ssh Nous allons maintenant lui dire de copier la clé : Cat >.ssh/authorized_keys2 Il attend qu’on lui fournisse la clé, il suffit donc de faire copier coller pour insérer la clé à partir de notre PuttyGen : 7 | Orsenna Réf. 16/03/2010 Authentification SSH avec utilisation de clés asymétriques Orsenna DOSSIER TECHNIQUE Figure 8 - Copier la clé à partir de PuttyGen dans notre Putty Figure 9 - Mettre la clé Nous devons maintenant valider la clé en tapant la combinaison de touches suivantes : CTRL+D Nous avons donc mis notre clé publique dans notre machine Debian. Nous pouvons vérifier qu’il à bien pris notre nouvelle clé en utilisant la commande suivante : cat <.ssh/authorized_keys2 Nous allons maintenant faire quelques tests. 8 | Orsenna Réf. 16/03/2010 Authentification SSH avec utilisation de clés asymétriques Orsenna DOSSIER TECHNIQUE 2.5 Vérification du fichier de config Il faut bien vérifier que nous utilisons la bonne clé (située au bon endroit). Pour cela il suffit d’aller éditer le fichier de configuration : /etc/ssh/sshd-config Il faut dé-commenter les 3 lignes ci-dessus. Dans l’exemple ci-dessus la clé se situera dans /test/authorized_keys (chemin qu’on aura choisit dans le 2.4). Par défaut le chemin est le suivant (pour notre cas du 2.4) : 9 | Orsenna Réf. 16/03/2010 Authentification SSH avec utilisation de clés asymétriques Orsenna DOSSIER TECHNIQUE 2.6 Mise en place de l’authentification dans Putty et test de fonctionnement Passons maintenant à la vérification, il faut lancer le logiciel Putty puis mettre l’adresse IP de la machine distante : Figure 10 - Interface de Putty Il faut ensuite cliquer sur l’onglet SSH puis dans Auth : Cocher seulement SSH-2 Il faut mettre notre clé privée, celle sauvegardée avec PuttyGen précédemment (dans mon exemple, elle est située sur le bureau) Figure 11 - Mise en place de l'authentification Il suffit ensuite de cliquer sur Open pour avoir la fenêtre suivante, il suffit de rentrer notre identifiant : 10 | Orsenna Réf. 16/03/2010 Authentification SSH avec utilisation de clés asymétriques Orsenna DOSSIER TECHNIQUE Figure 12 - Demande du login On peut voir qu’il nous demande ensuite notre Key Passphrase et non notre password de session, il faut donc mettre lui mettre : 123456789 Figure 13 - Connexion réussie Nous aurions pu réaliser la même chose sans Key Passphrase : Figure 14 - Connexion réussie sans Passphrase 11 | Orsenna Réf. 16/03/2010