我有时需要创建服务器网络 - 链接服务器并快速复制数据。
我正在用这个SSH 文件系统 (SSHFS)因为它简单易用,例如连接安全外壳 (SSH)。
出于更好的安全原因,我使用身份验证文件而不是密码。另一个原因是这是“的默认设置”亚马逊网络服务 (AWS) EC2”。
有时我不知道连接问题出在哪里
sshfs {{user_name}}@{{server_ip}}:{{remote_path}} {{local_path}} -o "IdentityFile={{identity_path}}"
我只在客户端收到简单的消息
read: Connection reset by peer
以及服务器上的简单消息
"Connection reset by peer"
问我接下来可以做什么?
答案1
语法上可能有很多错误,联系上的错误也更多。
最好的解决方案是使用开关打开详细模式
-o debug
就我而言,我看到“身份文件的绝对路径”存在问题
no such identity: {{identity_file}}: No such file or directory
Permission denied (publickey).
read: Connection reset by peer
所以我的完整命令如下所示
sshfs {{user_name}}@{{server_ip}}:/ /mnt/{{server_ip}} -o "IdentityFile={{absolute_path}},port={{port_number}}" -o debug
答案2
很可能是超时问题。这样的消息(“读:连接由对等方重置”)表明连接成功(命令ssh
正常)但突然结束:ssh 客户端发送了一些内容,作为回报,它收到了一个 RST TCP 帧,这意味着“不要发送”任何事情,通道都关闭了”。
这主要是由于防火墙因不活动而断开连接(但这可能还有其他原因,例如短时间内连接过多;现在防火墙很敏感)。
为了避免超时问题,请使用ssh
选项TCPKeepAlive
或ServerAliveInterval
/ ServerAliveCountMax
。看这个问题。