Re: [CBLX] ssh

[ Thread Index | Date Index | More lists.tuxfamily.org/carrefourblinux Archives ]


Le Fri, 31 Oct 2014 14:59:44 +0100 (CET)
Pierre Lorenzon <devel@xxxxxxxxxxxxxxxxxxxx> écrivait:


> Y a t il un bon connaisseur de ssh par ici qui pourrait m'en
> dire plus que la doc où je n'ai pas trouvé mon bonheur. Peut-on
> supprimer la demande du mot de passe lors d'une connection ssh

Bonjour,
trouvé cela sur http://www.generation-linux.fr/index.php?post/2008/02/26/79-se-connecter-en-ssh-sans-demande-de-mot-de-passe
est-cela que tu cherches ?
amicalement
Erwin

-----------------


Se connecter en ssh sans demande de mot de passe

Cet article a été publié par Benjamin le 26-02-08 à 17:46 dans la catégorie Serveur

Nous avons vu comment se connecter à distance, en ssh, sur une machine dans ce tuto. Voici donc aujourd'hui comment se connecter en ssh sans demande de mot de passe.

J'ai une machine (A), avec un compte "benjamin" à partir de laquelle je souhaite me connecter en root sur une autre machine (B) sans demande de mot de passe.

Sur la machine A (en utilisateur benjamin) :
--------------------------------------------------------

ssh-keygen -t rsa, puis 3 fois Entrée

Cette commande me génère une clé publique et une clé privée (dans l'ordre, id_rsa.pub et id_rsa) dans le dossier /home/benjamin/.ssh

Ensuite, il faut copier la clé publique (id_rsa.pub) dans un fichier authorized_keys dans le dossier /root/.ssh de la machine B.


Sur la machine B :
------------------------

sudo mkdir /root/.ssh

Créé le dossier /root/.ssh


Sur la machine A :
-----------------------

scp /home/benjamin/.ssh/id_rsa.pub 192.168.1.4:/root/.ssh/authorized_keys

En supposant que l'adresse IP de la machine B soit 192.168.1.4.
Il faut, uniquement cette fois, taper le mot de passe root de la machine B. Cette commande copie le fichier /home/benjamin/.ssh/id_rsa.pub dans le fichier /root/.ssh/authorized_keys de la machine B (même si ce fichier n'existe pas).

Toujours sur la machine A (en utilisateur benjamin) :
-------------------------------------------------------------------

ssh root@192.168.1.4 (puis confirmer avec yes)

Plus aucun mot de passe ne sera demandé.

Le fichier /home/benjamin/.ssh/known_hosts contient les 'identifiants' du pc sur lequel on a voulu se connecter.

Résumé :
- Je génère une clé publique ssh avec le compte benjamin sur la machine A,
- je la copie sur la machine B dans le fichier /root/.ssh/authorized_keys (si je veux avoir accès au compte root sans mot de passe),
- à partir de la machine A (avec le compte benjamin) je me connecte en ssh sur la machine B (ssh root@adresse_ip_machineB)
- il se créé donc un fichier /home/benjamin/.ssh/known_hosts contenant l'identité de la machine B.


Note : Pour améliorer la sécurité de ces connexions par clé RSA, nous pouvons restreindre l'utilisation de la clé d'authentification à l'adresse IP de la machine A en ajoutant from="" devant la clé dans le fichier authorized_keys.
Ce dernier ressemblera donc à ceci :

    from="192.168.1.2" ssh-rsa AB3NzaC1yc2EAzYABIwAb[...]


Note 2 : Une fois que nos clés publiques/privées ont été générées sur la machine A (étape 1), il est possible "d'automatiser" tout le reste avec une seule commande : ssh-copy-id
Très simplement, sur la machine A, vous n'avez qu'à taper :
ssh-copy-id root@192.168.1.4 (pour reprendre notre exemple). Cette commande se chargera de créer le répertoire .ssh et de remplir le fichier authorized_keys automatiquement sur la machine distante.
Pour les connexions SSH sur un port autre que le port 22, il faut lancer la commande ssh-copy-id "-p 2224 root@192.168.1.4"

--

   CarrefourBLinuX MailingListe
   Pour obtenir de l'aide, envoyez le sujet  help  �   carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
   Archives:
   http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/