OpenBSD 5.8 规范公布下载，此版本是第 38 个依据CD-ROM 的本子(and 39th via
OpenBSD 5.6 终于公布了，该版本接收 LibreSSL 代替OpenSSL；改善对硬件的帮助；升高网络帮衬，改过安装程序等等，详情请看批零表明。
操作系统 OpenBSD 的开荒者除了听歌，还很会玩的每间距 五个月（同步版本更新节奏）选出一首与软件非常的歌曲，并视作“主题曲”举行公布。
乘势 OpenBSD 6.1 的宣告，新的音乐也已公布 —— “温特 of 95”(MP3
- Improved hardware support, including:
o New rtwn(4) driver for Realtek RTL8188CE wifi cards.
o New hpb(4) driver for HyperTransport bridges as found in the IBM
o The ugold(4) driver now supports TEMPerHUMV1.x temperature and
o Improved sensor support for the upd(4) driver for USB Power
o Support for jumbo frames on re(4) devices using RTL8168C/D/E/F/G
and RTL8411, including PC Engines APU.
o re(4) now works with newer devices e.g. RTL8111GU.
o Partial support has been added for full-speed isochronous devices
in ehci(4), allowing USB 1.1 audio devices to be used on
EHCI-only systems in some cases.
o Improved macppc stability and G5 performances with MP kernels.
o acpicpu(4) uses ACPI C-state information to reduce power
consumption of idle CPUs.
o Kernel supports x86 AVX instructions on CPUs that have them.
o Avoid assigning low address to PCI BARs, fixing various issues on
machines whose BIOSes neglect to claim low memory.
o wscons(4) works with even more odd trackpads.
o Added pvbus(4) paravirtual device tree root on virtual machines
that are running on hypervisors.
o New octdwctwo(4) driver for USB support on OpenBSD/octeon.
o New amdcf(4) driver for embedded flash on OpenBSD/octeon.
o Support for RTL8188EU devices was added to the urtwn(4) driver.
- Removed hardware support:
o The lmc(4) driver for Lan Media Corporation SSI/T1/DS1/HSSI/DS3
devices has been removed.
o The san(4) driver for Sangoma Technologies AFT T1/E1 devices has
- Generic network stack improvements:
o MTU of vlan(4) devices can now be set independently from the
parent interface's MTU.
o The same network range can now be assigned to multiple
interfaces, using interface priorities to choose between them.
o New MPLS pseudowire driver mpw(4).
o Much preparatory work for MP unlocking of the network stack.
- Installer improvements:
o The logic of the 'Allow root ssh login?' question has been
- The default answer is now 'no'.
- 'prohibit-password' has been added to the list of possible
o autoinstall(8) has been extended to allow
- hostname-mode.conf response file names.
- response files to be placed in a subdir of the webserver's
- passing a template file to disklabel(8) to automatically
partition the disk.
o ntpd(8) is now enabled by default at install time.
o DUID support has improved enough that new installs now use them
o Installing sets from CD-ROM has been fixed if more than one
CD-ROM drive is present.
o The 'Which CD-ROM contains the install media?' question has been
removed. Available cdrom devices are now shown directly in the
'Location of sets?' prompt.
- Routing daemons and other userland network improvements:
o Many improvements and simplifications in ldpd(8), including
configuration reload and support for mpw(4) pseudowire interfaces.
o bgpd(8) now allows rules to match on the peer AS number.
o For terminated BGP sessions, bgpctl(8) now displays the number of
prefixes received on the last session.
o ospfd(8) now correctly handles carp(4) interfaces in "backup" mode
o Log messages in bgpd(8) and ospfd(8) have been made more specific.
o The default Diffie-Hellman group for VPNs configured by
ipsec.conf(5) has been changed to modp3072.
o New radiusd(8), Remote Authentication Dial In User Service
- Security improvements:
o sudo in base has been replaced with doas(1), sudo is available as
o file(1) has been replaced with a new modern implementation,
including sandbox and privilege separation.
o pax(1) (and tar(1) and cpio(1)) now prevent archive extraction
from escaping the current directory via symlinks; tar(1) without
-P option now strips up through any ".." path components.
o Static PIE support for sparc.
o Alpha switched to secure PLT.
o Improved kernel checks of ELF headers.
o Support for the NX (No-eXecute) bit on i386, resulting in much
better W^X enforcement in userland for hardware that has this
o Enforcement of W^X in the kernel address space on i386 when using
processors with the NX bit.
o Work started on a new process-containment facility called tame(2).
- Assorted improvements:
o The worm(6) now grows at a rate proportional to terminal size.
o dlclose(3) now unregisters handlers registered by a
pthread_atfork(3) call from the unloaded libraries.
o cp(1), mv(1), and pax(1) with the -rw option now preserve
timestamps with full nanosecond precision.
o pax(1) now detects failure to decompress an archive when reading
it and errors out immediately.
o nm(1) now supports the -D option for displaying the dynamic symbol
o dump(8) now uses DUIDs in /etc/dumpdates when present and the -U
option has thus been removed.
o Corrected kdump(1) reporting of lseek(2) return value on ILP32
archs and getsockopt/setsockopt(2) level and optname arguments.
iovec, msghdr, and cmsghdr structures are now dumped.
o sed(1) -i option added.
o New, much simpler man.conf(5) configuration file format for
man(1), apropos(1), and makewhatis(8).
o When using man(1) with the less(1) pager, support the :t internal
command to search for definitions of keywords similar to what
o Improvements in checking of numeric option values in many
o Upgraded to binutils version 2.17 with additional fixes.
o Improved correctness of poll(2) and poll(2) of O_RDONLY FIFO fds.
o Restored reporting of closed sockets by netstat(1) and systat(1).
o fdisk(8) now zeros correct GPT sector at end of disk.
o fdisk(8) now accepts 'T' sizes for terabytes.
o fdisk(8) repaired to work on 4K sector disks again.
o dhcpd(8) now logs correct giaddr and ciaddr information even when
DHCP relays are present.
o dhcpd(8) now accommodates Linux and MS clients by not sending
routers or static routes info when classless static routes are
o dhcpd(8) and dhclient(8) now accept hostnames beginning with a
o dhclient(8) no longer rejects leases with addresses overlapping
existing subnets on other interfaces. Kernel routing logic now
o Improvements to realloc(3) decrease system calls and increase
o The reaper now tears down dead processes without holding on to the
kernel lock. This greatly reduces latency and increases
performance on multi-processor systems.
- OpenBSD httpd(8):
o New features:
- Added support for matching and redirections with Lua
- Implemented If-Modified-Since for conditional GET or HEAD
requests (RFC 7232).
- Added byte-range support for range requests (RFC 7233).
- Allowing to specify a global or per-location default media
type instead of application/octet-stream.
- Added support for HTTP Strict Transport Security (HSTS; RFC
- Added initial regression test suite based on relayd(8)'s
o Fixes and improvements:
- TLS in httpd(8) and relayd(8) now defaults to TLSv1.2-only.
- Fixed support for large TLS keys or certificate bundles with
up to 16KB each.
- Fixed the Content-Length header for files larger than 2 GB on
- Fixed translation of CGI environment variables in accordance
with RFCs 7230 and 3875.
- Improved memory usage and fixed possible memory exhaustion on
large file transfers.
- Added URL-encoding of specific CGI variables before using
them in the Location header.
- Prepend files or directories containing ":" with "./" in
directory indexes as per RFC 3986.
- Allowing to specify characters like "?" in the Location URI.
- Various other bug fixes and improvements.
- OpenSMTPD 5.4.4
o smtpd(8) reliability and bug fixes.
o NOTE: Some security risks were discovered and fixed after the
OpenBSD 5.8 release. See 5.8 errata 004.
- OpenSSH 7.0:
- ssh(1): when forwarding X11 connections with
ForwardX11Trusted=no, connections made after
ForwardX11Timeout expired could be permitted and no longer
subject to XSECURITY restrictions because of an ineffective
timeout check in ssh(1) coupled with "fail open" behaviour in
the X11 server when clients attempted connections with
expired credentials. This problem was reported by Jann Horn.
- ssh-agent(1): fix weakness of agent locking (ssh-add -x) to
password guessing by implementing an increasing failure
delay, storing a salted hash of the password rather than the
password itself and using a timing-safe comparison function
for verifying unlock attempts. This problem was reported by
- sshd(8): OpenSSH 6.8 and 6.9 incorrectly set TTYs to be
world-writable. Local attackers may be able to write
arbitrary messages to logged-in users, including terminal
- sshd(8): fix circumvention of MaxAuthTries using
keyboard-interactive authentication. By specifying a long,
repeating keyboard-interactive "devices" string, an attacker
could request the same authentication method be tried
thousands of times in a single pass. The LoginGraceTime
timeout in sshd(8) and any authentication failure delays
implemented by the authentication mechanism itself were still
o Potentially-incompatible changes:
- Support for the legacy SSH version 1 protocol is disabled by
default at compile time.
- Support for the 1024-bit diffie-hellman-group1-sha1 key
exchange is disabled by default at run-time. It may be
re-enabled using the instructions at
- Support for ssh-dss, ssh-dss-cert-* host and user keys is
disabled by default at run-time. These may be re-enabled
using the instructions at http://www.openssh.com/legacy.html.
- Support for the legacy v00 cert format has been removed.
- The default for the sshd_config(5) PermitRootLogin option has
changed from "yes" to "prohibit-password" (but the OpenBSD
installer defaults to "no").
- NOTE: 'PermitRootLogin prohibit-password' is subtly broken in
the OpenBSD 5.8 / OpenSSH 7.0; see 5.8 errata 001.
o New/changed features:
- ssh(1), sshd(8): promote email@example.com to be
the default cipher.
- sshd(8): support admin-specified arguments to
- sshd(8): add AuthorizedPrincipalsCommand that allows
retrieving authorized principals information from a
subprocess rather than a file.
- ssh(1), ssh-add(1): support PKCS#11 devices with external PIN
entry devices. (bz#2240)
- sshd(8): allow GSSAPI host credential check to be relaxed for
multihomed hosts via GSSAPIStrictAcceptorCheck option.
- ssh-keygen(1): support ssh-keygen -lF hostname to search
known_hosts and print key hashes rather than full keys.
- ssh-agent(1): add -D flag to leave ssh-agent(1) in foreground
without enabling debug mode. (bz#2381)
- ssh_config(5): add PubkeyAcceptedKeyTypes option to control
which public key types are available for user authentication.
- sshd_config(5): add HostKeyAlgorithms option to control which
public key types are offered for host authentications.
- ssh(1), sshd(8): extend Ciphers, MACs, KexAlgorithms,
HostKeyAlgorithms, PubkeyAcceptedKeyTypes and
HostbasedKeyTypes options to allow appending to the default
set of algorithms instead of replacing it. Options may now be
prefixed with a + to append to the default, e.g.
o The following significant bugs have been fixed in this release:
- ssh(1), sshd(8): deprecate legacy
SSH2_MSG_KEX_DH_GEX_REQUEST_OLD message and do not try to use
it against some 3rd-party SSH implementations that use it
(older PuTTY, WinSCP).
- Many fixes for problems caused by compile-time deactivation
of SSH1 support. (including bz#2369)
- ssh(1), sshd(8): cap DH-GEX group size at 4Kbits for Cisco
implementations as some would fail when attempting to use
group sizes greater than 4K. (bz#2209)
- ssh(1): fix out-of-bound read in EscapeChar configuration
option parsing. (bz#2396)
- sshd(8): fix application of PermitTunnel, LoginGraceTime,
AuthenticationMethods and StreamLocalBindMask options in
- ssh(1), sshd(8): improve disconnection message on TCP reset.
- ssh(1): remove failed remote forwards established by
multiplexing from the list of active forwards. (bz#2363)
- sshd(8): make parsing of authorized_keys "environment="
options independent of PermitUserEnv being enabled. (bz#2329)
- sshd(8): fix post-auth crash with permitopen=none. (bz#2355)
- ssh(1), ssh-add(1), ssh-keygen(1): allow new-format private
keys to be encrypted with AEAD ciphers. (bz#2366)
- ssh(1): allow ListenAddress, Port and AddressFamily
configuration options to appear in any order. (bz#86)
- sshd(8): check for and reject missing arguments for
VersionAddendum and ForceCommand. (bz#2281)
- ssh(1), sshd(8): don't treat unknown certificate extensions
as fatal. (bz#2387)
- ssh-keygen(1): make stdout and stderr output consistent.
- ssh(1): mention missing DISPLAY environment in debug log when
X11 forwarding requested. (bz#1682)
- sshd(8): correctly record login when UseLogin is set.
- sshd(8): add some missing options to sshd -T output and fix
output of VersionAddendum and HostCertificate. (bz#2346)
- Document and improve consistency of options that accept a
"none" argument: TrustedUserCAKeys, RevokedKeys (bz#2382),
- ssh(1): include remote username in debug output. (bz#2368)
- sshd(8): avoid compatibility problem with some versions of
Tera Term, which would crash when they received the hostkeys
notification message (firstname.lastname@example.org).
- sshd(8): mention ssh-keygen -E as useful when comparing
legacy MD5 host key fingerprints. (bz#2332)
- ssh(1): clarify pseudo-terminal request behaviour and use
make manual language consistent. (bz#1716)
- ssh(1): document that the TERM environment variable is not
subject to SendEnv and AcceptEnv. (bz#2386)
- ssh(1), sshd(8): add compatability workarounds for Cisco and
more PuTTY versions. (bz#2424)
- Fix some omissions and errors in the PROTOCOL and PROTCOL.mux
documentation relating to Unix domain socket forwarding.
- ssh(1): Improve the ssh(1) manual page to include a better
desciption of Unix domain socket forwarding. (bz#2423)
- ssh(1), ssh-agent(1): skip uninitialised PKCS#11 slots,
fixing failures to load keys when they are present. (bz#2427)
- ssh(1), ssh-agent(1): do not ignore PKCS#11 hosted keys that
wth empty CKA_ID. (bz#2429)
- sshd(8): clarify documentation for UseDNS option. (bz#2045)
o User-visible features:
- Reject all server DH keys smaller than 1024 bits.
- Multiple CVEs fixed including CVE-2015-0207, CVE-2015-0209,
CVE-2015-0286, CVE-2015-0287, CVE-2015-0288, CVE-2015-0289,
CVE-2015-1788, CVE-2015-1789, CVE-2015-1792.
- Protocol parsing conversions to BoringSSL's CRYPTO ByteString
- Added EC_curve_nid2nist and EC_curve_nist2nid from OpenSSL.
- Removed Dynamic Engine support.
- Removed MDC-2DES support.
- Switched openssl dhparam default from 512 to 2048 bits.
- Fixed openssl pkeyutl -verify to exit with a 0 on success.
- Fixed dozens of Coverity issues including dead code, memory
leaks, logic errors and more.
- Ensure that openssl(1) restores terminal echo state after
reading a password.
- Incorporated fix for OpenSSL issue #3683.
- Removed SSLv3 support from openssl(1).
- Modified tls_write in libtls to allow partial writes,
clarified with examples in the documentation.
- Removed RSAX engine.
- Tested SSLv3 removal with the OpenBSD ports tree and found
several applications that were not ready to build without
SSLv3 yet. For now, building a program that intentionally
uses SSLv3 will result in a linker warning.
- Added TLS_method, TLS_client_method and TLS_server_method as
a replacement for the SSLv23_*method calls.
- Default cert.pem, openssl.cnf, and x509v3.cnf files are now
installed under $sysconfdir/ssl or the directory specified by
--with-openssldir. Previous versions of LibreSSL left these
- NOTE: LibreSSL 2.2.2 in OpenBSD 5.8 incorrectly handles
ClientHello messages that do not include TLS extensions,
resulting in such handshakes being aborted. see 5.8 errata
o Code improvements:
- Fix incorrect comparison function in openssl(1) certhash
command. Thanks to Christian Neukirchen / Void Linux.
- Removal of OPENSSL_issetugid and all library getenv calls.
Applications can and should no longer rely on environment
variables for changing library behavior. OPENSSL_CONF and
SSLEAY_CONF are still supported with the openssl(1) command,
but note that $ENV:: is no longer supported in .cnf files.
- libtls API and documentation additions.
- Various bug fixes and simplifications to libssl and
- Reworked openssl(1) option handling.
- LibreSSL version define LIBRESSL_VERSION_NUMBER will now be
bumped for each portable release.
- Removed workarounds for TLS client padding bugs.
- Removed IE 6 SSLv3 workarounds.
- --with-enginesdir is removed as a configuration parameter.
o OpenBSD syslogd(8) can bind to explicitly given UDP or TCP sockets
to receive messages. TCP streams are accepted with the octet
counting or the non transparent framing method.
o Blocks in syslog.conf(5) started with +host process messages
created by certain hosts specifically.
o Handle situations when the file descriptor limit is exhausted
o Since libtls handles short writes smarter, syslogd(8) can use the
complete output buffer to save messages, coping with longer TLS
server down times without losing messages.
- Ports and packages:
Many pre-built packages for each architecture:
o alpha: 7093 o powerpc: 8114
o amd64: 8866 o sh: 133
o hppa: 5813 o sparc: 3655
o i386: 8839 o sparc64: 7851
o mips64: 4267 o vax: 1959
o mips64el: 5922
- Some highlights:
o Chromium 44.0.2403.125 o Mozilla Thunderbird 38.1.0
o Emacs 21.4 and 24.5 o Node.js 0.10.35
o GCC 4.8.4 and 4.9.3 o OpenLDAP 2.3.43 and 2.4.41
o GHC 7.8.4 o PHP 5.4.43, 5.5.27 and 5.6.11
o GNOME 3.14.2 o Postfix 2.11.4
o Go 1.4.2 o PostgreSQL 9.4.1
o Groff 1.22.3 o Python 2.7.9 and 3.4.2
o JDK 220.127.116.11 and 18.104.22.168 o R 3.1.2
o KDE 3.5.10 and 4.14.3 (plus o Ruby 22.214.171.1244, 126.96.36.1991,
KDE4 core updates) 188.8.131.528, 2.1.5, and 2.2.0
o LLVM/Clang 3.5 (20140228) o Sendmail 8.15.2
o LibreOffice 184.108.40.206 o Tcl/Tk 8.5.18 and 8.6.4
o MariaDB 10.0.20 o TeX Live 2014
o Mono 3.12.1 o Vim 7.4.769
o Mozilla Firefox 38.1.1esr and o Xfce 4.12
- As usual, steady improvements in manual pages and other documentation.
- The system includes the following major components from outside suppliers:
o Xenocara (based on X.Org 7.7 with xserver 1.16.4 + patches,
freetype 2.6, fontconfig 2.11.1, Mesa 10.2.9, xterm 314,
xkeyboard-config 2.14 and more)
o Gcc 4.2.1 (+ patches) and 3.3.6 (+ patches)
o Perl 5.20.2 (+ patches)
o SQLite 3.8.9 (+ patches)
o NSD 4.1.3
o Unbound 1.5.4
o Ncurses 5.7
o Binutils 2.17 (+ patches)
o Gdb 6.3 (+ patches)
o Less 458 (+ patches)
o Awk Aug 10, 2011 version
Alpha、AMD i386、休利特-Packard PA-KoleosISC、英特尔64、小米68000、PowerPC、Sun SPARC等。
OpenBSD 5.3 正式版发表