经过四个月的开发 发布了新版 OpenSSH 8.7 在其中 添加了实验性数据传输模式 scp 使用 SFTP 协议而不是传统使用的 SCP/RCP 协议。
SFTP 使用更可预测的方法来处理名称 并且它没有在另一台主机端使用 glob shell 模板处理,这带来了安全问题,加上 '-s' 标志已被提议在 scp 中启用 SFTP,但计划在未来更改为该协议默认。
另一个引人注目的变化是 实现 SFTP 扩展以扩展路由的 sftp-server ~ / 和 ~ user /,这是 scp 所必需的。 公用事业 scp 改变了在两个远程主机之间复制文件时的行为,现在默认情况下通过中间本地主机完成。 这种方法避免了将不必要的凭据传输到第一台主机和 shell 中文件名的三重解释(在源、目标和本地系统端),以及在使用 SFTP 时,它允许您在以下情况下使用所有方法身份验证访问远程主机,而不仅仅是非交互式方法
另外, ssh 和 sshd 都将客户端和服务器都移动到使用文件解析器 的配置 更严格的使用 shell 规则 处理引号、空格和转义字符。
新的解析器也不会忽略传递的假设,例如省略选项中的参数(例如,现在您不能将 DenyUsers 指令留空)、未关闭的引号和指定多个“=”符号。
当使用 DNS SSHFP 记录验证密钥时,ssh 现在验证所有匹配的记录,而不仅仅是那些包含特定类型的数字签名的记录。 在 ssh-keygen 中,当使用 -Ochallenge 选项生成 FIDO 密钥时,内置层现在用于散列,而不是 libfido2 工具,允许您使用大于或小于 32 字节的挑战序列。 在 sshd 中,当处理 authorized_keys 文件中的 environment = "..." 指令时,现在接受第一个匹配项,并且 1024 个环境变量名称的限制生效。
OpenSSH 开发人员也可以警告转移到过时算法的类别 使用 SHA-1 哈希,由于具有给定前缀的碰撞攻击的效率更高(碰撞选择的成本估计约为 50 美元)。
在下一个版本中,计划在默认情况下禁用使用“ssh-rsa”公钥数字签名算法的能力,该算法在原始 RFC 中针对 SSH 协议有提及,并且在实践中仍然广泛使用。
要在系统上测试 ssh-rsa 的使用,您可以尝试通过 ssh 使用选项“-oHostKeyAlgorithms = -ssh-rsa”进行连接。 同时,默认禁用“ssh-rsa”数字签名并不意味着完全拒绝使用 RSA 密钥,因为除了 SHA-1 之外,SSH 协议还允许使用其他算法来计算哈希值。 特别是,除了“ssh-rsa”之外,还可以使用链接“rsa-sha2-256”(RSA / SHA256)和“rsa-sha2-512”(RSA / SHA512).
为了顺利过渡到 OpenSSH 中的新算法,UpdateHostKeys 设置以前默认启用,允许您自动将客户端切换到更可靠的算法。
最后,如果您想了解更多有关此新版本的信息,可以咨询详细信息。 通过转到以下链接。
如何在Linux上安装OpenSSH 8.7?
对于那些对能够在其系统上安装此新版本的OpenSSH感兴趣的人, 现在他们可以做到 下载此源代码并 在他们的计算机上执行编译。
这是因为新版本尚未包含在主要Linux发行版的存储库中。 要获取源代码,您可以从 以下链接.
完成下载, 现在,我们将使用以下命令解压缩该软件包:
tar -xvf openssh-8.7.tar.gz
我们输入创建的目录:
cd openssh-8.7
Y 我们可以用 以下命令:
./configure --prefix=/opt --sysconfdir=/etc/ssh make make install