gpt4 book ai didi

networking - 无法使用内置 ssh 客户端从 macOS 通过 22 以外的任何端口 ssh 到远程主机

转载 作者:行者123 更新时间:2023-12-03 16:58:14 27 4
gpt4 key购买 nike

我最近将运行 Dropbear 的服务器上的 ssh 监听端口从 22 切换到随机端口,以防止系统日志被某人暴力破解。
一切都很好,我可以使用 termux(an
可以安装包的Android终端模拟器)。
直到我尝试使用我的 MacBook ssh 进入服务器(在与我的手机相同的网络下,以前当 dropbear 在 22 上监听时能够 ssh 进入服务器)。连接立即断开,ssh 向我抛出这个:

kex_exchange_identification: write: Broken pipe
详细的输出并没有真正显示出任何有用的东西(而且我可以突然添加):
OpenSSH_8.1p1, LibreSSL 2.7.3
debug1: Reading configuration data /Users/my_username/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 47: Applying options for *
debug1: Connecting to remote.yhaoquan.top port 2123.
debug1: Connection established.
debug1: identity file /Users/my_username/.ssh/id_rsa type 0
debug1: identity file /Users/my_username/.ssh/id_rsa-cert type -1
debug1: identity file /Users/my_username/.ssh/id_dsa type -1
debug1: identity file /Users/my_username/.ssh/id_dsa-cert type -1
debug1: identity file /Users/my_username/.ssh/id_ecdsa type -1
debug1: identity file /Users/my_username/.ssh/id_ecdsa-cert type -1
debug1: identity file /Users/my_username/.ssh/id_ed25519 type -1
debug1: identity file /Users/my_username/.ssh/id_ed25519-cert type -1
debug1: identity file /Users/my_username/.ssh/id_xmss type -1
debug1: identity file /Users/my_username/.ssh/id_xmss-cert type -1
kex_exchange_identification: write: Broken pipe
Telnet 到 2123 端口显示我实际上成功地建立了与服务器的连接:
>telnet {hostname} 2123
Trying {host IP address}...
Connected to {hostname}
Escape character is '^]'.
SSH-2.0-dropbear
|

��]J044��d����curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1,kexguess2@matt.ucc.asn.aursa-sha2-256,ssh-rsa3chacha20-poly1305@openssh.com,aes128-ctr,aes256-ctr3chacha20-poly1305@openssh.com,aes128-ctr,aes256-ctrhmac-sha1,hmac-sha2-256hmac-sha1,hmac-sha2-256nonenoneM�'�Rf
当我将服务器上的端口改回 22 时,一切又恢复正常。
有谁知道问题可能出在哪里或我应该如何诊断问题?
提前致谢 :)
编辑 1:
对于那些遇到同样问题的人, 临时解决方案将使用 OpenSSH .最简单的方法(使其成为 插入式解决方案 )是使用 Homebrew :
brew install openssh
此命令将更改您使用的 ssh 客户端 /usr/bin/ssh到位于 /usr/local/bin/ssh 的别名指向 OpenSSH您刚刚使用 brew 安装,该症状似乎没有出现。
这是 不是 解决这个帖子的问题。我仍在寻找解决方案。

最佳答案

我遇到了同样的问题:ssh 在没有网络事件的情况下返回“kex_exchange_identification: write: Broken pipe”。
就我而言,有罪的一方是 AdGuard。
我在高级配置 network.extension.exclude.ports 中添加了我用于 ssh 的端口,现在它可以工作了。
根据您的配置,network.extension.exclude.domains 可能是您更好的选择。

关于networking - 无法使用内置 ssh 客户端从 macOS 通过 22 以外的任何端口 ssh 到远程主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65434066/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com