8 votes

Je peux me connecter en SSH sur un hôte distant mais j'obtiens "Connection reset by peer" avec SSHFS, qu'est-ce que je rate ?

J'ai créé une paire de clés pour me connecter à un disque Synology à partir de la version 12.04. Déployé, éditer ~/.ssh/config pour l'utiliser automatiquement. Testé :

ssh user@remotesynology

-> fonctionne parfaitement. Testé sur une deuxième machine distante (sous Ubuntu server) -> fonctionne.

Maintenant testé :

sshfs user@theubuntuserver: /home/user/ubuntuserver

-> fonctionne

Enfin :

sshfs user@remotesynology: /home/user/remotesynology

-> erreur :

read: Connection reset by peer

J'ai consulté ce problème, mais cela ne semble pas s'appliquer (j'ai l'utilisateur dans le groupe fuse, et ça marche pour l'autre machine) et je n'obtiens pas d'erreur de permission refusée.

Qu'est-ce que je rate?

3voto

KillerRabbit Points 31

Dans mon cas (j'ai essayé de me connecter à distance à Synology également!), le problème était que le SFTP n'était pas activé côté serveur. Les symptômes étaient les mêmes : je pouvais me connecter en ssh sur le serveur sans aucun problème, mais la commande sshfs échouait.

Pour activer le SFTP sur le serveur Synology, allez dans Panneau de configuration -> Services de fichiers -> Onglet FTP -> Section SFTP.

2voto

Graeme Hutchison Points 6643

J'ai eu des problèmes dans le passé où sshfs se comportait de façon étrange. La première chose que vous devriez vraiment faire après avoir installé sshfs est de redémarrer votre machine, ou du moins X, une fois que vous vous êtes ajouté au groupe fuse.

Cette erreur est généralement vue lorsqu'un utilisateur n'est pas dans le groupe fuse, ou si l'allow_other dans fuse n'est pas activé.

Il y a eu des cas où ma clé ssh causait des problèmes. J'ai dû dire explicitement à sshfs quel fichier de clé utiliser, même lorsque ssh était configuré pour cela (~/.ssh/config).

  • sshfs -oIdentityFile=/chemin/complet/vers/id_rsa utilisateur@machine

Une autre solution est d'utiliser votre /etc/fstab et d'ajouter une nouvelle entrée ici :

sshfs#UTILISATEUR@MACHINE:/chemin/à/distance/ /mnt/chemin/local/      fuse    utilisateur,_netdev,auto_cache,reconnect,uid=1000,gid=1000,IdentityFile=/chemin/complet/vers/.ssh/id_rsa,idmap=utilisateur,allow_other    0       2

Cela indique à votre machine de monter /chemin/à/distance vers /mnt/chemin/local/. Cela dit que ce montage sera un système de fichiers fuse. Il y a quelques autres paramètres qui permettent des choses telles que le montage lorsque le réseau devient disponible, la reconnexion automatique en cas de déconnexion, etc.

La portion idmap et allow_other permet aux utilisateurs du groupe fuse de monter le système de fichiers. Cela aidera également à mapper les autorisations pour correspondre à l'utilisateur et au groupe également spécifiés.

Dans cet exemple, vous pourriez alors exécuter ce qui suit pour monter le système de fichiers :

  • mount /mnt/chemin/local/
  • ls /mnt/chemin/local/

0voto

Andrzej Pronobis Points 702

Je viens juste d'avoir le même problème. La raison était que le sous-système SFTP n'était pas activé sur le serveur (SSHFS l'utilise). La solution était d'ajouter la ligne suivante à /etc/ssh/sshd_config sur le serveur :

 Sous-système sftp /usr/lib/openssh/sftp-server

0voto

勿绮语 Points 8744

Si vous avez des règles de pare-feu iptables configurées sur votre serveur, il se peut qu'elles vous aient bloqué pendant que vous bricoliez avec sshfs - ce qui entraînerait également une Réinitialisation de la connexion par le pair.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X