web-dev-qa-db-fra.com

Comment spécifier la clé dans SSHFS?

J'ai une question pour laquelle je n'ai pas pu trouver de réponse. J'ai deux ordinateurs, qui exécutent tous les deux Ubuntu Linux 12.04. J'ai configuré mon premier ordinateur ("home") pour pouvoir SSH dans mon deuxième ordinateur ("remote") en utilisant l'authentification par clé publique/privée RSA.

Ce n'est pas la première connexion SSH qui a été configurée à l'aide de l'authentification par clé sur mon ordinateur personnel, mon ordinateur personnel a donc plusieurs fichiers de clés privés id_rsa (chacun étant destiné à un ordinateur différent de SSH). Ainsi, je ne parviens à SSH avec succès que lorsque je spécifie un fichier de clés (dans ssh, le -i option), en utilisant ssh username@ipaddress -i path/to/keyfile/id_rsa.2.

Cela fonctionne très bien. Cependant, je voudrais également utiliser sshfs, qui monte le système de fichiers distant. Alors que ssh semble jouer à Nice avec plusieurs clés, je ne trouve pas de moyen pour que sshfs utilise la bonne clé privée ("id_rsa.2").

Existe-t-il un moyen pour que sshfs le fasse?

77
J L

Voici ce qui fonctionne pour moi:

sshfs [email protected]:/remote/path /local/path/ -o IdentityFile=/path/to/key

Vous pouvez le découvrir via man sshfs:

-o SSHOPT = VAL options ssh (voir man ssh_config)

man ssh_config

IdentityFile

Spécifie un fichier à partir duquel l'identité d'authentification DSA, ECDSA ou DSA de l'utilisateur est lue.

102
goldilocks

Ce que vous devez faire est de spécifier la clé privée à utiliser dans le ~/.ssh/config fichier. par exemple:

Host server1.nixcraft.com
    IdentityFile ~/backups/.ssh/id_dsa
Host server2.nixcraft.com
    IdentityFile /backup/home/userName/.ssh/id_rsa
21
Steven You
sshfs -o ssh_command='ssh -i path/to/keyfile/id_rsa.2' username@ipaddress:/path /local/path
3
user278801