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 [14/11/2012 14:59]
127.0.0.1 modification externe
doc:reseau:ssh:client [19/08/2013 22:23]
captnfab [Serveur SSH]
Ligne 1: Ligne 1:
 ====== La commande SSH ====== ====== La commande SSH ======
  
-  * Objet : serveur ssh+  * Objet : Administration à distance avec SSH
   * Niveau requis : DÉBUTANT AVISÉ   * Niveau requis : DÉBUTANT AVISÉ
-  * Commentaires : //Partager __en toute sécurité__ ​des connections entre pcdistants ou locals.//+  * Commentaires : //Administrer son serveur à distance, établir un tunnel sécurisé pour relayer ​des portsetc.//
   * 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 : [[manuel:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) - ainsi que : [[commande:​su | La commande SU]].
  
-===== Installation ​=====+===== Introduction ​=====
  
-<code bash> +''​ssh''​ fonctionne sur le mode client/serveur. 
-aptitude install ​ssh</code>+  * Il y a d'un côté le serveur, la machine que l'on veut administrer,​ sur laquelle on veut se connecter, et qui //écoute// sur le port 22; 
 +  * Et de l'​autre côté le client, la machine depuis laquelle on veut établir la connexion.
  
-//Easyis'n't ?// ;-)+Dans la suitenous présenterons les deux parties, d'​abord la partie cliente : comment faire pour vous connecter à un serveur ''​ssh''​ existant, et ensuite la partie serveur : comment configurer votre machine pour qu'​elle puisse jouer le rôle de serveur ''​ssh''​.
  
-===== Introduction ​=====+===== Client SSH =====
  
 +Lorsque vous démarrez votre 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. À 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 également être un //shell//.
  
-Le SSH est un protocole qui permet d'établir une connection avec un autre PC, ce qui permet ''​en ​console'' ​d'avoir accès au contenu du PC distant. \\  +Le principe ici va être le même : via un canal sécurisé((mais ça, c'est ssh qui s'​en ​charge via openssl)) vous allez fournir un nom d'utilisateur et un mot de passe à une machine, cette fois-ci distante.
-Pour faire des connections vers un PC à plusieurs KM vous devrez ouvrir le port 22 de votre routeur.+
  
-===== Configuration de Base =====+==== Installation ​====
  
-Le SSH est configuré avec un niveau de sécurité très faiblepour ce connecter ​en local à un PC distant il suffit de faire comme ceci.+Comme d'​habitudeça tient en une ligne : 
 +<code bash>​apt-get install openssh-client</​code>​
  
-  ssh user@192.168.1.x +==== Utilisation ====
-  mot_de_passe+
  
-Remplacer user par votre login sur le second PC et le x par la véritable ip de votre machine hôte, vous devrez répondre à la question par yes et saisir votre mot de passe de session.+Pour pouvoir accéder à une machine via la couche IP (qu'​utilise SSH), il nous faut soit l'​adresse IP de la machine, soit son nom d'hôte. Par exemple, pour le serveur Debian, vous pouvez lui envoyer des ping via « ping debian.org » ou via « ping 128.31.0.51 ».
  
-Pour te connecter sur un serveur ssh qui n'a pas le port 22 par défaut. +=== Obtenir ​un shell distant ===
-   ssh mattux@mon.serveur.org -p 10010 +
--p **10010** bien sûr à adapter au port ouvert, son numéro !+
  
-==== Recommandation importante ​====+Pour vous connecter sous le nom d'​utilisateur //jojo// sur la machine d'IP //​coincoin//,​ vous faites simplement ​: 
 +<code bash>ssh jojo@coincoin</​code>​
  
-Je vous recommande de ne pas exporter cette connection SSH tel quelle ​sur le net... il y a des malins qui force le passage pour entrer chez vous ;-).+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>​
  
-Donc si vous voulez exporter une session SSH via un PC a 18 000 km :-D de chez vous je vous recommande de faire une configuration avancée.+=== Obtenir ​un shell distant avec export X ===
  
-===== Réinstallation =====+Il est possible de lancer une application graphique sur le serveur distant 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, vous faites simplement : 
 +<code bash>ssh -X jojo@coincoin</​code>​
  
-Si le pc serveur est réinstallé,​ l'​identification ​de la clé concernant les clients ne marchera plus :+Il suffit ensuite ​de lancer votre application graphique via le shell obtenu.
  
-<​code>​ +=== Rediriger un port local vers un port distant === 
-ssh user@192.168.X.XX+ 
 +FIXME 
 + 
 +=== Rediriger un port distant vers un port local === 
 + 
 +FIXME 
 + 
 +==== Configuration ==== 
 + 
 +Par défaut, SSH n'a pas besoin de configuration. Cependant, il est possible pour se simplifier la vie ou pour les cas particuliers de préciser quelques informations sur les connexions que l'on effectue régulièrement. 
 + 
 +Cela se fait au moyen de l'​édition du fichier ''​~/​.ssh/​config'',​ à créer s'il n'​existe pas. 
 + 
 +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 écoute sur le port 444, ajoutez ceci dans le fichier de configuration : 
 + 
 +  Host maman 
 +  Hostname ordi.de.ma.maman 
 +  User gaston 
 +  Port 444 
 +   
 +Il vous suffit maintenant de taper la ligne suivante pour vous connecter sur l'ordi de votre môman : 
 +<code bash>ssh maman</code> 
 + 
 +Vous pouvez rajouter plusieurs //alias// comme celui-ci dans le fichier de configuration. Pour une liste de toutes les options disponibles,​ et il y en a une… floppée : 
 +<code bash>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 ==== 
 + 
 +=== Après réinstallation du serveur === 
 + 
 +Si le pc serveur est réinstallé,​ la clé unique l'​identifiant est changée. Le client va détecter le changement et soupçonner que quelqu'​un d'​autre essaye de se faire passer pour le serveur original. Vous obtiendrez un message comme celui-ci : 
 + 
 +<​code>​ssh user@192.168.X.XX
 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 @    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! ​    @ @    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! ​    @
Ligne 58: Ligne 99:
 Host key verification failed.</​code>​ Host key verification failed.</​code>​
  
-Ce message indique ​au pc client ici :+Ce message indique ​la ligne contenant l'​empreinte de l'​ancien serveur ​:
    ​Offending key in /​home/​user/​.ssh/​known_hosts:​9    ​Offending key in /​home/​user/​.ssh/​known_hosts:​9
  
-Qu'​il ​faut supprimer la 9ème ligne de son fichier :+Il faut donc supprimer la 9ème ligne de son fichier :
    /​home/​user/​.ssh/​known_hosts    /​home/​user/​.ssh/​known_hosts
  
-Donc nous éditons(([[commande:​editeur:vim]])) simplement ce fichier en user(([[commande:​su]])) :+Donc nous éditons(([[manuel:vim]])) simplement ce fichier en user(([[commande:​su]])) :
 <code bash> <code bash>
 vim .ssh/​known_hosts</​code>​ vim .ssh/​known_hosts</​code>​
Ligne 71: Ligne 112:
 Ainsi, à notre prochain contact vers le serveur, après le //yes// d'​acceptation habituelle, une nouvelle cle d'​identification sera créée et tout ira pour le meilleur des mondes ssh possible. Ainsi, à notre prochain contact vers le serveur, après le //yes// d'​acceptation habituelle, une nouvelle cle d'​identification sera créée et tout ira pour le meilleur des mondes ssh possible.
  
-//Merci à l'​attention du //​**captnfab**//​ qui a fomenté cette explication. Que ses genoux ne soient jamais cailleux !// ;-) 
  
-//Testé par //​**smolski**//​ le 25/​10/​2012//​ - squeeze+==== TP ====
  
-===== Configuration avancée =====+  * Pour ''​COPIER''​ un fichier sécurisé vous devez vous servir de : [[commande:​scp|SCP]] 
 +  * Pour ''​MONTER''​ les fichiers servez-vous de : [[commande:​sshfs|SSHFS]] 
 +  * Utiliser ssh comme un serveur de fichiers : [[manuel:​sftp | sftp installation et configuration]]
  
-voir : [[config:​ssh|Configuration de SSH]]+===== Serveur ​SSH =====
  
 +==== Installation ====
  
 +<code bash>​apt-get install openssh-server</​code>​
  
-===== Détail sur la ligne de commande SSH ===== 
  
-  *ssh : invoque le protocole +==== Configuration ==== 
-  *-L invoque de la création d'un tunnel crypté + 
-  *5901 : port coté local +La configuration par défaut est très bonne. 
-  ​*localhost : indique que l'accès se fera en local de manière transparente + 
-  *5900 : port du service distant +Si vous voulez ​la personnaliser,​ il vous faut éditer le fichier ​''/​etc/​ssh/​sshd_config''​. 
-  *user@80.80.80.80 : indique avec quelle user et sur quelle ip on va établir ​la connection. + 
-  * Pour ''​COPIER''​ un fichier sécurisé vous devez vous servir ​de : [[commande:​scp|SCP]] +Plus d'infos dans le ''​man sshd_config''​. 
-  * Pour ''​MONTER''​ les fichiers servez-vous ​de : [[commande:​sshfs|SSHFS]]+ 
 +==== TP ==== 
 + 
 +TODO 
 + 
 +  * 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 sevreur 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