OpenSSH

软件截图:
OpenSSH
软件详细信息:
版本: 7.7 更新
上传日期: 22 Jun 18
许可: 免费
人气: 88

Rating: nan/5 (Total Votes: 0)

OpenSSH 是一个免费分发的开源软件项目,是一个库和命令行程序,它在GNU / Linux操作系统的后台运行,可以保护整个网络免受入侵者和攻击者的攻击。它是SSH(Secure Shell)规范的开源版本,专为

设计
功能一目了然

OpenSSH是一个在免费许可下分发的开源项目。它提供基于公钥,Kerberos身份验证和一次性密码标准的强身份验证,基于AES,Blowfish,Arcfour和3DES算法的强加密,通过加密整个X Window系统流量的X11转发支持,以及AFS和Kerberos票证传递。

此外,软件功能端口转发支持,通过使用单点登录(SSO)身份验证标准和SFTP(安全FTP)服务器和客户端支持加密传统协议的通道,数据压缩支持,代理转发支持SSH2或SSH1协议。

另一个有趣的功能是互操作性,这意味着该项目符合原始SSH(Secure Shell)协议的版本1.3,1.5和2.0。安装完成后,OpenSSH将自动替换标准的FTP,Telnet,RCP和rlogin程序及其安全版本,如SFTP,SCP和SSH。


引擎盖,可用性和支持的操作系统

OpenSSH项目完全用C语言编写。它由主要的SSH实现和在后台运行的SSH守护进程组成。该软件主要作为通用源存档分发,可与32位和64位架构上的任何GNU / Linux操作系统一起使用。


便携式OpenSSH

OpenSSH协议的便携版也可在Softoware上免费下载,名为Portable OpenSSH。它是用于Linux,BSD和Solaris操作系统的SSH版本1和SSH版本2协议的开源实现。

