[TUTO] Connexion SSH avec clés RSA

FR3D0

DZSatien Occasionnel
Inscrit
30/4/11
Messages
65
Salut à tous,
Je vais vous expliquer comment vous connecté en ssh sans mot de passe et en utilisant une clé RSA.
Ce tuto est valable aussi bien pour se connecté à nos box (dreambox, vu+, etcc) ou a des serveurs distant (vps, serveur dédié, etc..)

1 : Création des clés RSA
Alors il y a 2 façons de faire, une sous windows et l’autre sous linux. Je vais vous détaillez les 2 façons de faire.

Sous Windows :
Dans un premier temps on télécharge l’utilitaire puttykeygen qui nous permettra de générer nos clés.

Une fois télécharger, ouvrez puttygen. Dans la fenêtre qui s’ouvre, regardez bien si dans type of key to generate , il y a bien SSH-2_RSA de sélectionner.
Dans le champ Number of bits in a generated key, vous inscrirez la valeur 2048.
Ensuite vous cliquez sur generate (Pasd’inquiétude si c’est un peu long).

Une fois les clés généré, renseignez les champs passphrase, vous y mettez ce que vous voulez, c’est une sorte de mot de passe, ça vous permet de sécurisé votre clé privée. Si vous ne mettez pas de passphrase, si quelqu’un à accès à la clé privée, il pourra se connecté à votre serveur avec aucune
difficulté.
On va sauvegarder nos clés, cliquez sur Save Public key, on va la nommé id_rsa.pub (vous n’êtes pas obligé de la sauvegarder, car elle est généré à partir de la clé privée), ensuite on clique sur save private key et on va la nommé id_rsa

Ne pas fermer Puttygen, on en aura besoin plus tard.

Sous Linux mode console:
Alors il vous faudra installer openssh-server et openssh-client

Sous ubuntu/debian :
apt-get install openssh-server openssh-client
Ensuite vous tapperez la commande :
Ssh-keygen –t –rsa –b 2048
On va vous demandez de tapé la passphrase, et de confirmer la passphrase.
Une fois la clé genere on verifie quelles ont bien était créé à l’aide de la commande :
Ls ~/.ssh
Normalement vous devriez voir afficher :
Id_rsa
Id_rsa.pub


2 : Installation clé sur serveur (dreambox, vps,…)

Clé publique sous windows :
La clé publique à mettre sur le serveur se trouve dans puttygen, juste en dessous de public key for pasting openssh
authorized_keys file
, elle commence par ssh-rsa…………………

Clé publique sous linux :
Pour avoir accès à la clé publique sur linux, Il vous suffira d’ouvrir le fichier ld_rsa.pub avec vi (ou un autre éditeur) et vous verrez la clé qui commence par ssh-rsa………….

On se connecte à son server en ssh (pour le moment on doit tapé le mot de passe) ou telnet.
Ensuite on créé le repertoire .ssh (cette partie est valable que si vous avez généré vos clé sous windows, en générant ses clés sous le server, le répertoire est créé automatiquement, enfin rien empêche de vérifier qu’il existe, et aussi créé se répertoire dans le répertoire de l’utilisateur qui se connecte, si c’est le root, vous le créé dans le /home/root/)
Mkdir –p .ssh
Ensuite on tape la commande
Echo "ssh-rsa AAAxxxxxxxx" >> /home/utilisateur/.ssh/authorized_keys
Alors dans la commande, dans la partie "ssh-rsa AAAxxxxxxxx", à la place vous ferais un copier/collez de la clé public (voir explication ci-dessus dans paragraphe Clé publique sous Windows et Clé publique sous linux)


3 : Connexion avec les clés RSA.

Avec Putty (Windows & linux)
On lance putty, on va créé une session, dans host name, on mets l’ip du server (dreambox, vps,…)
connection type, on mets ssh
saved sessions, on mets le noms de la sessions (exemple
server_dreambox
)
Apres on va dans l’onglet SSH puis Auth, et la on renseigne le chemin d’acces de notre clé privé (id_rsa.ppk). On retourne dans l’ongletsessions et on sauvegarde. Ensuite on se connecte à notre sessions créé, là il va vous demander votre login et après votre passphrase (ce n’est plus votre mot de passe habituel, mais bien la passphrase que vous avez mis quand on a généré les clés)

Pour éviter de renseigner la passphrase, on va installer un agent ssh. ^^ ^^ ^^
Sous windows, on va utilié pageant, une fois télécharger, on ouvre pageant, si rien ne s’affiche, regardé dans la barre de tache (à coté de l’heure/date), vous devriez avoir un nouvelle icone. Cliquez dessus avec le bouton droit de la souris et faite Add key, et selectionnez votreclé privée (id_rsa.ppk), la il va vous demandez d’entré votre passphrase, une fois mise, cliqué sur ok
Voilà, la prochaine fois que vous vous connecterez, sous putty, il ne vous demandera pas votre passphrase.

Et là vous allez me dire, mais faut toujours taper le login.
Et bien voilà la solution pour ne plus avoir besoin de taper votre login.
Quand vous ouvrez putty, vous cliquez sur votre session, et la vous faites load, ensuite vous allez dans l’onglet, Data, et dans la partieAuto-Login username, vous mettez votre login, apres vous retournez dans sessions et vous faites save.

Et la plus besoin de rien taper quand vous vous connecterez. :D :D :D


4 : Interdire le login/passwd sur son serveur

Attention, faire ces manips que si vous etes sur que la connection par clé fonctionne, et surtout n’égaré pas votre clé privée.

Alors, on peut éviter l’accès en ssh avec le login/passwd,
pour cela on tapera la commande :
dropbear –s
et pour éviter l’accès au root en ssh et ainsi eviter tout
brut force, on tapera la commande
dropbear -g


Voila comment sécurisé et aussi rendre la connexion par ssh plus rapide (sans taper à chaque fois votre login/passwd)

J’espère que ce tuto est assez claire, si vous avez des remarques, des questions ou autres n’hésitez pas.

FR3D0

PS: Un petit merci ça fait toujours plaiz :D
 
Retour
Haut