SSH
Aller à la navigation
Aller à la recherche
Divers
Forcer SSH à utiliser un pseudo-terminal
# ssh -t root@foo "vi ~/toto"
Tar compresser et transfert en une seule commande
# ssh toto "cd /tmp ; tar cvf - ./*| bzip2 -9" > /tmp/toto.tar.bz2
Synchroniser deux machines
# rsync -ve ssh user@foo:/bin/c* /tmp
Gestion des clefs SSH
Générer les clefs SSH, la clef est sauver dans ~/.ssh/id_"$CRYP_TYPE".pub
# ssh-keygen -t [rsa|dsa|rsa1]
Pour autoriser la connection sur le serveur dispo par clef, il faut recopier sa clef public. 'Si le fichier n'est pas en 700 SSH refusera la connection)
# ssh foo"umask 077; cat >> .ssh/authorized_keys" < ~/.ssh/id_rsa.pub
Pour lancer ssh-agent, mettre dans son .profile
test -z "SSH_AUTH_SOCK" && eval 'ssh-agent -s'
Ajouter sa passphrase
# ssh-add
On peut lister les clefs avec
# ssh-add -l
Supprimer toutes les clefs SSH
# ssh-add -D
SSH Forwarding
Activer l'agent de forwarding:
ssh -A foo
Ou via le fichier config du client
# cat ~/.ssh/config Host foo ForwardAgent yes
X11 Forwarding, (option "ForwardX11 yes" dans .ssh/config)
# ssh -X foo xclock
Port Forwarding
# ssh -L localport:remotehost:remoteport # ssh -L 8080:10.68.16.64:80 foo
Remote Port Forwarding
# ssh -R 80:10.68.16.64:8080 foo
Dynamic Port Forwarding
Utiliser l'option -D