此版本中的新功能

  • 潜在的不兼容变化:
  • 此版本包含许多可能影响现有配置的更改:
  • 此版本删除了对SSH v.1协议的服务器支持。
  • ssh(1):从客户端的默认提议中删除3des-cbc。 2016年的64位分组密码并不安全,我们不想等到SWEET32之类的攻击扩展到SSH。由于3des-cbc是SSH RFC中唯一的强制密码,这可能会导致使用默认配置连接到旧设备时出现问题,但很可能这些设备已经需要显式配置密钥交换和主机密钥算法。 sshd(8):删除对预身份验证压缩的支持。在协议的早期进行压缩可能在20世纪90年代似乎是合理的,但今天在加密(参见TLS中的多个压缩oracle攻击)和攻击面方面显然是一个坏主意。默认情况下,预验证压缩支持已禁用> 10年。支持仍然在客户端。默认情况下,ssh-agent将拒绝在可信路径的白名单之外加载PKCS#11模块。可以在运行时指定路径白名单。
  • sshd(8):当证书和授权密钥/主体命令=限制中出现强制命令时,sshd现在拒绝接受证书,除非它们相同。使用证书forced-command覆盖另一个的先前(记录)行为可能有点令人困惑且容易出错。 sshd(8):删除UseLogin配置指令并支持/ bin / login管理登录会话。
  • 自OpenSSH 7.3以来的变化:
  • 安全性:
  • ssh-agent(1):现在将拒绝从受信任白名单之外的路径加载PKCS#11模块(运行时可配置)。加载模块的请求可以通过代理转发传递,攻击者可以尝试在转发的代理程序通道上加载恶意PKCS#11模块:PKCS#11模块是共享库,因此这将导致运行ssh的系统上的代码执行-agent如果攻击者控制转发的代理套接字(在运行sshd服务器的主机上)并且能够写入运行ssh-agent的主机的文件系统(通常是运行ssh客户端的主机)。项目零的Jann Horn报道。
  • sshd(8):当禁用权限分离时,转发的Unix域套接字将由sshd(8)创建,其权限为“root”而不是经过身份验证的用户。禁用权限分离时,此版本拒绝Unix域套接字转发(默认情况下已启用权限分离14年)。项目零的Jann Horn报道。
  • sshd(8):在读取密钥时,通过realloc()避免主机私钥材料理论泄漏到特权分隔的子进程。在实践中对于正常大小的密钥没有观察到这种泄漏,对子进程的泄漏也没有直接将密钥材料暴露给非特权用户。项目零的Jann Horn报道。
  • sshd(8):预身份验证压缩支持使用的共享内存管理器进行了边界检查,某些优化编译器可以省略这些检查。此外,禁用预身份验证压缩时,可能无法访问此内存管理器。这可能允许从沙盒特权分离过程中对特权监视器进程进行攻击(首先需要对后者进行妥协)。此版本从sshd(8)中删除了对预身份验证压缩的支持。 Guido Vranken使用Stack unstable优化识别工具(http://css.csail.mit.edu/stack/)报告
  • sshd(8):修复拒绝服务情况,发送多个KEXINIT消息的攻击者每个连接最多可能消耗128MB。奇虎360齿轮队的石磊报道。
  • sshd(8):在配置加载时验证AllowUser和DenyUsers指令的地址范围,并拒绝接受无效的地址范围。之前可以指定无效的CIDR地址范围(例如user@127.1.2.3/55),并且这些范围始终匹配,可能导致在无意的情况下授予访问权限。 Laurence Parry报道。
  • 新功能:
  • ssh(1):将代理多路复用模式添加到ssh(1),其灵感来自Simon Tatham的PuTTY版本。这允许多路复用客户端使用SSH数据包的子集和Unix域套接字上的通道协议与主进程通信,主进程充当转换通道ID等的代理。这允许多路复用模式运行缺少文件描述符传递的系统(由当前多路复用代码使用),并且可能与Unix域套接字转发一起,与不同机器上的客户端和多路复用主进程一起使用。可以使用“ssh -O proxy ...”
  • 来调用多路复用代理模式
  • sshd(8):添加一个sshd_config DisableForwarding选项,禁用X11,代理,TCP,隧道和Unix域套接字转发,以及我们将来可能实现的任何其他内容。与“restrict”authorized_keys标志一样,这是一种限制帐户的简单且面向未来的方式。
  • sshd(8),ssh(1):支持“curve25519-sha256”密钥交换方法。这与名为“curve25519-sha256@libssh.org"”的当前支持的方法相同。
  • sshd(8):通过检查sshd是否已在启动时进行守护进程并跳过对守护进程(3)的调用来改进对SIGHUP的处理。这确保了sshd(8)的SIGHUP重启将保留与初始执行相同的进程ID。 sshd(8)现在还将在重启SIGHUP之前取消链接PidFile,并在成功重启后重新创建它,而不是在配置错误的情况下留下过时的文件。 BZ#2641
  • sshd(8):允许ClientAliveInterval和ClientAliveCountMax指令出现在sshd_config匹配块中。
  • sshd(8):将%-escapes添加到AuthorizedPrincipalsCommand以匹配AuthorizedKeysCommand支持的那些(密钥,密钥类型,指纹等)以及其他一些内容,以提供对所提供证书内容的访问。
  • 为字符串匹配,地址匹配和字符串清理功能添加了回归测试。
  • 改进了密钥交换模糊器线束。
  • 错误修正:
  • ssh(1):允许IdentityFile成功加载和使用没有相应裸公钥的证书。 bz#2617证书id_rsa-cert.pub(没有id_rsa.pub)。
  • ssh(1):在使用多个身份验证时修复公钥身份验证,而publickey不仅是尝试的第一个方法。 BZ#2642
  • 回归:允许PuTTY互操作测试无人值守。 BZ#2639
  • ssh-agent(1),ssh(1):在尝试从PKCS#11令牌加载密钥时改进报告,减少无用的日志消息和调试消息中的更多细节。 BZ#2610
  • ssh(1):当拆除ControlMaster连接时,当LogLevel = quiet时,不要污染stderr。
  • sftp(1):On ^ Z在挂起sftp(1)之前等待基础ssh(1)挂起,以确保ssh(1)在密码提示期间挂起时正确恢复终端模式。
  • ssh(1):在密码提示期间暂停ssh(1)时避免忙等待。
  • ssh(1),sshd(8):在发送ext-info消息时正确报告错误。
  • sshd(8):如果sshd(8)收到无序的NEWKEYS消息,则修复NULL-deref崩溃。
  • sshd(8):在server-sig-algs扩展中发送的支持的签名算法的正确列表。 BZ#2547
  • sshd(8):修复了在禁用privsep时发送ext_info消息的问题。
  • sshd(8):更严格地执行用于身份验证的特权分离监视器调用的预期排序,并仅在配置中启用其各自的身份验证方法时允许它们
  • sshd(8):在getsockopt()调用中修复未初始化的optlen;在Unix / BSD上无害但在Cygwin上可能会崩溃。
  • 修复使用-fsanitize-memory编译时,explicit_bzero(3)未被识别为内存初始化程序而导致的误报报告。 sshd_config(5):使用2001:db8 :: / 32,配置示例的官方IPv6子网。
  • 可移植性:
  • 在使用土耳其语语言环境配置的环境中,回退到C / POSIX语言环境,以避免由于该语言环境对字母“i”和“I”的独特处理而导致的配置解析错误。 BZ#2643
  • sftp-server(8),ssh-agent(1):使用ptrace(PT_DENY_ATTACH,..)拒绝OS X上的ptrace
  • ssh(1),sshd(8):在旧的(~0.9.8)OpenSSL上破解AES-CTR密码。
  • 修复了在没有RIPEMD160支持的情况下编译的libcrypto的编译。
  • contrib:添加一个支持GTK + 3的gnome-ssh-askpass3。 bz#2640 sshd(8):改进PRNG重新划分特权分离并强制libcrypto在chroot或sandboxing之前获得高质量的种子。
  • 全部:明确测试破碎的strnvis。 NetBSD添加了一个strnvis,不幸的是它使它与OpenBSD和Linux的libbsd(前者存在超过十年)中的现有版本不兼容。尝试检测这个混乱,并假设我们是交叉编译的唯一安全选项。

版本中的新功能

  • 潜在的不兼容变化:
  • 此版本包含许多可能影响现有配置的更改:
  • 此版本删除了对SSH v.1协议的服务器支持。
  • ssh(1):从客户端的默认提议中删除3des-cbc。 2016年的64位分组密码并不安全,我们不想等到SWEET32之类的攻击扩展到SSH。由于3des-cbc是SSH RFC中唯一的强制密码,这可能会导致使用默认配置连接到旧设备时出现问题,但很可能这些设备已经需要显式配置密钥交换和主机密钥算法。 sshd(8):删除对预身份验证压缩的支持。在协议的早期进行压缩可能在20世纪90年代似乎是合理的,但今天在加密(参见TLS中的多个压缩oracle攻击)和攻击面方面显然是一个坏主意。默认情况下,预验证压缩支持已禁用> 10年。支持仍然在客户端。默认情况下,ssh-agent将拒绝在可信路径的白名单之外加载PKCS#11模块。可以在运行时指定路径白名单。
  • sshd(8):当证书和授权密钥/主体命令=限制中出现强制命令时,sshd现在拒绝接受证书,除非它们相同。使用证书forced-command覆盖另一个的先前(记录)行为可能有点令人困惑且容易出错。 sshd(8):删除UseLogin配置指令并支持/ bin / login管理登录会话。
  • 自OpenSSH 7.3以来的变化:
  • 安全性:
  • ssh-agent(1):现在将拒绝从受信任白名单之外的路径加载PKCS#11模块(运行时可配置)。加载模块的请求可以通过代理转发传递,攻击者可以尝试在转发的代理程序通道上加载恶意PKCS#11模块:PKCS#11模块是共享库,因此这将导致运行ssh的系统上的代码执行-agent如果攻击者控制转发的代理套接字(在运行sshd服务器的主机上)并且能够写入运行ssh-agent的主机的文件系统(通常是运行ssh客户端的主机)。项目零的Jann Horn报道。
  • sshd(8):当禁用权限分离时,转发的Unix域套接字将由sshd(8)创建,其权限为“root”而不是经过身份验证的用户。禁用权限分离时,此版本拒绝Unix域套接字转发(默认情况下已启用权限分离14年)。项目零的Jann Horn报道。
  • sshd(8):在读取密钥时,通过realloc()避免主机私钥材料理论泄漏到特权分隔的子进程。在实践中对于正常大小的密钥没有观察到这种泄漏,对子进程的泄漏也没有直接将密钥材料暴露给非特权用户。项目零的Jann Horn报道。
  • sshd(8):预身份验证压缩支持使用的共享内存管理器进行了边界检查,某些优化编译器可以省略这些检查。此外,禁用预身份验证压缩时,可能无法访问此内存管理器。这可能允许从沙盒特权分离过程中对特权监视器进程进行攻击(首先需要对后者进行妥协)。此版本从sshd(8)中删除了对预身份验证压缩的支持。 Guido Vranken使用Stack unstable优化识别工具(http://css.csail.mit.edu/stack/)报告
  • sshd(8):修复拒绝服务情况,发送多个KEXINIT消息的攻击者每个连接最多可能消耗128MB。奇虎360齿轮队的石磊报道。
  • sshd(8):在配置加载时验证AllowUser和DenyUsers指令的地址范围,并拒绝接受无效的地址范围。之前可以指定无效的CIDR地址范围(例如user@127.1.2.3/55),并且这些范围始终匹配,可能导致在无意的情况下授予访问权限。 Laurence Parry报道。
  • 新功能:
  • ssh(1):将代理多路复用模式添加到ssh(1),其灵感来自Simon Tatham的PuTTY版本。这允许多路复用客户端使用SSH数据包的子集和Unix域套接字上的通道协议与主进程通信,主进程充当转换通道ID等的代理。这允许多路复用模式运行缺少文件描述符传递的系统(由当前多路复用代码使用),并且可能与Unix域套接字转发一起,与不同机器上的客户端和多路复用主进程一起使用。可以使用“ssh -O proxy ...”
  • 来调用多路复用代理模式
  • sshd(8):添加一个sshd_config DisableForwarding选项,禁用X11,代理,TCP,隧道和Unix域套接字转发,以及我们将来可能实现的任何其他内容。与“restrict”authorized_keys标志一样,这是一种限制帐户的简单且面向未来的方式。
  • sshd(8),ssh(1):支持“curve25519-sha256”密钥交换方法。这与名为“curve25519-sha256@libssh.org"”的当前支持的方法相同。
  • sshd(8):通过检查sshd是否已在启动时进行守护进程并跳过对守护进程(3)的调用来改进对SIGHUP的处理。这确保了sshd(8)的SIGHUP重启将保留与初始执行相同的进程ID。 sshd(8)现在还将在重启SIGHUP之前取消链接PidFile,并在成功重启后重新创建它,而不是在配置错误的情况下留下过时的文件。 BZ#2641
  • sshd(8):允许ClientAliveInterval和ClientAliveCountMax指令出现在sshd_config匹配块中。
  • sshd(8):将%-escapes添加到AuthorizedPrincipalsCommand以匹配AuthorizedKeysCommand支持的那些(密钥,密钥类型,指纹等)以及其他一些内容,以提供对所提供证书内容的访问。
  • 为字符串匹配,地址匹配和字符串清理功能添加了回归测试。
  • 改进了密钥交换模糊器线束。
  • 错误修正:
  • ssh(1):允许IdentityFile成功加载和使用没有相应裸公钥的证书。 bz#2617证书id_rsa-cert.pub(没有id_rsa.pub)。
  • ssh(1):在使用多个身份验证时修复公钥身份验证,而publickey不仅是尝试的第一个方法。 BZ#2642
  • 回归:允许PuTTY互操作测试无人值守。 BZ#2639
  • ssh-agent(1),ssh(1):在尝试从PKCS#11令牌加载密钥时改进报告,减少无用的日志消息和调试消息中的更多细节。 BZ#2610
  • ssh(1):当拆除ControlMaster连接时,当LogLevel = quiet时,不要污染stderr。
  • sftp(1):On ^ Z在挂起sftp(1)之前等待基础ssh(1)挂起,以确保ssh(1)在密码提示期间挂起时正确恢复终端模式。
  • ssh(1):在密码提示期间暂停ssh(1)时避免忙等待。
  • ssh(1),sshd(8):在发送ext-info消息时正确报告错误。
  • sshd(8):如果sshd(8)收到无序的NEWKEYS消息,则修复NULL-deref崩溃。
  • sshd(8):在server-sig-algs扩展中发送的支持的签名算法的正确列表。 BZ#2547
  • sshd(8):修复了在禁用privsep时发送ext_info消息的问题。
  • sshd(8):更严格地执行用于身份验证的特权分离监视器调用的预期排序,并仅在配置中启用其各自的身份验证方法时允许它们
  • sshd(8):在getsockopt()调用中修复未初始化的optlen;在Unix / BSD上无害但在Cygwin上可能会崩溃。
  • 修复使用-fsanitize-memory编译时,explicit_bzero(3)未被识别为内存初始化程序而导致的误报报告。 sshd_config(5):使用2001:db8 :: / 32,配置示例的官方IPv6子网。
  • 可移植性:
  • 在使用土耳其语语言环境配置的环境中,回退到C / POSIX语言环境,以避免由于该语言环境对字母“i”和“I”的独特处理而导致的配置解析错误。 BZ#2643
  • sftp-server(8),ssh-agent(1):使用ptrace(PT_DENY_ATTACH,..)拒绝OS X上的ptrace
  • ssh(1),sshd(8):在旧的(~0.9.8)OpenSSL上破解AES-CTR密码。
  • 修复了在没有RIPEMD160支持的情况下编译的libcrypto的编译。
  • contrib:添加一个支持GTK + 3的gnome-ssh-askpass3。 bz#2640 sshd(8):改进PRNG重新划分特权分离并强制libcrypto在chroot或sandboxing之前获得高质量的种子。
  • 全部:明确测试破碎的strnvis。 NetBSD添加了一个strnvis,不幸的是它使它与OpenBSD和Linux的libbsd(前者存在超过十年)中的现有版本不兼容。尝试检测这个混乱,并假设我们是交叉编译的唯一安全选项。

7.4版中的新功能

  • 潜在的不兼容变化:
  • 此版本包含许多可能影响现有配置的更改:
  • 此版本删除了对SSH v.1协议的服务器支持。
  • ssh(1):从客户端的默认提议中删除3des-cbc。 2016年的64位分组密码并不安全,我们不想等到SWEET32之类的攻击扩展到SSH。由于3des-cbc是SSH RFC中唯一的强制密码,这可能会导致使用默认配置连接到旧设备时出现问题,但很可能这些设备已经需要显式配置密钥交换和主机密钥算法。 sshd(8):删除对预身份验证压缩的支持。在协议的早期进行压缩可能在20世纪90年代似乎是合理的,但今天在加密(参见TLS中的多个压缩oracle攻击)和攻击面方面显然是一个坏主意。默认情况下,预验证压缩支持已禁用> 10年。支持仍然在客户端。默认情况下,ssh-agent将拒绝在可信路径的白名单之外加载PKCS#11模块。可以在运行时指定路径白名单。
  • sshd(8):当证书和授权密钥/主体命令=限制中出现强制命令时,sshd现在拒绝接受证书,除非它们相同。使用证书forced-command覆盖另一个的先前(记录)行为可能有点令人困惑且容易出错。 sshd(8):删除UseLogin配置指令并支持/ bin / login管理登录会话。
  • 自OpenSSH 7.3以来的变化:
  • 安全性:
  • ssh-agent(1):现在将拒绝从受信任白名单之外的路径加载PKCS#11模块(运行时可配置)。加载模块的请求可以通过代理转发传递,攻击者可以尝试在转发的代理程序通道上加载恶意PKCS#11模块:PKCS#11模块是共享库,因此这将导致运行ssh的系统上的代码执行-agent如果攻击者控制转发的代理套接字(在运行sshd服务器的主机上)并且能够写入运行ssh-agent的主机的文件系统(通常是运行ssh客户端的主机)。项目零的Jann Horn报道。
  • sshd(8):当禁用权限分离时,转发的Unix域套接字将由sshd(8)创建,其权限为“root”而不是经过身份验证的用户。禁用权限分离时,此版本拒绝Unix域套接字转发(默认情况下已启用权限分离14年)。项目零的Jann Horn报道。
  • sshd(8):在读取密钥时,通过realloc()避免主机私钥材料理论泄漏到特权分隔的子进程。在实践中对于正常大小的密钥没有观察到这种泄漏,对子进程的泄漏也没有直接将密钥材料暴露给非特权用户。项目零的Jann Horn报道。
  • sshd(8):预身份验证压缩支持使用的共享内存管理器进行了边界检查,某些优化编译器可以省略这些检查。此外,禁用预身份验证压缩时,可能无法访问此内存管理器。这可能允许从沙盒特权分离过程中对特权监视器进程进行攻击(首先需要对后者进行妥协)。此版本从sshd(8)中删除了对预身份验证压缩的支持。 Guido Vranken使用Stack unstable优化识别工具(http://css.csail.mit.edu/stack/)报告
  • sshd(8):修复拒绝服务情况,发送多个KEXINIT消息的攻击者每个连接最多可能消耗128MB。奇虎360齿轮队的石磊报道。
  • sshd(8):在配置加载时验证AllowUser和DenyUsers指令的地址范围,并拒绝接受无效的地址范围。之前可以指定无效的CIDR地址范围(例如user@127.1.2.3/55),并且这些范围始终匹配,可能导致在无意的情况下授予访问权限。 Laurence Parry报道。
  • 新功能:
  • ssh(1):将代理多路复用模式添加到ssh(1),其灵感来自Simon Tatham的PuTTY版本。这允许多路复用客户端使用SSH数据包的子集和Unix域套接字上的通道协议与主进程通信,主进程充当转换通道ID等的代理。这允许多路复用模式运行缺少文件描述符传递的系统(由当前多路复用代码使用),并且可能与Unix域套接字转发一起,与不同机器上的客户端和多路复用主进程一起使用。可以使用“ssh -O proxy ...”
  • 调用多路复用代理模式
  • sshd(8):添加一个sshd_config DisableForwarding选项,禁用X11,代理,TCP,隧道和Unix域套接字转发,以及我们将来可能实现的任何其他内容。与“restrict”authorized_keys标志一样,这是一种限制帐户的简单且面向未来的方式。
  • sshd(8),ssh(1):支持“curve25519-sha256”密钥交换方法。这与名为“curve25519-sha256@libssh.org”的当前支持的方法相同。
  • sshd(8):通过检查sshd是否已在启动时进行守护进程并跳过对守护进程(3)的调用来改进对SIGHUP的处理。这确保了sshd(8)的SIGHUP重启将保留与初始执行相同的进程ID。 sshd(8)现在还将在重启SIGHUP之前取消链接PidFile,并在成功重启后重新创建它,而不是在配置错误的情况下留下过时的文件。 BZ#2641
  • sshd(8):允许ClientAliveInterval和ClientAliveCountMax指令出现在sshd_config匹配块中。
  • sshd(8):将%-escapes添加到AuthorizedPrincipalsCommand以匹配AuthorizedKeysCommand支持的那些(密钥,密钥类型,指纹等)以及其他一些内容,以提供对所提供证书内容的访问。
  • 为字符串匹配,地址匹配和字符串清理功能添加了回归测试。
  • 改进了密钥交换模糊器线束。
  • 错误修正:
  • ssh(1):允许IdentityFile成功加载和使用没有相应裸公钥的证书。 bz#2617证书id_rsa-cert.pub(没有id_rsa.pub)。
  • ssh(1):在使用多个身份验证时修复公钥身份验证,而publickey不仅是尝试的第一个方法。 BZ#2642
  • 回归:允许PuTTY互操作测试无人值守。 BZ#2639
  • ssh-agent(1),ssh(1):在尝试从PKCS#11令牌加载密钥时改进报告,减少无用的日志消息和调试消息中的更多细节。 BZ#2610
  • ssh(1):当拆除ControlMaster连接时,当LogLevel = quiet时,不要污染stderr。
  • sftp(1):On ^ Z在挂起sftp(1)之前等待基础ssh(1)挂起,以确保ssh(1)在密码提示期间挂起时正确恢复终端模式。
  • ssh(1):在密码提示期间暂停ssh(1)时避免忙等待。
  • ssh(1),sshd(8):在发送ext-info消息时正确报告错误。
  • sshd(8):如果sshd(8)收到无序的NEWKEYS消息,则修复NULL-deref崩溃。
  • sshd(8):在server-sig-algs扩展中发送的支持的签名算法的正确列表。 BZ#2547
  • sshd(8):修复了在禁用privsep时发送ext_info消息的问题。
  • sshd(8):更严格地执行用于身份验证的特权分离监视器调用的预期排序,并仅在配置中启用其各自的身份验证方法时允许它们
  • sshd(8):在getsockopt()调用中修复未初始化的optlen;在Unix / BSD上无害但在Cygwin上可能会崩溃。
  • 修复使用-fsanitize-memory编译时,explicit_bzero(3)未被识别为内存初始化程序而导致的误报报告。 sshd_config(5):使用2001:db8 :: / 32,配置示例的官方IPv6子网。
  • 可移植性:
  • 在使用土耳其语语言环境配置的环境中,回退到C / POSIX语言环境,以避免由于该语言环境对字母“i”和“I”的独特处理而导致的配置解析错误。 BZ#2643
  • sftp-server(8),ssh-agent(1):使用ptrace(PT_DENY_ATTACH,..)拒绝OS X上的ptrace
  • ssh(1),sshd(8):在旧的(~0.9.8)OpenSSL上破解AES-CTR密码。
  • 修复了在没有RIPEMD160支持的情况下编译的libcrypto的编译。
  • contrib:添加一个支持GTK + 3的gnome-ssh-askpass3。 bz#2640 sshd(8):改进PRNG重新划分特权分离并强制libcrypto在chroot或sandboxing之前获得高质量的种子。
  • 全部:明确测试破碎的strnvis。 NetBSD添加了一个strnvis,不幸的是它使它与OpenBSD和Linux的libbsd(前者存在超过十年)中的现有版本不兼容。尝试检测这个混乱,并假设我们是交叉编译的唯一安全选项。

7.3版中的新功能

  • 安全性:
  • sshd(8):通过sshd(8)缓解对系统crypt(3)功能的潜在拒绝服务攻击。攻击者可能会发送非常长的密码,这会导致在密码中使用过多的CPU(3)。 sshd(8)现在拒绝接受长度大于1024个字符的密码验证请求。由Tomas Kuthan(甲骨文),Andres Rojas和Javier Nieto独立报道。
  • sshd(8):在发送长密码并在服务器上使用特定密码哈希算法时,缓解密码身份验证中的时序差异,该身份验证可用于从无效帐户名中辨别有效。 CVE-2016-6210,由edd.com的EddieEzra.Harari报道
  • ssh(1),sshd(8):修复CBC填充oracle对策中可观察到的时序弱点。由Jean Paul Degabriele,Kenny Paterson,Torben Hansen和Martin Albrecht报道。请注意,默认情况下禁用CBC密码,仅包括旧版兼容性。
  • ssh(1),sshd(8):改进加密然后MAC(EtM)模式传输MAC算法的MAC验证的操作顺序,以在解密任何密文之前验证MAC。这消除了时间差异泄露关于明文的事实的可能性,尽管没有观察到这种泄漏。由Jean Paul Degabriele,Kenny Paterson,Torben Hansen和Martin Albrecht报道。 sshd(8):(仅可移植)当UseLogin = yes时忽略PAM环境变量。如果PAM配置为读取用户指定的环境变量并且在sshd_config中使用UseLogin = yes,则恶意本地用户可以通过LD_PRELOAD或通过PAM设置的类似环境变量攻击/ bin / login。 CVE-2015-8325,由Shayan Sadigh发现。
  • 新功能:
  • ssh(1):添加一个ProxyJump选项和相应的-J命令行标志,以允许通过一个或多个SSH堡垒或“跳转主机”简化间接。
  • ssh(1):添加IdentityAgent选项以允许指定特定代理套接字,而不是从环境接受一个代理套接字。 ssh(1):当使用ssh -W时,允许可选地覆盖ExitOnForwardFailure和ClearAllForwardings。 BZ#2577
  • ssh(1),sshd(8):根据draft-sgtatham-secsh-iutf8-00实现对IUTF8终端模式的支持。 ssh(1),sshd(8):从draft-ietf-curdle-ssh-kex-sha2-03添加对其他固定Diffie-Hellman 2K,4K和8K组的支持。
  • ssh-keygen(1),ssh(1),sshd(8):支持证书中的SHA256和SHA512 RSA签名; ssh(1):为ssh_config(5)文件添加Include指令。
  • ssh(1):允许从服务器发送的预认证横幅中的UTF-8字符。 BZ#2058
  • 错误修正:
  • ssh(1),sshd(8):从LOG_CRIT中减少一些相对常见的协议事件的syslog级别。 BZ#2585
  • sshd(8):在配置中拒绝AuthenticationMethods =“”并接受AuthenticationMethods = any表示不需要多次身份验证的默认行为。 BZ#2398
  • sshd(8):删除过时的和误导性的“可能的突然袭击!”正向和反向DNS不匹配时的消息。 BZ#2585
  • ssh(1):关闭ControlPersist后台进程stderr,但在调试模式下或登录到syslog时除外。 BZ#1988
  • misc:为direct-streamlocal@openssh.com创建PROTOCOL描述。通道打开消息匹配已部署的代码。 BZ#2529
  • ssh(1):重复使用LocalForward和RemoteForward条目以在启用ExitOnForwardFailure和hostname规范化时修复失败。 BZ#2562
  • sshd(8):从模数中删除回退到2001年弃用的过时“primes”文件.bz#2559。
  • sshd_config(5):UseDNS的正确描述:它影响authorized_keys的ssh主机名处理,而不是known_hosts; bz#2554 ssh(1):使用代理中的单独证书密钥修复身份验证,而不在文件系统上使用相应的私钥。 BZ#2550
  • sshd(8):在设置基于时间的RekeyLimit时发送ClientAliveInterval ping;以前的keepalive数据包没有被发送。 BZ#2252

7.2版中的新功能

  • 安全性:
  • ssh(1),sshd(8):删除未完成和未使用的漫游代码(在OpenSSH 7.1p2中已被强制禁用)。
  • ssh(1):当X服务器禁用SECURITY扩展时,消除从不受信任的X11转发到可信转发的回退。
  • ssh(1),sshd(8):将diffie-hellman-group-exchange支持的最小模数大小增加到2048位。
  • sshd(8):现在默认启用pre-auth沙盒(之前的版本通过sshd_config为新安装启用了它)。
  • 新功能:
  • all:使用基于draft-rsa-dsa-sha2-256-03.txt和draft-ssh-ext-info-04.txt的SHA-256/512哈希算法添加对RSA签名的支持。
  • ssh(1):添加AddKeysToAgent客户端选项,可以设置为“yes”,“no”,“ask”或“confirm”,默认为“no”。启用后,身份验证期间使用的私钥将添加到ssh-agent(如果正在运行)(如果设置为“确认”,则启用确认)。
  • sshd(8):添加一个新的authorized_keys选项“restrict”,其中包括所有当前和未来的密钥限制(no - * - 转发等)。还要添加现有限制的许可版本,例如“no-pty” - > “PTY”。这简化了设置受限密钥的任务,并确保它们受到最大限制,无论我们将来可能实现的任何权限如何。 ssh(1):添加ssh_config CertificateFile选项以显式列出证书。 BZ#2436
  • ssh-keygen(1):允许ssh-keygen更改所有支持格式的密钥注释。
  • ssh-keygen(1):允许从标准输入进行指纹识别,例如: “ssh-keygen -lf - ”
  • ssh-keygen(1):允许对文件中的多个公钥进行指纹识别,例如: “ssh-keygen -lf~ / .ssh / authorized_keys”bz#1319
  • sshd(8):支持“none”作为sshd_config Foreground和ChrootDirectory的参数。有用的匹配块可覆盖全局默认值。 BZ#2486
  • ssh-keygen(1):支持多个证书(每行一个)并从标准输入读取(使用“-f - ”)“ssh-keygen -L”ssh-keyscan(1):添加“ssh- keyscan -c ...“标志允许获取证书而不是普通密钥。
  • ssh(1):更好地处理主机名规范化中的锚定FQDN(例如'cvs.openbsd.org。') - 将它们视为已经规范并删除尾随'。'在匹配ssh_config之前。
  • 错误修正:
  • sftp(1):现有的目标目录不应该终止递归上传(在openssh 6.8中回归)bz#2528
  • ssh(1),sshd(8):在密钥交换期间正确发回SSH2_MSG_UNIMPLEMENTED回复意外消息。 BZ#2949
  • ssh(1):拒绝尝试设置ConnectionAttempts = 0,这没有意义,会导致ssh打印未初始化的堆栈变量。 BZ#2500
  • ssh(1):尝试连接到启用了主机名规范化的作用域IPv6地址时修复错误。
  • sshd_config(5):列出匹配块中可用的更多选项。 BZ#2489
  • sshd(8):在Match块中修复“PubkeyAcceptedKeyTypes + ...”。 ssh(1):在检查标识文件是否存在之前,在传递给-i选项的文件名中展开波形符。避免shell不扩展的情况混淆(例如“-i~ / file”与“-i~ / file”)。 BZ#2481
  • ssh(1):不要在配置文件中的“Match exec”运行的shell命令前加上“exec”,这可能会导致某些命令在某些环境中失败。 BZ#2471
  • ssh-keyscan(1):在主机散列或非标准端口正在使用时,在一行上修复多个主机/地址的输出bz#2479
  • sshd(8):当ChrootDirectory处于活动状态时,跳过“无法访问chdir到主目录”消息。 BZ#2485
  • ssh(1):在ssh -G配置转储中包含PubkeyAcceptedKeyTypes。 sshd(8):如果已经满足需要,请避免更改TunnelForwarding设备标志;如果预先建立了设备权限和接口标志,则可以将tun / tap网络用作非root用户
  • ssh(1),sshd(8):一个数据包可能超过RekeyLimits。 BZ#2521
  • ssh(1):修复多路复用主机故障,注意客户端退出。
  • ssh(1),ssh-agent(1):对于出现空密钥ID的PKCS11令牌,请避免致命()。 BZ#1773
  • sshd(8):避免使用NULL参数的printf。 BZ#2535
  • ssh(1),sshd(8):允许RekeyLimits大于4GB。 BZ#2521
  • ssh-keygen(1):sshd(8):修复(未使用的)KRL签名支持中的几个错误。
  • ssh(1),sshd(8):修复与使用协议的密钥交换猜测功能的对等方的连接。 BZ#2515
  • sshd(8):在日志消息中包含远程端口号。 BZ#2503
  • ssh(1):在没有SSHv1支持的情况下编译时,不要尝试加载SSHv1私钥。 BZ#2505
  • ssh-agent(1),ssh(1):在密钥加载和签名错误期间修复不正确的错误消息。 BZ#2507
  • ssh-keygen(1):当known_hosts不存在时,在执行known_hosts文件编辑时不要留下空的临时文件。
  • sshd(8):针对未分配端口的请求的tcpip-forward回复的正确数据包格式bz#2509
  • ssh(1),sshd(8):修复可能挂起的闭合输出。 bz#2469 ssh(1):将ControlPath中的%i扩展为UID。 BZ#2449
  • ssh(1),sshd(8):修复openssh_RSA_verify的返回类型。 BZ#2460
  • ssh(1),sshd(8):修复一些解析内存泄漏的选项。 BZ#2182
  • ssh(1):在DNS解析之前添加一些调试输出;在没有响应的DNS服务器的情况下,ssh可能会先默默地停止运行。 bz#2433 ssh(1):删除visual hostkey中的虚假换行符。 BZ#2686
  • ssh(1):修复HostKeyAlgorithms的打印(ssh -G ...)= + ...
  • ssh(1):修复HostkeyAlgorithms = + ...
  • 的扩展
  • 文档:
  • ssh_config(5),sshd_config(5):更新默认算法列表以匹配当前现实。 BZ#2527
  • ssh(1):提及-Q key-plain和-Q key-cert查询选项。 BZ#2455
  • sshd_config(8):更清楚地描述AuthorizedKeysFile = none的内容。
  • ssh_config(5):更好的文档ExitOnForwardFailure。 BZ#2444
  • sshd(5):在手册中提及内部DH-GEX后备组。 BZ#2302
  • sshd_config(5):MaxSessions选项的更好描述。 BZ#2531
  • 可移植性:
  • ssh(1),sftp-server(8),ssh-agent(1),sshd(8):支持Illumos / Solaris细粒度权限。包括一个pre-auth privsep沙箱和几个pledge()仿真。 BZ#2511
  • 翻新redhat / openssh.spec,删除已弃用的选项和语法。
  • configure:allow --without-ssl-engine with --without-openssl
  • sshd(8):使用S / Key修复多重身份验证。 BZ#2502
  • sshd(8):从libcrypto读取RAND_before删除权限。使用BoringSSL避免沙箱违规。
  • 修复与系统提供的glob(3)函数的名称冲突。 BZ#2463
  • 在生成主机密钥时调整Makefile以使用ssh-keygen -A。 BZ#2459
  • configure:--with-ssh1 bz#2457
  • 的正确默认值
  • configure:更好地检测_res符号bz#2259
  • 在Linux上支持getrandom()系统调用

7.1版中的新功能

  • 安全性:
  • sshd(8):OpenSSH 7.0在PermitRootLogin = prohibit-password / without-password中包含一个逻辑错误,根据编译时配置,它可以允许对root进行密码验证,同时阻止其他形式的验证。 Mantas Mikulenas报告了这个问题。
  • 错误修正:
  • ssh(1),sshd(8):为FuTTY添加兼容性解决方法
  • ssh(1),sshd(8):改进WinSCP的兼容性解决方法
  • 在ssh(1)和ssh-keygen(1)中修复了许多内存错误(双重释放,没有未初始化的内存等)。 Mateusz Kocielski报道。

显影剂的其他软件 OpenBSD Project

Portable OpenSSH
Portable OpenSSH

22 Jun 18

OpenSMTPD
OpenSMTPD

28 Sep 15

意见 OpenSSH

评论没有发现
添加评论
打开图片!