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 [11/01/2014 15:50]
bendia
doc:reseau:ssh:client [17/05/2014 07:53]
Hypathie [Installation]
Ligne 5: Ligne 5:
   * Commentaires : //​Administrer son serveur à distance, établir un tunnel sécurisé pour relayer des ports, etc... //   * Commentaires : //​Administrer son serveur à distance, établir un tunnel sécurisé pour relayer des ports, etc... //
   * 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>en-chantier}}+  * Suivi : {{tag> ​à-compléter ​ à-tester}}
     * Création par <​vous>​ <​date>​     * Création par <​vous>​ <​date>​
     * Testé par <...> le <...>     * Testé par <...> le <...>
   * Commentaires sur le forum : [[http://​debian-facile.org/​viewtopic.php?​id=1583 | Lien vers le forum concernant ce tuto]]((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 | Lien vers le forum concernant ce tuto]]((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
  
-=== Nota ===+**Nota :**
  
 Contributeurs,​ les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! Contributeurs,​ les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
Ligne 87: Ligne 87:
  
 == Exportation de la cle == == Exportation de la cle ==
 +
 +  * exportation de la clé avec la commande ssh-copy-id :
  
 Votre clé sera générée en 1024 bits dans votre dossier /​home/​votre_user/​.ssh/​ pour la mettre en place il vous suffit de l'​exporter sur votre pc distant. Votre clé sera générée en 1024 bits dans votre dossier /​home/​votre_user/​.ssh/​ pour la mettre en place il vous suffit de l'​exporter sur votre pc distant.
  
 <code user>​ssh-copy-id -i /​home/​user/​.ssh/​id_dsa.pub user@192.168.x.x</​code>​ <code user>​ssh-copy-id -i /​home/​user/​.ssh/​id_dsa.pub user@192.168.x.x</​code>​
-  ​mot_de_passe (serveur ​distant)+  ​* On vous demande alors votre mot de passe une dernière fois 
 + 
 +<note tip> 
 +Si vous avez changé côté ​serveur, le port 22, par exemple par le port 10010, il faut alors utiliser la commande : 
 + 
 +<code user> 
 +ssh-copy-id -i /​home/​user/​.ssh/​id_dsa.pub "-p 10010 user@192.168.x.x"​ 
 +</​code>​  
 +Puis rentrez votre mot de passe client, une dernière fois. 
 +</​note>​ 
 +À présent, c'est la passphrase qui sera demandée. 
 + 
 +<​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**. 
 +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);​\\  
 +puis créer le fichier **~/​.ssh/​authorized_keys** (cela se fait au moment de la copie) et lui donner les droits 400 (lecture pour l'​utilisateur) 
 +</​note>​ 
 + 
 +  * copie de la clé publique avec usb :
   ​   ​
-Notez qu'​on ​peut égalementcopier ​sur la clé usb le fichier ​contenant la clé publique du client ​''​~/​.ssh/​id_rsa.pub'',​ puis copier-coller ​le contenu de ce fichier dans le fichier ''​~/​.ssh/​authorized_keys'' ​qui se trouve ​sur le serveur.+On peut par exemple copier ​sur une clé usb le fichier ''​~/​.ssh/​id_dsa.pub'' ​contenant la clé publique du client, puis copier le contenu de ce fichier dans le fichier ''​~/​.ssh/​authorized_keys''​ sur le serveur. ​Pour ce faire : 
 + 
 +**- sur l'​ordinateur client :** 
 +<code root> 
 +mount /mnt/usb /dev/sdxx 
 +</​code>​ 
 + 
 +<code user> 
 +cp ~/​.ssh/​id_dsa.pub /mnt/usb/ 
 +</​code>​ 
 + 
 +<code root> 
 +umount /mnt/usb 
 +</​code>​ 
 + 
 +**-sur le serveur :** 
 + 
 +<code root> 
 +mount /mnt/usb /dev/sdxx 
 +</​code>​ 
 + 
 +puis : 
 + 
 +<code user> 
 +mkdir ~/.ssh 
 +</​code>​ 
 + 
 +-puis copie de ssh/​id_dsa.pub et création du fichier ~/​.ssh/​authorized_keys 
 + 
 +<code user> 
 +mv /​mnt/​usb/​ssh/​id_dsa.pub ~/​.ssh/​authorized_keys  
 +</​code>​ 
 + 
 +<code root> 
 +umount /mnt/usb 
 +</​code>​ 
 + 
 +Pour vérification : 
 + 
 +<code user> 
 +ls -la ~/.ssh/ 
 +</​code>​ 
 +retour : 
 +<​code>​ 
 +drwxr-xr-x ​ 2 user user 4096 mai   15 11:05 . 
 +drwxr-xr-x 29 user user 4096 mai   15 11:09 .. 
 +-rw-r--r-- ​ 1 user user  402 mai   15 10:58 authorized_keys 
 +</​code>​ 
 + 
 +  * Pour donner uniquement les droits de lecture au fichier ~/​.ssh/​authorized_keys : 
 + 
 +<code user> 
 +chmod 400 ~/​.ssh/​authorized_keys 
 +</​code>​ 
 +Retour : 
 + 
 +<​code>​ 
 +drwxr-xr-x ​ 2 user user 4096 mai   15 11:05 . 
 +drwxr-xr-x 29 user user 4096 mai   15 11:09 .. 
 +-r-------- ​ 1 user user  402 mai   15 10:58 authorized_keys 
 +</​code>​ 
 + 
 + 
 +  * la connexion se fait comme précédemment : 
 + 
 +<code user> 
 +ssh <-p port-choisi>​ user@192.168.XXXX 
 +</​code>​ 
 + 
 +A présent, lors de votre connexion, seule votre éventuelle //​passphrase//​ indiquée lors de la génération de la clé vous sera demandée, mais plus votre mot de passe. 
 + 
 +<​note>​Pour éviter de taper toute cette commande, il faut renseigner le fichier //​~/​.ssh/​config//​ comme indiqué [[doc:​reseau:​ssh:​client#​configuration|plus bas]]</​note>​
  
-A présent, lors de votre connexion, seule votre éventuelle //​passphrase//​ iniqué lors de la génération de la clé vous sera demandé, mais plus votre mot de passe. 
  
 == ssh-agent == == ssh-agent ==
  
-FIXME+Afin d'​éviter de retaper votre //​passphrase//​ à chaque connexion, vous pouvez utiliser //​ssh-agent//​. Il doit être invoqué au début de votre session de la façon suivante avec un //shell bourne// (comme //bash//) 
 + 
 +<code user>​eval `ssh-agent -s`</​code>​ 
 + 
 +et comme cela avec un //shell C// 
 + 
 +<code user>​eval `ssh-agent -c`</​code>​ 
 + 
 +Il suffit ensuite d'​indiquer la clé à utiliser grâce à la commande //​ssh-add//​ 
 + 
 +<code user>​ssh-add $cle_privee</​code>​ 
 + 
 +<​note>​Sans l'​argument //​$clee_privee//,​ //ssh-add// ajoute les clés suivantes //​~/​.ssh/​id_rsa,​ ~/​.ssh/​id_dsa,​ ~/​.ssh/​id_ecdsa and ~/​.ssh/​identity//​ </​note>​ 
 + 
 +Pour lister les clés ajoutées 
 + 
 +<code user>​ssh-add -l</​code>​ 
 + 
 +Pour supprimer toutes les clés enregistrée 
 + 
 +<code user>​ssh-add -D</​code>​ 
 + 
 +<note important>​Ce système ne fonctionne que pour une seule session. Ainsi, si vous fermer votre session (ou votre émulateur de terminal), votre //​passphrase//​ vous sera à nouveau demandé. Pour garder une trace de cet enregistrement,​ il faut utiliser //​keychain//</​note>​ 
 + 
 +== keychain == 
 + 
 +__Installation__ 
 + 
 +<code root>​apt-get install keychain</​code>​ 
 + 
 +__configuration__ 
 + 
 +Il faut appeler le script. Dans votre fichier //​~/​.bashrc//​ ou //​~/​.bash_profile//​ ajoutez (en remplaçant $cle_privee par le nom de votre clé) 
 + 
 +<code bash>###########################################################################​ 
 +# allow $USER to use keys. Only enter once and it will remain enabled till 
 +# you delete it or reboot the server  
 +###########################################################################​ 
 +/​usr/​bin/​keychain $HOME/​.ssh/​$cle_privee 
 +source $HOME/​.keychain/​$HOSTNAME-sh 
 +</​code>​ 
 + 
 +<note tip>Si votre but est uniquement de permettre à des scripts (lancés par //cron// par exemple) de se connecter en //ssh// en interdisant une connexion manuelle sans //​passphrase//,​ il faut utiliser le code suivant 
 +<code bash>#####################################################################################​ 
 +### The --clear option make sure Intruder cannot use your existing SSH-Agents keys  
 +### i.e. Only allow cron jobs to use password less login  
 +#####################################################################################​ 
 +/​usr/​bin/​keychain --clear $HOME/​.ssh/​id_rsa 
 +source $HOME/​.keychain/​$HOSTNAME-sh</​code>​ 
 + 
 +Source : http://​www.cyberciti.biz/​faq/​ubuntu-debian-linux-server-install-keychain-apt-get-command 
 +</​note>​ 
 + 
 + 
 + 
 + 
 + 
  
 === Navigation via SSH === === Navigation via SSH ===
Ligne 191: Ligne 339:
  
   * Pour ''​COPIER''​ un fichier sécurisé vous devez vous servir de : [[:​doc:​reseau:​scp|SCP]]   * Pour ''​COPIER''​ un fichier sécurisé vous devez vous servir de : [[:​doc:​reseau:​scp|SCP]]
-  * Pour ''​MONTER''​ les fichiers servez-vous de : [[:​doc:​reseau:​sshfs|SSHFS]]+  * Pour ''​MONTER''​ les fichiers servez-vous de : [[:​doc:​reseau:ssh:​sshfs|SSHFS]]
   * Utiliser ssh comme un serveur de fichiers : [[:​doc:​reseau:​sftp | sftp installation et configuration]]   * Utiliser ssh comme un serveur de fichiers : [[:​doc:​reseau:​sftp | sftp installation et configuration]]
  
  
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