Voici ma configuration :
/etc/auto.master
/mnt/10 /etc/auto.10 uid=0,gid=0,--ghost
/etc/auto.10
root -fstype=fuse,allow_other,follow_symlinks,ssh_command=/etc/ssh/sshpass.10.sh :sshfs\#root@10.28.0.10\:/root
Comme le périphérique distant est une appliance et qu'il n'a pas la possibilité d'enregistrer une clé pour se connecter sans mot de passe, je dois transmettre un mot de passe avec une commande sshpass. Pour cela, j'ai utilisé un paramètre ssh_command=.
/etc/ssh/sshpass.10.sh
#!/bin/bash
sshpass -f /etc/ssh/sshpass.10 ssh -o HostKeyAlgorithms=ssh-dss $*
J'ai dû utiliser -o HostKeyAlgorithms=ssh-dss dans la configuration de ma commande ssh, car cette appliance possède un vieux serveur openssh. L'appareil est hors production et ne fait plus de mises à jour. Lorsque j'y accède par ssh depuis mon ordinateur mis à jour, il se plaint de l'absence d'algorithmes correspondants :
Unable to negotiate with 10.28.0.10 port 22: no matching host key type found. Their offer: ssh-dss
Donc, avec un ssh normal, je dois faire :
ssh -o HostKeyAlgorithms=ssh-dss root@10.28.0.10
Donc, j'ai fait dans /etc/ssh/sshpass.10.sh le fichier de configuration de ssh, comme je l'ai indiqué ci-dessus.
Et le dernier fichier, contient un mot de passe ssh root sur la première ligne d'un fichier avec un saut de ligne. /etc/ssh/sshpass.10 c'est à dire :
password
Je ne suis pas en mesure d'afficher un retour à la ligne ici, et bien sûr, ce n'est pas le mot de passe que j'utilise.
Le problème :
Lorsque j'essaie d'aller sur le chemin qui a été configuré dans ces fichiers, je peux y arriver : /mnt/10 et le dossier racine y apparaît. Si j'essaie d'aller à l'intérieur de celui-ci, j'obtiens une erreur :
Can't access '/mnt/10/fsshroot/': No such file or directory