====== 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 !
# dans /etc/ssh/sshd_config
PermitRootLogin no
===== 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'' :
# 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
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 :
ssh user@address
# address = ip
# address = domain.tld
# address = hostname
===== 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 :
ssh -i /path/to/privkey user@target:folder_source folder_destination
===== Tunnel ssh =====
ainsi, le port_distant du serveur est accessible sur la machine locale sur le port_local
ssh user@domain.tld -L port_local:localhost:port_distant
# -L clientport:host:hostport
# je suppose que host est vis-à-vis du serveur