logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:reseau:ssh:client [21/09/2014 06:23]
Hypathie [Installation]
doc:reseau:ssh:client [30/07/2016 09:25]
cemoi [Installation]
Ligne 6: Ligne 6:
   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)
   * Suivi : {{tag>​à-compléter à-tester}}   * Suivi : {{tag>​à-compléter à-tester}}
-    * Création par [[user>​MaTTuX_]] 17/06/2007+    * Création par [[user>​MaTTuX_]] ​le 17/06/2007
     * Testé par <...> le <...>     * Testé par <...> le <...>
   * Commentaires sur le forum : [[http://​debian-facile.org/​viewtopic.php?​id=1583 | ici]]((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))   * Commentaires sur le forum : [[http://​debian-facile.org/​viewtopic.php?​id=1583 | ici]]((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
  
-**Nota :** 
- 
-Contributeurs,​ les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! 
  
 ===== Introduction ===== ===== Introduction =====
Ligne 29: Ligne 26:
  
 Comme d'​habitude,​ ça tient en une ligne : Comme d'​habitude,​ ça tient en une ligne :
-<code root>​apt-get install openssh-client</​code>​+<code root>apt-get update && ​apt-get install openssh-client</​code>​
  
 ==== Utilisation ==== ==== Utilisation ====
Ligne 77: Ligne 74:
 Le principe est le suivant, on génère une paire de clé. La clé privé reste sur votre poste client. La clé publique doit être transférée sur le serveur manuellement ou par le réseau. C'est cette clé qui servira alors à l'​authentification. Le principe est le suivant, on génère une paire de clé. La clé privé reste sur votre poste client. La clé publique doit être transférée sur le serveur manuellement ou par le réseau. C'est cette clé qui servira alors à l'​authentification.
  
-== Création de la cle ==+== Création de la clé == 
 + 
 +<note warning>​D'​aprés l'​[[http://​www.ssi.gouv.fr/​entreprise/​guide/​recommandations-pour-un-usage-securise-dopenssh/​|ANSSI]] les clefs dsa sont à éviter (cf page 7 du document). Il est recommandé d'​utiliser des clefs ecdsa en 256 ou rsa en 2048. Les clés doivent être générées dans un contexte où la source d’aléa est fiable, ou à défaut dans un environnement où suffisamment d’entropie a été accumulée.Pour des raisons évidentes, les systèmes nouvellement démarrés ne peuvent avoir accumulés suffisamment d’entropie. Il est donc recommandé d’obtenir de l’aléa une fois qu’une période d’activité suffisante s’est écoulée.</​note>​ 
 + 
 +<note important>​Les commandes suivantes sont a lancer en tant qu'​utilisateur dont vous souhaitez ouvrir la session distante.</​note>​ 
 + 
 +Pour une clef ecdsa en 256: 
 +<code user>​ssh-keygen -t ecdsa -b 256</​code>​ 
 + 
 +Pour une clef rsa en 2048: 
 +<code user>​ssh-keygen -t rsa -b 2048</​code>​ 
 + 
 +<code user>​ssh-keygen -t dsa -b 2048</​code>​
  
-<code user>​ssh-keygen -t dsa</​code>​ 
 <​code>​Generating public/​private dsa key pair. <​code>​Generating public/​private dsa key pair.
 Enter file in which to save the key (/​home/​user/​.ssh/​id_dsa):​ /​home/​user/​.ssh/​nom_fichier Enter file in which to save the key (/​home/​user/​.ssh/​id_dsa):​ /​home/​user/​.ssh/​nom_fichier
 Enter passphrase (empty for no passphrase):​ (mettre une passphrase qui sera demandée à chaque connexion - ou rien si c'est pas nécessaire pour vous) Enter passphrase (empty for no passphrase):​ (mettre une passphrase qui sera demandée à chaque connexion - ou rien si c'est pas nécessaire pour vous)
 </​code>​ </​code>​
-Vous validez 2 fois et vous obtiendrez le résultat en détail de la création de votre cle dsa.+Vous validez 2 fois et vous obtiendrez le résultat en détail de la création de votre clé dsa.
  
 == Exportation de la cle == == Exportation de la cle ==
Ligne 99: Ligne 107:
  
 <code user> <code user>
-ssh-copy-id -i /​home/​user/​.ssh/​id_dsa.pub "-p 1234 user@192.168.x.x"​+ssh-copy-id -i /​home/​user/​.ssh/​id_dsa.pub
 + "-p 1234 user@192.168.x.x"​
 </​code> ​ </​code> ​
-Puis rentrez votre mot de passe clientune dernière fois.+Ne pas oublier les guillemetssans lesquels la commande ne fonctionnerait pas !
 </​note>​ </​note>​
 À présent, c'est la passphrase qui sera demandée. À présent, c'est la passphrase qui sera demandée.
  
 <​note>​ <​note>​
-À savoir **la commande ssh-copy-id** qui vient d'​être utilisée pour exporter la clé publique, est un script qui crée à cette occasion le fichier de type répertoire **~/.ssh** et le fichier **~/​.ssh/​authorized_keys**. +À savoir **la commande ssh-copy-id** qui vient d'​être utilisée pour exporter la clé publique, est un script qui crée à cette occasion le fichier de type répertoire **~/.ssh** et le fichier **~/​.ssh/​authorized_keys**.\\  
-Pour copier le contenu du fichier ~/​.ssh/​id_dsa.pub (côté client), par un autre moyen que la commande ssh-copy-id,​\\  + 
-il faudra créer soi-même le fichier de type répertoire **~/ssh** et vérifier qu'il ait les droits 700 (lecture + écriture + exécution pour l'​utilisateur);\\  +Pour copier le contenu du fichier ~/​.ssh/​id_dsa.pub (créé ​côté client), ​sur le serveur ​par un autre moyen que la commande ssh-copy-id,​\\  
-puis créer le fichier **~/​.ssh/​authorized_keys** (cela se fait au moment ​de la copieet lui donner les droits 400 (lecture pour l'​utilisateur)+il faudra créer soi-même le fichier de type répertoire **~/ssh** et vérifier qu'il ait les droits 700 (lecture + écriture + exécution pour l'​utilisateur).\\  
 +  
 +  * Puis soit créer le fichier **~/​.ssh/​authorized_keys** (''​cp /chemin/de/la/clé ~/​.ssh/​authorized_keys''​ 
 +  * soit, s'il existe déjà parce qu'il a été créé pour un autre client qui se connecte aussi à ce serveur, y ajouter cette clé :\\ ''​cat /​chemin/​de/​id_rsa.pub >> ~/​.ssh/​authorized_keys''​ 
 +  * enfin donner ​ou vérifier que "​authorized_keys"​ ait les droits 400 (lecture ​seule pour l'​utilisateur)
 </​note>​ </​note>​
  
Ligne 156: Ligne 169:
 ls -la ~/.ssh/ ls -la ~/.ssh/
 </​code>​ </​code>​
-retour : + 
-<code>+<file config retour de la commande>
 drwxr-xr-x ​ 2 user user 4096 mai   15 11:05 . drwxr-xr-x ​ 2 user user 4096 mai   15 11:05 .
 drwxr-xr-x 29 user user 4096 mai   15 11:09 .. drwxr-xr-x 29 user user 4096 mai   15 11:09 ..
 -rw-r--r-- ​ 1 user user  402 mai   15 10:58 authorized_keys -rw-r--r-- ​ 1 user user  402 mai   15 10:58 authorized_keys
-</code>+</file>
  
   * Pour donner uniquement les droits de lecture au fichier ~/​.ssh/​authorized_keys :   * Pour donner uniquement les droits de lecture au fichier ~/​.ssh/​authorized_keys :
Ligne 168: Ligne 181:
 chmod 400 ~/​.ssh/​authorized_keys chmod 400 ~/​.ssh/​authorized_keys
 </​code>​ </​code>​
-Retour : 
  
-<code>+<file config retour de la commande>
 drwxr-xr-x ​ 2 user user 4096 mai   15 11:05 . drwxr-xr-x ​ 2 user user 4096 mai   15 11:05 .
 drwxr-xr-x 29 user user 4096 mai   15 11:09 .. drwxr-xr-x 29 user user 4096 mai   15 11:09 ..
 -r-------- ​ 1 user user  402 mai   15 10:58 authorized_keys -r-------- ​ 1 user user  402 mai   15 10:58 authorized_keys
-</code>+</file>
  
  
Ligne 327: Ligne 339:
    ​Offending key in ~/​.ssh/​known_hosts:​9    ​Offending key in ~/​.ssh/​known_hosts:​9
  
-Dans cet exempole, il faut alors supprimer la 9ème ligne de son fichier ''/​home/​user/​.ssh/​known_hosts''​+Dans cet exemple, il faut alors supprimer la 9ème ligne de son fichier ''/​home/​user/​.ssh/​known_hosts''​
  
-Donc nous éditons(([[:​doc:​editeurs:​vim:​vim]] ou [[:​doc:​editeurs:​nano]])) ce fichier en user(([[:​doc:​systeme:​su]])) :+Donc nous éditons(([[:​doc:​editeurs:​vim:​vim]] ou [[:​doc:​editeurs:​nano]])) ce fichier en user((voir cette documentation interne :[[:​doc:​systeme:​su]])) :
 <code user>​nano ~/​.ssh/​known_hosts</​code>​ <code user>​nano ~/​.ssh/​known_hosts</​code>​
  
Ligne 335: Ligne 347:
  
 À notre prochain contact vers le serveur, après le //yes// d'​acceptation habituelle, une nouvelle clé d'​identification sera créée et tout ira pour le meilleur des mondes **ssh** possible. À notre prochain contact vers le serveur, après le //yes// d'​acceptation habituelle, une nouvelle clé d'​identification sera créée et tout ira pour le meilleur des mondes **ssh** possible.
 +
 +===Après réinstallation du client ===
 +  * __Lors de la création de clés asymétriques côté client__
 +Rappel : il s'​était créé une paire de clés, rangée par exemple dans le dossier proposé ~/.ssh/ :\\ 
 +- "​~/​.ssh/​id_rsa"​\\ ​
 +- "​~/​.ssh/​id_rsa.pub"​ (celle qu'on a envoyé au serveur, par exemple avec la commande ''​ssh-copy-id''​ ou en ''​scp''​.\\ ​
 +
 +Donc si on veut, pour une raison ou un autre((par exemple on a réinstallé le système anciennement client et on n'​arrive plus à se connecter à son serveur)) changer cette pair de clé, il faut :
 +  * **Côté serveur** : Éditer le fichier /​etc/​ssh/​sshd_config pour vérifier ou remettre ​ l'​authentification par mot de passe est à ''​yes''​ : ''​PasswordAuthentication yes''​((le temps de la procédure, après laquelle, il veut mieux remettre la valeur "​no"​));​\\ ​
 +  - recharger ssh : ''​service ssh start''​ ;
 +  - supprimer le fichier "​**~/​.ssh/​authorized_keys**"​
 +
 +  * **Côté client** : supprimer les fichiers "​~/​.ssh/​id_rsa"​ et "​~/​.ssh/​id_rsa"​ puisqu'​on va les régénérer en se créant une nouvelle paire de clés.
 +
 +=> On peut ensuite recommencer la procédure : se connecter une première fois au serveur (si ça coince ne pas hésiter à supprimer sur le client ~/​.ssh/​known_hosts si on ne l'a pas fait) ; puis côté client créer une paire de clé et l'​envoyer au serveur).
 +
 +  * Si tout va bien pour se connecter, mais qu'on veut simplement changer la passphrase de sa clé privée (crée avec ''​ssh-keygen -t dsa''​),​ la commande est (côté client) :
 +<code user>​ssh-keygen -p</​code>​
 +
  
 ==== TP ==== ==== TP ====
doc/reseau/ssh/client.txt · Dernière modification: 18/08/2023 21:27 par Jean-Pierre Pinson

Pied de page des forums

Propulsé par FluxBB