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/08/2013 05:30]
smolski
doc:reseau:ssh:client [07/01/2014 21:49]
bendia
Ligne 1: Ligne 1:
-====== ​La commande ​SSH ======+====== SSH coté client======
  
-  * Objet : Administration à distance avec SSH +  * Objet : Utilisation de ssh comme client 
-  * Niveau requis : DÉBUTANT AVISÉ +  * Niveau requis : {{tag>​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 : [[manuel:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) - ainsi que : [[commande:su La commande SU]].+  * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) 
 +  * Suivi : {{tag>en-chantier}} 
 +    * Création par <​vous>​ <​date>​ 
 +    * 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 !))
  
-===== Introduction =====+=== Nota ===
  
-''​ssh''​ fonctionne sur le mode client/​serveur.+Contributeurs,​ les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
  
-Il y a : +===== Introduction ​=====
-  * d'un côté le serveur, la machine sur laquelle on veut se connecter, et qui //écoute// par défaut sur le port 22, +
-  * et de l'​autre côté le client, la machine depuis laquelle on veut établir la connexion. +
- +
-Dans la suite, nous présenterons les deux parties: +
-  - la partie cliente : comment faire pour vous connecter à un serveur ''​ssh''​ existant, +
-  - la partie serveur : comment configurer votre machine pour qu'​elle puisse jouer le rôle de serveur ''​ssh''​. +
- +
-===== Client SSH =====+
  
 Lorsque vous démarrez un ordinateur, à moins que vous n'ayez configuré de connexion automatique,​ il vous est demandé un nom d'​utilisateur et un mot de passe. \\ Lorsque vous démarrez un ordinateur, à moins que vous n'ayez configuré de connexion automatique,​ il vous est demandé un nom d'​utilisateur et un mot de passe. \\
 C'est le processus de //login// qui vous permet de vous authentifier en tant qu'​utilisateur de la machine. \\ C'est le processus de //login// qui vous permet de vous authentifier en tant qu'​utilisateur de la machine. \\
-À l'​issue de cette authentification,​ vous avez accès à une interface vous permettant de lancer des commandes, souvent une interface graphique comme [[:manuel:gnome3.4|GNOME]] mais cela peut être simplement un //[[manuel:​shell|shell]]//​.+//À l'​issue de cette authentification,​ vous avez accès à une interface vous permettant de lancer des commandes, souvent une interface graphique comme [[:doc:programmation:​shell:​shell|shell]].//
  
 Le principe ici va être le même : \\ Le principe ici va être le même : \\
Ligne 30: Ligne 26:
 mais cette fois, depuis votre PC à une machine distante. mais cette fois, depuis votre PC à une machine distante.
  
-==== Installation ====+===== Installation ​=====
  
 Comme d'​habitude,​ ça tient en une ligne : Comme d'​habitude,​ ça tient en une ligne :
-<​code ​bash>apt-get install openssh-client</​code>​+<​code ​root>apt-get install openssh-client</​code>​
  
 ==== Utilisation ==== ==== Utilisation ====
  
 Pour pouvoir accéder à une machine via la couche IP (qu'​utilise SSH), il nous faut : Pour pouvoir accéder à une machine via la couche IP (qu'​utilise SSH), il nous faut :
