我可以通过SSH连接到远程主机但是通过SSHFS获得“通过对等方重置连接”,我会错过什么?
我创建了一个密钥对来连接到12.04的Synology磁盘。 部署,编辑〜/ .ssh / config以自动使用它。 测试:
ssh user@remotesynology
– >像魅力一样工作。 在第二台远程计算机上运行(运行Ubuntu服务器) – >工作正常。
现在测试:
sshfs user@theubuntuserver: /home/user/ubuntuserver
– >工作
最后:
sshfs user@remotesynology: /home/user/remotesynology
– >错误:
read: Connection reset by peer
我看了一下这个问题 ,但这似乎并不适用(我的用户在保险丝组中,它适用于其他机器)并且我没有得到权限拒绝错误。
我错过了什么?
我过去曾遇到过sshfs
行为怪异的问题。 安装sshfs
后你真正应该做的第一件事是重新启动机器,或者至少是X
,一旦你把自己添加到保险丝组。
当用户不在保险丝组中 ,或者如果未启用保险丝中的allow_other时 ,通常会出现此错误。
曾经有一段时间我的ssh密钥导致了问题。 我必须明确地告诉sshfs
要使用哪个密钥文件,即使为它配置了ssh
( ~/.ssh/config
)。
-
sshfs -oIdentityFile=/full/path/to/id_rsa user@machine
另一个解决方案是使用/etc/fstab
并在此处添加一个新条目:
sshfs#USER@MACHINE:/remote/path/ /mnt/local/path/ fuse user,_netdev,auto_cache,reconnect,uid=1000,gid=1000,IdentityFile=/full/path/to/.ssh/id_rsa,idmap=user,allow_other 0 2
这告诉您的机器挂载/remote/path
到/mnt/local/path
。 它说这个挂载将是一个融合文件系统。 还有一些其他设置允许在网络可用时进行安装,如果断开连接则自动重新连接等。
idmap和allow_other部分允许熔丝组内的用户挂载文件系统。 它还有助于映射权限以匹配指定的用户和组。
在此示例中,您可以运行以下命令以安装filesytem:
-
mount /mnt/local/path/
-
ls /mnt/local/path/
如果您在服务器上设置了iptables防火墙规则,那么在您修改sshfs时可能会将您锁定 – 这也会导致Connection reset by peer
。
我刚遇到同样的问题。 原因是服务器上没有启用SFTP子系统(SSHFS正在使用它)。 解决方案是将以下行添加到服务器上的/etc/ssh/sshd_config
:
Subsystem sftp /usr/lib/openssh/sftp-server