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 [11/12/2018 15:37] calixtus06 [Installation sur le poste client] |
doc:reseau:ssh:client [18/08/2023 21:02] Jean-Pierre Pinson [Installation sur le poste client] |
||
---|---|---|---|
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>à-compléter à-tester}} | + | * Suivi : {{tag>à-tester}} |
* Création par [[user>MaTTuX_]] le 17/06/2007 | * Création par [[user>MaTTuX_]] le 17/06/2007 | ||
* Testé par <...> le <...> | * Testé par <...> le <...> | ||
Ligne 33: | Ligne 33: | ||
* soit l'adresse [[:doc:reseau:ip-publique|IP]] de la machine, | * soit l'adresse [[:doc:reseau:ip-publique|IP]] de la machine, | ||
* soit son nom d'hôte (hostname). | * soit son nom d'hôte (hostname). | ||
+ | Tips pour connaitre l'adresse IP d'une machine : <code user>hostname -I</code> Puis pour son nom d'hôte (hostname) : <code user>hostname</code> | ||
Par exemple, pour se connecter au serveur ssh **debian**, vous pouvez lui envoyer des [[:doc:reseau:ping]] en l'adressant par son IP ainsi : | Par exemple, pour se connecter au serveur ssh **debian**, vous pouvez lui envoyer des [[:doc:reseau:ping]] en l'adressant par son IP ainsi : | ||
- | <code user>ping -c 5 128.31.0.51</code> **128.31.0.51 est une adresse machine, non ? Peut être faut il préciser qu'il faut l'adresse publique ??** | + | <code user>ping -c 5 128.31.0.51</code> **Des ping depuis un autre ordi du réseau local ? 128.31.0.51 est une adresse machine, non ? Peut être faut il préciser qu'il faut l'adresse publique ??** |
ou via son nom d'hôte : | ou via son nom d'hôte : | ||
<code user>ping -c 5 debian.org</code> | <code user>ping -c 5 debian.org</code> | ||
=== Obtenir un shell distant === | === Obtenir un shell distant === | ||
+ | Forcer le client SSH à utiliser IPv4 ou IPv6 | ||
+ | <code user> ssh -6 jojo@coincoin</code> | ||
+ | où alors | ||
+ | <code user> ssh -4 jojo@coincoin</code> | ||
Par exemple, pour vous connecter sous le nom d'utilisateur((user)) //jojo// sur la machine dont le nom (hostname) est //coincoin//((PAN !)), vous faites simplement : | Par exemple, pour vous connecter sous le nom d'utilisateur((user)) //jojo// sur la machine dont le nom (hostname) est //coincoin//((PAN !)), vous faites simplement : | ||
<code user>ssh jojo@coincoin</code> **encore une fois comment est ce possible sans adresse publique ??** | <code user>ssh jojo@coincoin</code> **encore une fois comment est ce possible sans adresse publique ??** | ||
Ligne 108: | Ligne 112: | ||
* exportation de la clé avec la commande ssh-copy-id : | * 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 la copier sur votre pc distant.** serveur ou client ?** | + | Votre clé sera générée en 1024 bits dans votre dossier /home/votre_user/.ssh/ |
+ | |||
+ | Il a été créé deux fichiers : | ||
+ | |||
+ | <code user> | ||
+ | -rw------- 1 user user 1823 mai 23 19:19 nom_fichier | ||
+ | -rw-r--r-- 1 user user 393 mai 23 19:19 nom_fichier.pub | ||
+ | </code> | ||
+ | |||
+ | Il faut envoyer sur le serveur le fichier "nom_fichier.pub". | ||
+ | |||
+ | |||
+ | Pour la mettre en place il vous suffit de la copier sur votre pc distant.** serveur ou client ?** | ||
+ | |||
+ | <code user>ssh-copy-id user@192.168.x.x</code> | ||
+ | |||
+ | |||
+ | |||
+ | <note tip> | ||
+ | Par défaut, le client ssh s'attend à un nom de clé id_rsa.pub ou id_dsa.pub ...\\ | ||
+ | L'option -i permet de forcer avec un autre nom que celui par défaut.\\ | ||
+ | |||
+ | <code user>ssh-copy-id -i /home/user/.ssh/nom_fichier.pub user@192.168.x.x</code> | ||
+ | </note> | ||
- | <code user>ssh-copy-id -i /home/user/.ssh/id_dsa.pub user@192.168.x.x</code> | ||
* On vous demande alors votre mot de passe une dernière fois **on est côté serveur j'imagine ?** | * On vous demande alors votre mot de passe une dernière fois **on est côté serveur j'imagine ?** | ||
Ligne 294: | Ligne 321: | ||
*localhost : indique que l'accès se fera en local de manière transparente | *localhost : indique que l'accès se fera en local de manière transparente | ||
*5900 : port du service distant | *5900 : port du service distant | ||
- | *user@80.80.80.80 : indique avec quelle user et sur quelle ip on va établir la connection. | + | *user@80.80.80.80 : indique avec quel user et sur quelle ip on va établir la connection. |
==== Configuration ==== | ==== Configuration ==== | ||
Ligne 374: | Ligne 401: | ||
* 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) : | * 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> | <code user>ssh-keygen -p</code> | ||
+ | |||
+ | |||
+ | ==== Démarrer ssh-agent automatiquement (Debian minimale) ==== | ||
+ | Pour démarrer ''ssh-agent'' au démarrage de votre session si vous utilisez un système minimal: | ||
+ | |||
+ | <code user>mkdir -p ~/.config/systemd/user</code> | ||
+ | <code user>cat << EOF > ~/.config/systemd/user/ssh-agent.service | ||
+ | [Unit] | ||
+ | Description=SSH key agent | ||
+ | |||
+ | [Service] | ||
+ | Type=forking | ||
+ | Environment=SSH_AUTH_SOCK=%t/ssh-agent.socket | ||
+ | ExecStart=/usr/bin/ssh-agent -a $SSH_AUTH_SOCK | ||
+ | |||
+ | [Install] | ||
+ | WantedBy=default.target | ||
+ | EOF | ||
+ | </code> | ||
+ | |||
+ | Ensuite, dans votre ''.bash_profile'' (ou autre ''profile'' selon votre interpréteur): | ||
+ | |||
+ | <code user> | ||
+ | echo export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket" >> .bash_profile | ||
+ | source .bash_profile | ||
+ | </code> | ||
+ | |||
+ | |||
+ | Il vous reste ensuite à démarrer le service: | ||
+ | |||
+ | <code user> | ||
+ | systemctl --user enable ssh-agent.service # pour le démarrer automatiquement | ||
+ | systemctl --user start ssh-agent.service # pour démarrer le service immédiatement | ||
+ | </code> | ||
+ | |||