-  * soit l'​adresse [[manuel:ip_publique|IP]] de la machine,+  * soit l'​adresse [[:doc:​reseau:​ip-publique|IP]] de la machine,
   * 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 [[commande: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 ​bash>ping 128.31.0.51</​code>​+<​code ​user>ping 128.31.0.51</​code>​
 ou via son nom d'​hôte : ou via son nom d'​hôte :
-<​code ​bash>ping debian.org</​code>​+<​code ​user>ping debian.org</​code>​
  
 === Obtenir un shell distant === === Obtenir un shell distant ===
  
 Par exemple, pour vous connecter sous le nom d'​utilisateur((user)) //jojo// sur la machine d'IP //​coincoin//​((PAN !)), vous faites simplement : Par exemple, pour vous connecter sous le nom d'​utilisateur((user)) //jojo// sur la machine d'IP //​coincoin//​((PAN !)), vous faites simplement :
-<​code ​bash>ssh jojo@coincoin</​code>​+<​code ​user>ssh jojo@coincoin</​code>​
  
 Si le serveur ssh distant n'​écoute pas sur le port 22, vous pouvez spécifier le port à l'aide de l'​option ''​-p''​ : Si le serveur ssh distant n'​écoute pas sur le port 22, vous pouvez spécifier le port à l'aide de l'​option ''​-p''​ :
-<​code ​bash>ssh -p 1234 jojo@coincoin</​code>​+<​code ​user>ssh -p 1234 jojo@coincoin</​code>​
  
 === Obtenir un shell distant avec export X === === Obtenir un shell distant avec export X ===
  
-Il est aussi possible de lancer sur le serveur distant une application graphique qui s'​affichera sur votre ordinateur client. ​\\+Il est aussi possible de lancer sur le serveur distant une application graphique qui s'​affichera sur votre ordinateur client. 
 + 
 Pour vous connecter sous le nom d'​utilisateur //jojo// sur la machine d'IP //​coincoin//​ et obtenir l'​export X, Pour vous connecter sous le nom d'​utilisateur //jojo// sur la machine d'IP //​coincoin//​ et obtenir l'​export X,
-  - vous faites simplement :<​code ​bash>ssh -X jojo@coincoin</​code>​+  - vous faites simplement :<​code ​user>ssh -X jojo@coincoin</​code>​
   - Puis vous lancez votre application graphique via le shell obtenu.   - Puis vous lancez votre application graphique via le shell obtenu.
 +
 +==== Authentification ====
 +
 +=== Par nom d'​utilisateur/​mot de passe
 +
 +Le nom d'​utilisateur est spécifié dans la commande de connexion. Le serveur nous demande alors notre mot de passe pour nous connecter, de la même façon que sur une machine locale
 +
 +<code user>ssh jojo@coincoin</​code>​
 +
 +Ce à quoi le serveur vous répond : 
 +
 +    jojo@coincoin'​s password:
 +
 +Cependant, l'​utilisation du seul mot de passe peut poser quelques problèmes en terme de sécurité. Afin d'​être plus simple à mémoriser, les mots de passe sont en effet relativement peu complexes.
 +
 +=== Par 
  
 === Rediriger un port local vers un port distant === === Rediriger un port local vers un port distant ===
Ligne 72: Ligne 86:
 Par défaut, SSH n'a pas besoin de configuration. Cependant, pour se simplifier la vie ou pour les cas particuliers,​ il est possible de préciser préalablement quelques informations sur les connexions que l'on effectue régulièrement. Par défaut, SSH n'a pas besoin de configuration. Cependant, pour se simplifier la vie ou pour les cas particuliers,​ il est possible de préciser préalablement quelques informations sur les connexions que l'on effectue régulièrement.
  
-Cela se fait au moyen de l'​édition du fichier de configuration((à créer s'il n'​existe pas déjà)) : ''​~/​.ssh/​config''​.+Cela se fait au moyen de l'​édition du fichier de configuration ​''​~/​.ssh/​config''​((à créer s'il n'​existe pas déjà)) : 
 +<code user>​nano ​~/​.ssh/​config</​code>​
  
 Si vous vous connectez régulièrement sur l'​ordinateur de votre maman, d'IP ''​ordi.de.ma.maman ''​ sous le nom d'​utilisateur ''​gaston '',​ et sachant que son serveur ssh est configuré pour écouter sur le ''​port 444 '',​ ajoutez ceci dans votre fichier de configuration : Si vous vous connectez régulièrement sur l'​ordinateur de votre maman, d'IP ''​ordi.de.ma.maman ''​ sous le nom d'​utilisateur ''​gaston '',​ et sachant que son serveur ssh est configuré pour écouter sur le ''​port 444 '',​ ajoutez ceci dans votre fichier de configuration :
Ligne 81: Ligne 96:
   Port 444   Port 444
   ​   ​
-Et, pour vous connecter sur l'ordi de votre môman, il vous suffira ​simplement ​de taper la ligne suivante : +Et, pour vous connecter sur l'ordi de votre môman, il vous suffira ​maintenant ​de taper simplement ​la ligne suivante : 
-<​code ​bash>ssh maman</​code>​+<​code ​user>ssh maman</​code>​
  
 <​note>​Dans le même fichier de configuration,​ vous pouvez ajouter plusieurs //alias// comme celui-ci.</​note>​ <​note>​Dans le même fichier de configuration,​ vous pouvez ajouter plusieurs //alias// comme celui-ci.</​note>​
-Pour une liste de toutes les options disponibles,​ et il y en a... une floppée ! Tapez : +Pour une liste de toutes les options disponibles,​ et il y en a... //une floppée// ! Tapez : 
-<​code ​bash>man ssh_config</​code>​ +<​code ​user>man ssh_config</​code>​
- +
-===== Recommandation importante ===== +
- +
-Jojo vous recommande de ne pas ouvrir cette connection SSH tel quelle sur le net... il y a des malins qui forcent le passage pour entrer chez vous en essayant des tetra…floppées de mot de passes courants ;-). +
- +
-Donc si vous voulez exporter une session SSH via un PC a 18 000 km :-D de chez vous, restez prudents et sécurisez-là au maximum, en utilisant par exemple une clé RSA (voir par la suite dans les TP)+
  
 ==== Problèmes courants ==== ==== Problèmes courants ====
Ligne 115: Ligne 124:
 Host key verification failed.</​code>​ Host key verification failed.</​code>​
  
-Ce message indique la ligne contenant l'​empreinte de l'​ancien serveur : +Ce message indique la ligne contenant l'​empreinte de l'​ancien serveur ​ici 
-   ​Offending key in /home/user/​.ssh/​known_hosts:​9+   ​Offending key in ~/​.ssh/​known_hosts:​9
  
-Il faut alors supprimer la 9ème ligne de son fichier ​+Dans cet exempole, il faut alors supprimer la 9ème ligne de son fichier ​''​/​home/​user/​.ssh/​known_hosts''​
-   /​home/​user/​.ssh/​known_hosts+
  
-Donc nous éditons(([[manuel:vim]] ou [[manuel:nano]])) ce fichier en user(([[commande:su]])) : +Donc nous éditons(([[:​doc:​editeurs:​vim:vim]] ou [[:​doc:​editeurs:nano]])) ce fichier en user(([[:​doc:​systeme:su]])) : 
-<​code ​bash> +<​code ​user>nano ~/.ssh/​known_hosts</​code>​
-vim .ssh/​known_hosts</​code>​+
  
 et nous supprimons cette 9ème ligne. et nous supprimons cette 9ème ligne.
  
 À 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.
- 
  
 ==== TP ==== ==== TP ====
  
-  * Pour ''​COPIER''​ un fichier sécurisé vous devez vous servir de : [[commande:​scp|SCP]] +  * Pour ''​COPIER''​ un fichier sécurisé vous devez vous servir de : [[:doc:reseau:​scp|SCP]] 
-  * Pour ''​MONTER''​ les fichiers servez-vous de : [[commande:​sshfs|SSHFS]] +  * Pour ''​MONTER''​ les fichiers servez-vous de : [[:doc:reseau:​sshfs|SSHFS]] 
-  * Utiliser ssh comme un serveur de fichiers : [[manuel:sftp | sftp installation et configuration]]+  * Utiliser ssh comme un serveur de fichiers : [[:doc:reseau:sftp | sftp installation et configuration]]
  
 ===== Serveur SSH ===== ===== Serveur SSH =====
Ligne 140: Ligne 146:
 ==== Installation ==== ==== Installation ====
  
-<​code ​bash>apt-get install openssh-server</​code>​ +<​code ​root>apt-get install openssh-server</​code>​
  
 ==== Configuration ==== ==== Configuration ====
  
-La configuration par défaut est très bonne.+La configuration par défaut est très bonne. ​\\ 
 +Si vous voulez la personnaliser,​ il vous faut éditer le fichier ''/​etc/​ssh/​sshd_config''​ : 
 +<code user>​nano /​etc/​ssh/​sshd_config</​code>​
  
-Si vous voulez la personnaliseril vous faut éditer ​le fichier ''​/etc/​ssh/​sshd_config''​.+Comme d'​hab'​plus d'​infos dans le 
 +<code user>man sshd_config<​/code>
  
-Plus d'​infos dans le : +==== Recommandation importante ==== 
-<code bash> + 
-man sshd_config</​code>​+Jojo vous recommande de ne pas ouvrir cette connection SSH tel quelle sur le net... il y a des malins qui forcent le passage pour entrer chez vous en essayant des tetra…floppées de mot de passes courants ;-). 
 + 
 +Donc si vous voulez **exporter** une session SSH via un PC a 18 000 km :-D de chez vous, restez prudents et sécurisez-là au maximum(([[doc:​systeme:​securite | De la sécurité...]])),​ en utilisant par exemple une clé RSA (voir par la suite dans les TP)
  
 ==== TP ==== ==== TP ====
 +
 +  * [[doc:​reseau:​ssh|Utilisation de clés RSA]]
  
 TODO TODO
  
   * Rediriger le port 22 de la freebox/​livebox/​whateverbox vers votre machine pour vous connecter chez vous depuis l'​extérieur   * Rediriger le port 22 de la freebox/​livebox/​whateverbox vers votre machine pour vous connecter chez vous depuis l'​extérieur
-  * Utilisation de clés RSA 
   * Configuration de SSH comme serveur de fichier.   * Configuration de SSH comme serveur de fichier.
 +
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