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 →
Ci-dessous, les différences entre deux révisions de la page.
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 [06/05/2014 06:19] D@mien [Installation] |
doc:reseau:ssh:client [05/07/2014 15:53] captnfab |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== SSH coté client====== | + | ====== ssh-client : se connecter pour administrer à distance ====== |
* Objet : Utilisation de ssh comme client | * Objet : Utilisation de ssh comme client | ||
- | * Niveau requis : {{tag>avisé}} | + | * Niveau requis : {{tag>debutant,avisé}} |
* 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> à-compléter à-tester}} | + | * Suivi : {{tag>à-compléter à-tester}} |
- | * Création par <vous> <date> | + | * Création par [[user>MaTTuX_]] 17/06/2007 |
* 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 | ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) |
**Nota :** | **Nota :** | ||
Ligne 37: | Ligne 37: | ||
* soit son nom d'hôte. | * soit son nom d'hôte. | ||
Par exemple, pour se connecter au serveur Debian, vous pouvez lui envoyer des [[:doc:reseau:ping]] via son IP ainsi : | Par exemple, pour se connecter au serveur Debian, vous pouvez lui envoyer des [[:doc:reseau:ping]] via son IP ainsi : | ||
- | <code user>ping 128.31.0.51</code> | + | <code user>ping -c 5 128.31.0.51</code> |
ou via son nom d'hôte : | ou via son nom d'hôte : | ||
- | <code user>ping debian.org</code> | + | <code user>ping -c 5 debian.org</code> |
=== Obtenir un shell distant === | === Obtenir un shell distant === | ||
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 1234 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 : |
- | Il vous faut indiquer la clé à utiliser dans la commande de connexion | + | **- sur l'ordinateur client :** |
+ | <code root> | ||
+ | mount /mnt/usb /dev/sdxx | ||
+ | </code> | ||
- | <code user>ssh -i ~/.ssh/id_dsa user@192.168.x.x</code> | + | <code user> |
+ | cp ~/.ssh/id_dsa.pub /mnt/usb/ | ||
+ | </code> | ||
- | A présent, lors de votre connexion, seule votre éventuelle //passphrase// indiqué lors de la génération de la clé vous sera demandé, mais plus votre mot de passe. | + | <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> | <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> | ||
+ | |||
== ssh-agent == | == ssh-agent == |