AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1062076
Accepted
Alexander L. Belikoff
Alexander L. Belikoff
Asked: 2021-04-30 12:30:28 +0800 CST2021-04-30 12:30:28 +0800 CST 2021-04-30 12:30:28 +0800 CST

scp 和 sftp 因“client_loop: send disconnect: Broken pipe”而失败(MacOS 11.3 问题?)

  • 772

截至 2 天前,scp对于大于 ~200 KB 的文件,我尝试将文件从笔记本电脑传输到服务器始终失败,并出现错误“client_loop: send disconnect: Broken pipe”这恰逢我的笔记本电脑升级到 MacOS 11.3(从 11不管之前是什么)。

$ dd if=/dev/urandom of=test.dat count=400 2> /dev/null && ls -l test.dat && scp test.dat $DST
-rw-r--r--  1 xxxx  staff  204800 Apr 28 11:27 test.dat
test.dat                                        0%    0     0.0KB/s   --:-- ETAclient_loop: send disconnect: Broken pipe
lost connection

这绝对是新的,因为我几乎每天都在使用 scp 并且在更新之前从未遇到过问题。这种行为在我用作目标的 2 个不同的服务器架构(NAS 和 Raspberry Pi - 以排除偶然的服务器配置错误)以及使用我的 Linux 桌面作为客户端(也没有问题)上也可见。同样奇怪的是,无论是普通 SSH 还是 Homebrew SSH 安装都出现了问题,这暗示了 SSH 客户端配置问题或网络堆栈中的错误。我很好奇是否有其他人在观察同样的问题。sftp表现出同样的问题。

在服务器端,这是我在日志中得到的:

May  1 23:27:27 myhost sshd[21774]: Bad packet length 116136902.
May  1 23:27:27 myhost sshd[21774]: ssh_dispatch_run_fatal: Connection from user pi XXX.XXX.XXX.XXX port 59948: Connection corrupted

PS 解决此问题的一种 [非常不完美] 方法是使用足够低的带宽限制(-l选项),但这并不是很好,因为它会使传输速度非常缓慢。

mac-osx ssh scp
  • 5 5 个回答
  • 13776 Views

5 个回答

  • Voted
  1. krhitoshi
    2021-05-22T19:19:30+08:002021-05-22T19:19:30+08:00

    我发现在 Norton Internet Security 上禁用“防火墙 -> 连接阻止”解决了我的问题。

    不过,在问题得到解决之前,我可能会使用-lscp 选项。

    • 1
  2. Pobtastic
    2021-04-30T14:43:19+08:002021-04-30T14:43:19+08:00

    尝试编辑您的/etc/ssh/sshd_config or ~/.ssh/config文件并添加/更新;

    ClientAliveInterval 300
    

    https://man.openbsd.org/sshd_config.5#ClientAliveInterval

    • 0
  3. AJ42
    2021-05-01T10:27:00+08:002021-05-01T10:27:00+08:00

    为 SFTP 解决了问题,希望这有助于您调试 SCP。

    我最近刚刚更新到 11.3,并且在使用被监禁的帐户设置 SFTP 时遇到了这个问题。在调试过程中,我发现只有在 /etc/ssh/sshd_config 中包含我的入狱帐户的 ChrootDirectory 条目时才会发生此错误。当 ChrootDirectory 被注释掉时,我没有收到这个错误。

    我的问题是对被监禁目录上方目录的权限。一旦正确设置,并且 ChrootDirectory 添加回来,然后被监禁的用户和目录按预期工作,没有错误。

    有关正确设置权限的信息(即使它引用了豹):

    https://macresearch.org/restricted-sftp-mac-os-x-leopard/

    • 0
  4. Best Answer
    Alexander L. Belikoff
    2021-05-02T20:00:35+08:002021-05-02T20:00:35+08:00

    好的,在尝试消除所有自由度之后,看起来我找到了罪魁祸首:Norton Internet Security。卸载后者使问题消失。

    • 0
  5. marcof
    2021-06-16T02:24:53+08:002021-06-16T02:24:53+08:00

    我在 macOS 11.4 上遇到了同样的问题(从 10.something 升级):client_loop: send disconnect: Broken pipe从scp到客户端,除非我正在使用-l 9000或更低版本。sftp并且git都rsync受到类似问题的影响,但我可以ssh没有任何问题。最终,我发现问题出在某些Cisco AnyConnect 套接字过滤器组件上。

    这就是我可以恢复原始功能的方式:

    launchctl unload -w /Library/LaunchAgents/com.cisco.anyconnect.gui.plist

    launchctl unload -w /Library/LaunchAgents/com.cisco.anyconnect.notification.plist

    然后,从Network Preferences面板中删除所有 Cisco AnyConnect Socket Filter 组件,然后重新启动。当 Cisco 在重新启动时尝试启动过滤器时回答“不允许”。

    • 0

相关问题

  • Mac OS X:从 python 脚本中更改 $PATH

  • 登录网络用户帐户 (Open Directory) 时,Adobe Reader 不会启动

  • 如何在客户端计算机上阻止 Finder 的“记住此密码”?

  • 如何在 Mac OS X 中正确安装 Subversion?

  • 随行人员通过 VPN 连接到 Exchange 2007

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve