Outils pour utilisateurs

Outils du site


ssh

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
ssh [2016/03/21 09:55] – créée lucssh [2025/01/09 08:34] (Version actuelle) luc
Ligne 1: Ligne 1:
 +====== SSH ======
 +
 +Derrière ce terme se cache un protocole de communication et un logiciel qui l'utilise. On se sert de ssh pour accéder à distance à un système.
 +
 +===== Configuration sshd (serveur) ====
 +
 +C'est pas bien compliqué, il y a 2 choses à surveiller :
 +  * le protocole. Il existe plusieurs versions et les anciennes ne sont pas recommandées. Ce point est plutôt bien géré par les mainteneurs des distributions via des update de sécurité
 +  * les droits d'accès, qui a le droit d'accéder. On ne souhaite pas autoriser ''root'' à accéder via ssh à un système distant, trop dangereux !
 +<code>
 +# dans /etc/ssh/sshd_config
 +PermitRootLogin no
 +</code>
 +
 +===== Configuration client =====
 +
 +On peut configurer le client pour qu'il utilise des paramètres par défaut, ou des alias. Ca se passe dans le fichier ''~/.ssh/config'' :
 +<code ssh>
 +# exemple pour créer un alias, il suffira d'utiliser la commande 'ssh MonServeur'
 +Host MonServeur
 +   HostName monserveur.ndd
 +   User moi
 +   IdentityFile ~/.ssh/keyfile
 +   Port 2222
 +</code>
 +
 +On peut enlever certaines de ces options, en rajouter d'autres, mais ça je vous laisse le découvrir par vous même :)
 +
 +===== Utilisation =====
 +
 +On accède à une machine à distance tout simplement via la commande :
 +<code bash>
 +ssh user@address
 +# address = ip
 +# address = domain.tld
 +# address = hostname
 +</code>
 +
 +===== Spécifier une clé privée =====
 +
 +Parfois, l'utilisation de clé privée n'est pas automatique, ou alors on en possède plusieurs.
 +Dans ces cas, il convient de spécifier quelle clé utiliser :
 +<code bash>
 +ssh -i /path/to/privkey user@target:folder_source folder_destination
 +</code>
 +
 +===== Tunnel ssh =====
 +ainsi, le port_distant du serveur est accessible sur la machine locale sur le port_local
 +<code bash>
 +ssh user@domain.tld -L port_local:localhost:port_distant
 +# -L clientport:host:hostport
 +# je suppose que host est vis-à-vis du serveur
 +</code>