SSH 使用 UDP 来做什么? 2024-6-15 • ssh tcp udp 在进行研究时,我注意到 SSH 同时使用 TCP 和 UDP。我完全理解 TCP 的用途,但 UDP 似乎有点奇怪。为什么我要使用“不可靠”的传输协议和最少的握手来实现安全的 shell 访问? 我能想到的唯一用途是 SCP,因此(大)文件传输。但是,由于有握手机制,TCP 不是更有用吗? 事实上,我正在考虑仅为 SSH 打开 TCP,但不知道这样做会产生什么后果。 编辑 事实证明,不仅有一篇关于 UDP 上的 ssh 的论文,而且还有一个成熟的 ssh 实现,称为莫什。然而,经典的 ssh 仍然只使用 TCP,正如其RFC 文档。 答案1 我尝试了从 Windows 到 Unix 以及从 Unix 到 Unix 的多个 SSH 连接,但在端口 22 上没有收到任何 UDP 数据包。而且服务器只监听 TCP。 在此论文他们尝试实现 UDP 进行 SSH 传输,但他们也提到默认只使用 TCP:“。OpenSSH 始终在其所有网络连接中使用 TCP,因此也在其 VPN 功能中使用 TCP。”维基百科页面可能会说它是 UDP,因为 SSH 开发人员最初请求分配 UDP 和 TCP,但相关 RFC没有提及它。 答案2 ... SSH 协议使用或曾经使用 22/UDP 通过 TCP 进行隧道控制。如果通过 Wireshark 正确解码,并且您正在通过 ssh-agent 或远程或本地隧道建立连接,您会注意到 UDP 封装在 TCP 段中。 相关内容 Windows 10 是否有快捷方式可以切换使用密码登录? 发送SIGKILL的进程 Linux 上的 ramdisk 的懒惰磁盘备份? 如何调用未“植根”于操作系统的程序 我从未安装过 git,为什么它在我的系统上?[重复] 在 USB 上启动 EFI 的 GRUB 时遇到问题 Ubuntu 上蓝牙耳机音质差 重新安装/升级所有 python 用户站点的软件包,而不是 Ubuntu 全局软件包 通过 find 进行的匹配中该模式出现在哪里? 屏幕保护程序文件夹在哪里