OpenBSD

軟件截圖:
OpenBSD
軟件詳細信息:
版本: 6.3 更新
上傳日期: 17 Aug 18
開發: OpenBSD Team
許可: 免費
人氣: 177

Rating: 4.0/5 (Total Votes: 1)

OpenBSD 是一個免費項目,提供了一個多平台類UNIX操作系統,該系統具有便攜,高效,安全且基於4.4BSD平台。它是一種功能強大的服務器產品,用於全球數十萬台計算機上。


可用性,啟動選項,支持的平台

操作系統可從專用部分(見上文)免費下載,作為ISO映像或二進制包,允許用戶通過網絡安裝。 ISO映像可以刻錄到CD光盤上,可以直接從大多數PC的BIOS啟動。

OpenBSD支持SVR4(Solaris),FreeBSD,Linux,BSD,SunOS和HP-UX的大多數程序的二進制仿真。它可以安裝在各種架構上,包括i386,sparc64,alpha,m68k,sh,amd64,PowerPC,m88k,  sparc,ARM,hppa,vax,mips64和mips64el。

CD映像會在沒有用戶交互的情況下自動啟動,並會詢問他們是否要手動安裝,升級或自動安裝操作系統,以及放入shell提示符。

手動或自動安裝

標準(讀取:手動)安裝將要求用戶選擇鍵盤佈局,設置主機名,選擇網絡接口並使用IPv4和/或IPv6進行配置,以及為根設置新密碼(系統管理員)帳戶。

此外,您可以選擇在系統啟動時啟動SSH和NTP服務,選擇是否要使用X Window系統,設置用戶,選擇時區,分區磁盤驅動器和安裝集

在可用於OpenBSD的軟件包中,我們可以提到GNOME,KDE和Xfce桌面環境,MySQL,PostgreSQL,Postfix和OpenLDAP服務器,Mozilla Firefox,Mozilla Thunderbird,LibreOffice,Emacs,Vim和Chromium應用程序,以及PHP,Python,Ruby,Tcl / Tk,JDK,Mono和Go編程語言。


底線

總結一下,OpenBSD是一個功能強大且備受好評的面向服務器的BSD / UNIX操作系統,它為我們提供了最先進的軟件,包括OpenSSH,OpenNTPD,OpenSMTPD,OpenBGPD,OpenIKED和mandoc。

此版本中的新功能

  • 改進了硬件支持,包括:
  • OpenBSD / arm64平台上的SMP支持。
  • OpenBSD / armv7平台上的VFP和NEON支持。
  • 用於X-Powers AC100音頻編解碼器和實時時鐘的新acrtc(4)驅動程序。
  • 用於X-Powers AXP電源管理IC的新型axppmic(4)驅動程序。
  • Broadcom BCM2835 / BCM2836 / BCM2837隨機數發生器的新bcmrng(4)驅動程序。
  • 用於Broadcom BCM2835 / BCM2836 / BCM2837溫度監控器的新bcmtemp(4)驅動程序。
  • 用於博世運動傳感器的新bgw(4)驅動程序。
  • 用於Broadcom和賽普拉斯FullMAC 802.11設備的新bwfm(4)驅動程序(仍然是實驗性的,默認情況下未編譯到內核中)
  • 用於EFI運行時服務的新efi(4)驅動程序。
  • 用於i.MX6集成穩壓器的新imxanatop(4)驅動程序。
  • Rockchip RK3399主機/ PCIe網橋的新rkpcie(4)驅動程序。
  • Allwinner Reduced Serial Bus controller的新sxirsb(4)驅動程序。
  • Allwinner溫度監控器的新sxitemp(4)驅動程序。
  • Allwinner A10 / A20觸控板控制器上用於溫度傳感器的新sxits(4)驅動程序。
  • 在幾個Allwinner SoC上發現了用於雙線總線的新sxitwi(4)驅動程序。
  • Silergy SY8106A調節器的新sypwr(4)驅動程序。
  • 支持Rockchip RK3328 SoC已添加到dwge(4),rkgrf(4),rkclock(4)和rkpinctrl(4)驅動程序中。
  • 對rchtemp(4)驅動程序添加了對Rockchip RK3288 / RK3328 SoC的支持。
  • 支持Allwinner A10 / A20,A23 / A33,A80和R40 / V40 SoC已添加到sxiccmu(4)驅動程序中。
  • 支持Allwinner A33,GR8和R40 / V40 SoC已添加到sxipio(4)驅動程序中。
  • mfii(4)驅動程序中添加了對SAS3.5 MegaRAID的支持。
  • em(4)驅動程序中添加了對Intel Cannon Lake和Ice Lake集成以太網的支持。
  • cnmac(4)端口現在分配給不同的CPU內核以進行分佈式中斷處理。
  • pms(4)驅動程序現在可以檢測並處理重置通知。
  • on amd64 Intel CPU微碼在啟動時加載並由fw_update(1)安裝/更新。
  • 支持sun4v hypervisor中斷cookie API,增加對SPARC T7-1 / 2/4機器的支持。
  • 為連接到sdhc(4)控制器的SD / MMC存儲添加了Hibernate支持。
  • clang(1)現在用作armv7上的系統編譯器,它也在sparc64上提供。
  • vmm(4)/ vmd(8)改進:
  • 通過vioscsi(4)向vmd(8)添加CD-ROM / DVD ISO支持。
  • vmd(8)不再為vm.conf(5)中定義的虛擬交換機創建基礎網橋接口。
  • vmd(8)結合vm.conf(5)中的設置從底層交換機接口接收交換機信息(rdomain等)。
  • 來賓VM中的時間戳計數器(TSC)支持。
  • 支持vmm(4)中的ukvm / Solo5 unikernel。
  • 更好地處理有效(但不常見)的指令編碼。
  • 為32位Linux來賓VM提供更好的PAE分頁支持。
  • vmd(8)現在允許每個VM中最多四個網絡接口。
  • 為AMD SVM / RVI主機添加暫停的遷移和快照支持到vmm(4)。
  • 通過pty(4)發送的BREAK命令現在由vmd(8)理解。
  • 許多修復vmctl(8)和vmd(8)錯誤處理。
  • IEEE 802.11無線堆棧改進:
  • iwm(4)和iwn(4)驅動程序將自動在共享ESSID的訪問點之間漫遊。使用ifconfig的bssid命令強制特定AP的MAC地址將禁用漫遊。
  • 配置新網絡ESSID時自動清除已配置的WEP / WPA密鑰。
  • 刪除了userland從內核讀取已配置的WEP / WPA密鑰的功能。
  • iwm(4)驅動程序現在可以連接到具有隱藏SSID的網絡。
  • athn(4)驅動程序支持的USB設備現在使用開源固件,hostap模式現在可以使用這些設備。
  • 通用網絡堆棧改進:
  • 啟用IPsec時,網絡堆棧不再與KERNEL_LOCK()一起運行。
  • 現在,在沒有KERNEL_LOCK()的情況下處理傳入的TCP / UDP數據包。
  • 套接字拼接任務在沒有KERNEL_LOCK()的情況下運行。
  • 清除和刪除sys / netinet6中的代碼,因為autoconfiguration現在在userland中運行。

  • 現在可以阻止
  • bridge(4)成員使用新的受保護選項與對方交談。
  • 簡化了pf轉移包功能。已從divert(4)中刪除了IP_DIVERTFL套接字選項。
  • pf divert-to和divert-reply的各種角落案例現在更加一致。
  • 在pf(4)中強制所有鄰居發現數據包在其IPv6標頭跳數限製字段中有255個。
  • pf.conf(5)中的新set syncookies選項。
  • 支持GRE over IPv6。
  • 用於GRE隧道以太網的新egre(4)驅動程序。
  • 支持gre(4)和egre(4)中的可選GRE密鑰頭和GRE密鑰熵。
  • 使用通用路由封裝進行網絡虛擬化的新nvgre(4)驅動程序。
  • 支持配置隧道接口封裝的Do not Fragment標誌報文。
  • 安裝程序改進:
  • 如果install.site或upgrade.site失敗,請在存儲rand.seed後通知用戶並輸出錯誤。

  • 輸入IPv4和IPv6地址時,
  • 允許使用CIDR表示法。
  • 從鏡像列表中修復HTTP鏡像的選擇。
  • 允許在用戶名中使用' - '。
  • 在安裝/升級過程結束時提出問題,因此回車會導致相應的操作,例如:重新啟動。

  • 只要沒有主機名已知,
  • 就會顯示模式(安裝或升級)shell提示。
  • 正確檢測哪個接口具有默認路由以及是否通過DHCP配置。
  • 確保可以從預取區域讀取集合。
  • 確保URL重定向對整個安裝/升級有效。
  • 將獲取集時使用的HTTP代理添加到rc.firsttime,其中fw_update和syspatch可以找到並使用它。
  • 使用SLAAC添加邏輯以支持RFC 7217。
  • 確保為動態創建的網絡接口(如vlan(4)。
  • )配置IPv6
  • 在DHCP租約中提供域名和域搜索選項時創建正確的主機名。
  • 路由守護進程和其他用戶態網絡改進:
  • bgpctl(8)有一個新的ssv選項,它輸出rib條目作為單個分號分隔,如輸出前的選擇。
  • slaacd(8)根據RFC 7217生成隨機但穩定的IPv6無狀態自動配置地址。默認情況下,這些地址根據RFC 8064啟用。
  • slaacd(8)遵循RFC 4862,使用RFC 7217(隨機但穩定)和RFC 4941(隱私)樣式無狀態自動配置地址刪除對/ 64大小前綴的人為限制。
  • ospfd(8)現在可以根據接口的狀態設置路由的度量。
  • ifconfig(8)有一個新的staticarp選項,使接口僅回复ARP請求。
  • ipsecctl(8)現在可以折疊具有相同來源或目的地的流量輸出。
  • netstart(8)中的-n選項不再與默認路由混淆。現在也有記錄。
  • 安全改進:
  • 在各種架構上使用更多的陷阱雪橇。
  • 在彙編源中更多地使用.rodata作為常量變量。
  • 停止使用x86" repz ret"在樹的塵土飛揚的角落裡。
  • 介紹“execpromises”在承諾(2)。
  • 用於構建ramdisks的elfrdsetroot實用程序和反彈(8)監控過程現在使用承諾(2)。
  • 準備在6.3。
  • 之後將MAP_STACK引入mmap(2)
  • 在啟動時將一小段KARL鏈接的內核文本作為熵推入隨機數生成器。
  • 在線程堆棧的頂部放置一個小的隨機間隙,以便攻擊者可以為他們的ROP工作執行另一個計算。
  • 緩解英特爾品牌amd64 CPU的崩潰漏洞。
  • OpenBSD / arm64現在使用內核頁表隔離來緩解Spectre變種3(Meltdown)攻擊。
  • OpenBSD / armv7和OpenBSD / arm64現在刷新執行推測執行的處理器上的分支目標緩衝區(BTB)以減輕Spectre變種2的攻擊。
  • pool_get(9)擾亂了新分配頁面上項目的順序,使內核堆佈局更難預測。
  • 刪除了fktrace(2)系統調用。
  • dhclient(8)改進:
  • 解析dhclient.conf(5)不再洩漏SSID字符串,對於解析緩衝區來說太長的字符串或重複的字符串選項和命令。
  • 不再支持在dhclient.conf(5)中存儲租約。
  • 'DENY'在dhclient.conf(5)中不再有效。
  • dhclient.conf(5)和dhclient.leases(5)解析錯誤消息已經過簡化和澄清,在出現意外分號的情況下改進了行為。
  • 更加註意只使用已成功解析的配置信息。
  • ' - n'已添加,導致dhclient(8)在解析dhclient.conf(5)後退出。
  • 選項classless-static-routes(121)和classless-ms-static-routes(249)中的默認路由現在可以在dhclient.leases(5)文件中正確表示。
  • 覆蓋用'-L'指定的文件,而不是附加到它。
  • dhclient.leases(5)中的租約現在包含一個'epoch'屬性,記錄租約被接受的時間,用於計算正確的續訂,重新綁定和到期時間。
  • 在違反RFC 952的名稱中不再嘮叨下劃線。
  • 在請求租約時無條件發送主機名信息,無需在默認安裝中使用dhclient.conf(5)。
  • 默認情況下請保持安靜。 '-q'已被刪除,並添加'-v'以啟用詳細日誌記錄。
  • 拒絕所請​​求地址的重複優惠。
  • 在鏈接超時秒後無條件進入後台。
  • 在安靜時顯著減少日誌記錄,但使'-v'記錄所有調試信息,而無需編譯自定義可執行文件。
  • 忽略dhclient.leases(5)中的'interface'語句,並假設文件中的所有租約都是針對正在配置的接口。
  • 顯示綁定到接口的租約來源。
  • 'ignore','request'和'require'聲明在dhclient.conf(5)中現在將指定的選項添加到相關列表而不是替換列表。
  • 在沒有配置界面的情況下,消除可能導致dhclient(8)退出的啟動競賽。
  • 各種改進:
  • 對malloc(3)和朋友進行代碼重組和其他改進,以提高它們的效率。
  • 執行掛起或休眠操作時,確保所有文件系統已正確同步並標記為乾淨,或者如果它們無法在磁盤上處於完全乾淨狀態(由於打開+未鏈接的文件),則將其標記為臟,以便恢復失敗/ unhibernate保證執行fsck(8)。
  • acme-client(1)自動檢測協議URL並遵循30x HTTP重定向。
  • 添加了__cxa_thread_atexit()以支持現代C ++工具鏈。
  • 為kqueue(2)添加了EVFILT_DEVICE支持,用於監控drm(4)設備的更改。
  • ldexp(3)現在可以在mips64上正確處理非正規數字的符號。
  • 新的sincos(3)在libm中起作用。
  • fdisk(8)現在可以確保編輯時輸入的MBR分區偏移的有效性。
  • fdisk(8)現在確保默認值位於有效範圍內。
  • less(1)現在只在'$'上拆分環境變量LESS。
  • less(1)在初始命令中遇到'$'時不再創建虛假文件。
  • softraid(4)現在驗證組裝卷時的塊數,確保磁盤上和內存中的元數據保持同步。
  • disklabel(8)現在總是提供在編輯塊大小之前編輯FFS分區的片段大小。
  • disklabel(8)現在允許編輯柱面/組(cpg)屬性,只要可以編輯分區塊大小。
  • disklabel(8)現在在(R)esize命令期間檢測^ D和無效輸入。
  • disklabel(8)現在可以在使用 - / +運算符時檢測下溢和溢出。
  • disklabel(8)現在可以在計算空閒塊中的柱面數時避免一個接一個。
  • disklabel(8)現在根據最大空閒塊的大小而不是總可用空間來驗證請求的分區大小。
  • 支持通過bpf(4)轉儲USB傳輸。
  • tcpdump(8)現在可以理解USBPcap格式的USB傳輸轉儲。
  • csh(1),ksh(1)和sh(1)的默認提示現在包含主機名。
  • ksh(1)中的內存分配從calloc(3)切換回malloc(3),從而更容易識別未初始化的內存。因此,發現並修復了emacs編輯模式中與歷史相關的錯誤。
  • 新腳本(1)-c選項,用於運行命令而不是shell。
  • 新的grep(1)-m選項,用於限制匹配數。
  • 新的uniq(1)-i選項,用於不區分大小寫的比較。
  • 查找%格式時,不再驗證printf(3)格式字符串。基於android的提交並遵循大多數其他操作系統。
  • 改進了vfwprintf(3)中的錯誤檢查。
  • 許多基礎程序已經過陳舊的文件描述符的審核和修復,包括cron(8),ftp(1),mandoc(1),openssl(1),ssh(1)和sshd(8)。
  • jot(1)中的各種錯誤修復和改進:
  • 刪除了-b,-s,-w選項的參數的任意長度限制。
  • 現在支持%F格式說明符,並修復了%D格式的錯誤。
  • 回歸測試中更好的代碼覆蓋率。
  • 修復了幾個緩衝區溢出。
  • patch(1)實用程序現在可以更好地處理創建或刪除文件的git差異。
  • pkg_add(1)現在已經改進了對HTTP(S)重定向器的支持,例如cdn.openbsd.org。
  • ftp(1)和pkg_add(1)現在支持HTTPS會話恢復以提高速度。
  • mandoc(1)-T ps輸出文件大小減少50%以上。
  • syslogd(8)記錄啟動期間是否有警告。
  • syslogd(8)停止記錄到完整文件系統中的文件。現在它會寫一個警告,並在空間可用後繼續。
  • vmt(4)現在允許克隆並獲取正在運行的guest虛擬機的僅磁盤快照。
  • OpenSMTPD 6.0.4
  • 將spf walk選項添加到smtpctl(8)。
  • 各種清理和改進。
  • 許多手冊頁修復和改進。
  • OpenSSH 7.7
  • 新功能/已更改功能:
  • 全部:基於https://tools.ietf.org/html/draft-irtf-cfrg-xmss-hash-based-signatures中描述的算法,為PQC XMSS密鑰(基於擴展哈希的簽名)添加實驗支持-12 XMSS簽名代碼是實驗性的,默認情況下不編譯。
  • sshd(8):添加“rdomain” sshd_config匹配關鍵字的條件,允許條件配置取決於接收連接的路由域(當前在OpenBSD和Linux上受支持)。
  • sshd_config(5):向ListenAddress指令添加可選的rdomain限定符,以允許偵聽不同的路由域。目前僅支持OpenBSD和Linux。
  • sshd_config(5):添加RDomain指令以允許將經過身份驗證的會話置於顯式路由域中。目前僅支持OpenBSD。
  • sshd(8):添加“到期時間” authorized_keys文件的選項允許到期密鑰。
  • ssh(1):添加BindInterface選項以允許將傳出連接綁定到接口的地址(基本上是更有用的BindAddress)。
  • ssh(1):通過新的%T擴展為LocalCommand公開為tun / tap轉發分配的設備。這允許使用LocalCommand來準備接口。
  • sshd(8):通過新的SSH_TUNNEL環境變量公開為tun / tap轉發分配的設備。這允許在服務器上自動設置接口和周圍網絡配置。
  • ssh(1)/ scp(1)/ sftp(1):為ssh,sftp和scp添加URI支持,例如: ssh:// user @ host或sftp:// user @ host / path。 draft-ietf-secsh-scp-sftp-ssh-uri-04中描述的其他連接參數未實現,因為草稿中的ssh指紋格式使用了棄用的MD5哈希,無法指定任何其他算法。
  • ssh-keygen(1):允許證書有效期間隔僅指定開始或停止時間(而不是兩者或兩者都不是)。
  • sftp(1):允許“cd”和“lcd”沒有顯式路徑參數的命令。 lcd將像往常一樣更改為本地用戶的主目錄。 cd將更改為會話的起始目錄(因為協議無法獲取遠程用戶的主目錄)。 BZ#2760
  • sshd(8):使用sshd -T進行配置測試時,只需要匹配條件中實際使用的屬性,而不是所有條件的(不完整列表)。
  • 此版本中修復了以下重大錯誤:
  • ssh(1)/ sshd(8):在密鑰交換期間更嚴格地檢查簽名類型與協商的內容。防止將使用SHA-256/512進行的RSA簽名降級為SHA-1。
  • sshd(8):修復對廣告協議版本為“1.99”的客戶端的支持。 (表示他們準備接受SSHv1和SSHv2)。在刪除SSHv1支持期間,這在OpenSSH 7.6中被破壞了。 BZ#2810
  • ssh(1):當請求rsa-sha2-256 / 512簽名時代理返回ssh-rsa(SHA1)簽名時發出警告。當使用舊的或非OpenSSH代理時,這種情況是可能的。 BZ#2799
  • ssh-agent(1):修復7.6中的回歸引入,如果出現無效的簽名請求消息,則導致ssh-agent致命退出。
  • sshd_config(5):接受yes / no標誌選項不區分大小寫,就像ssh_config(5)中的情況一樣。 BZ#2664
  • ssh(1):改善連接期間失敗的錯誤報告。在某些情況下,會出現誤導性錯誤。 BZ#2814
  • ssh-keyscan(1):添加-D選項以允許直接以SSHFP格式打印結果。 BZ#2821
  • 回歸測試:修復上次發布的SSHv1刪除中破壞的PuTTY互操作測試。 BZ#2823
  • ssh(1):在發送IUTF8(RFC8160)選項時錯誤地斷開連接的某些服務器的兼容性修補程序。
  • scp(1):在scp啟動的ssh會話中禁用RemoteCommand和RequestTTY(sftp已經這樣做了。)
  • ssh-keygen(1):拒絕創建具有無法使用的主體數量的證書。
  • ssh-keygen(1):如果ssh-keygen在密鑰生成期間無法寫入所有公鑰,則會致命地退出。以前它會默默地忽略編寫註釋和終止換行的錯誤。
  • ssh(1):不要通過自動強制它們為小寫來修改地址的主機名參數。相反,規範化它們在與known_hosts匹配之前解決歧義(例如:: 0001 => :: 1)。 BZ#2763
  • ssh(1):在“是”之後不接受垃圾或“不”響應hostkey提示。 BZ#2803
  • sftp(1):當解碼第一個數據包失敗時,讓sftp打印關於shell清潔度的警告,這通常是由於shell污染了非交互式初創公司的stdout。 BZ#2800
  • ssh(1)/ sshd(8):將分組代碼中的定時器從使用掛鐘時間切換到單調時間,允許分組層在一個時鐘步驟中更好地起作用,並避免在步驟期間可能出現整數溢出。
  • 許多手冊頁修復和改進。
  • LibreSSL 2.7.2
  • 根據對應用程序中實際使用情況的觀察,添加了對許多OpenSSL 1.0.2和1.1 API的支持。它們與現有的OpenSSL 1.0.1 API並行實現 - 尚未對現有結構進行可見性更改,允許為較舊的OpenSSL API編寫的代碼繼續工作。
  • 對API文檔進行了廣泛的更正,改進和補充,包括OpenSSL中沒有預先存在文檔的新公共API。
  • 在libcrypto,libssl和libtls中添加了對自動庫初始化的支持。現在,目標操作系統需要支持pthread_once或兼容的等效項。作為副作用,最低Windows支持是Vista或更高版本。
  • 將更多數據包處理方法轉換為CBB,從而提高生成TLS消息時的彈性。
  • 完成了TLS擴展處理重寫,提高了格式錯誤和重複擴展的檢查的一致性。
  • 使用模板化ASN.1重寫了ASN1_TYPE_ {get,set} _octetstring()。這將從需要繼續存在的API中刪除舊的M_ASN1_ *宏(asn1_mac.h)的最後剩餘使用。
  • 在libtls中添加了對客戶端會話恢復的支持。 libtls客戶端可以指定會話文件描述符(具有適當所有權和權限的常規文件),libtls將管理跨TLS握手的會話數據讀取和寫入。
  • 改進了對ARMv7體系結構嚴格對齊的支持,在這些情況下有條件地啟用程序集。
  • 修復了重用tls_config時libtls中的內存洩漏問題。
  • 將更多DTLS支持合併到常規TLS代碼路徑中,刪除重複的代碼。
  • 端口和包:
  • dpb(1)和普通端口(7)現在可以通過設置PORTS_PRIVSEP =是
  • 來享受相同的權限分離模型
  • 每個架構的許多預構建包:
  • aarch64:7990
  • alpha:1
  • amd64:9912
  • arm:XXXX
  • hppa:XXXX
  • i386:9861
  • mips64:8149
  • mips64el:XXXX
  • powerpc:XXXX
  • sh:1
  • sparc64:XXXX
  • 一些亮點:
  • AFL 2.52b
  • CMake 3.10.2
  • Chromium 65.0.3325.181
  • Emacs 21.4和25.3
  • GCC 4.9.4
  • GHC 8.2.2
  • Gimp 2.8.22
  • GNOME 3.26.2
  • 去1.10
  • Groff 1.22.3
  • JDK 8u144
  • KDE 3.5.10和4.14.3(加上KDE4核心更新)
  • LLVM / Clang 5.0.1
  • LibreOffice 6.0.2.1
  • Lua 5.1.5,5.2.4和5.3.4
  • MariaDB 10.0.34
  • Mozilla Firefox 52.7.3esr和59.0.2
  • Mozilla Thunderbird 52.7.0
  • Mutt 1.9.4和NeoMutt 20180223
  • Node.js 8.9.4
  • Ocaml 4.03.0
  • OpenLDAP 2.3.43和2.4.45
  • PHP 5.6.34和7.0.28
  • Postfix 3.3.0和3.4-20180203
  • PostgreSQL 10.3
  • Python 2.7.14和3.6.4
  • R 3.4.4
  • Ruby 2.3.6,2.4.3和2.5.0
  • Rust 1.24.0
  • Sendmail 8.16.0.21
  • SQLite3 3.22.0
  • Sudo 1.8.22
  • Tcl / Tk 8.5.19和8.6.8
  • TeX Live 2017
  • Vim 8.0.1589
  • Xfce 4.12
  • 像往常一樣,手動頁面和其他文檔的穩步改進。
  • 該系統包括來自外部供應商的以下主要組件:
  • Xenocara(基於X.Org 7.7,xserver 1.19.6 +補丁,freetype 2.8.1,fontconfig 2.12.4,Mesa 13.0.6,xterm 330,xkeyboard-config 2.20等)
  • LLVM / Clang 5.0.1(+補丁)
  • GCC 4.2.1(+補丁)和3.3.6(+補丁)
  • Perl 5.24.3(+補丁)
  • NSD 4.1.20
  • Unbound 1.6.8
  • Ncurses 5.7
  • Binutils 2.17(+補丁)
  • Gdb 6.3(+補丁)
  • Awk 2011年8月10日版
  • Expat 2.2.5

版本6.2中的新功能

  • 新/擴展平台:
  • ARMv7的:
  • 添加了EFI bootloader,內核現在從FFS而不是FAT或EXT文件系統加載,沒有U-Boot頭。
  • 單個內核和ramdisk現在用於所有SoC。
  • 硬件通過扁平化設備樹(FDT)動態枚舉,而不是通過基於電路板ID號的靜態表進行枚舉。
  • Miniroot安裝程序映像包括U-Boot 2016.07,支持EFI有效負載。
  • VAX:
  • 移除。
  • 改進了硬件支持,包括:
  • 用於Intel Bay Trail GPIO控制器的新的bytgpio(4)驅動程序。
  • 用於Intel Cherry View GPIO控制器的新chvgpio(4)驅動程序。
  • Maxim DS1307實時時鐘的新maxrtc(4)驅動程序。
  • 用於Non-Volatile Memory Express(NVMe)主機控制器接口的新nvme(4)驅動程序。
  • 用於恩智浦PCF8523實時時鐘的新pcfrtc(4)驅動程序。
  • 移動寬帶接口模型(MBIM)的新umb(4)驅動程序。
  • 基於RealTek RTL8152的10/100 USB以太網設備的新型ure(4)驅動程序。
  • 基於Fushicai USBTV007的音頻/視頻捕捉設備的新utvfu(4)驅動程序。
  • iwm(4)驅動程序現在支持Intel Wireless 3165和8260設備,並且在RAMDISK內核中工作更可靠。
  • dwiic(4)增加了對帶有GPIO信號中斷的I2C HID設備的支持。
  • sdmmc(4),rtsx(4),sdhc(4)和imxesdhc(4)增加了對更大總線寬度,高速模式和DMA傳輸的支持。
  • 支持Octeon II SoC上符合EHCI和OHCI標準的USB控制器。
  • 在OpenBSD / octeon上啟用了許多USB設備驅動程序。
  • 改進了對硬件減少的ACPI實施的支持。
  • 改進了對ACPI 5.0實施的支持。
  • AES-NI加密現在無需持有內核鎖即可完成。
  • 改進了PowerPC G5機器上的AGP支持。
  • 增加了對Intel Bay Trail SoC中SD卡插槽的支持。
  • ichiic(4)驅動程序現在忽略了SMBALERT#中斷,以防止出現錯誤的BIOS實現的中斷風暴。
  • 已修復axen(4)驅動程序的設備附件問題。
  • 使用RT2860設備時,ral(4)驅動器在負載下更穩定。
  • 恢復後死鍵盤的問題已在pckbd(4)驅動程序中修復。
  • rtsx(4)驅動程序現在支持RTS522A設備。
  • 已添加對MSI-X的初始支持。
  • 支持virtio(4)驅動程序中的MSI-X。
  • 為dc(4)驅動程序添加了硬件DMA溢出的解決方法。
  • 如果ACPI使用遲滯進行主動冷卻,acpitz(4)驅動程序現在會在冷卻後將風扇旋轉。
  • xhci(4)驅動程序現在可以正確地從支持xHCI的BIOS執行切換。
  • wsmouse(4)驅動程序中添加了對多點觸控輸入的支持。
  • uslcom(4)驅動程序現在支持Aruba 7xxx無線控制器的串行控制台。
  • re(4)驅動程序現在適用於APU1 EEPROM中損壞的LED配置。
  • ehci(4)驅動程序現在可以解決ATI USB控制器(例如SB700)的問題。
  • xen(4)驅動程序現在支持Qubes OS下的domU配置。
  • IEEE 802.11無線堆棧改進:
  • HT塊確認接收緩衝邏輯更緊密地遵循802.11-2012規範中給出的算法。
  • iwn(4)驅動程序現在跟踪與11n AP關聯的HT保護更改。
  • 無線堆棧和多個驅動程序可以更積極地使用RTS / CTS,以避免來自傳統設備和隱藏節點的干擾。
  • netstat(1)-W命令現在顯示有關802.11n事件的信息。
  • 在hostap模式下,不要重用仍然緩存的節點的關聯ID。修復了使用ral(4)驅動程序的訪問點卡在1 Mbps的問題,因為錯誤的節點對像上發生了Tx速率記帳。
  • 通用網絡堆棧改進:
  • 路由表現在基於ART,提供更快的查找。
  • 轉發路徑中每個數據包的路由查找次數已減少為1。
  • 現在可以在vlan(4)接口上發送的IPv4數據包的每個片段上正確設置VLAN標頭上的prio字段。
  • 為bpf(4)啟用設備克隆。這允許系統在/ dev中只有一個bpf設備節點,為所有bpf消費者提供服務(最多1024個)。
  • 現在可以與內核的其餘部分並行處理cnmac(4)驅動程序的Tx隊列。
  • 網絡輸入路徑現在在線程上下文中運行。
  • 安裝程序改進:
  • 更新受限用戶代碼列表
  • install.sh和upgrade.sh合併到install.sub
  • update在fw_update(1)
  • 之前以批處理模式自動運行sysmerge(8)
  • 問題和答案以可用作自動安裝使用的響應文件的格式記錄(8)
  • / usr / local在安裝期間設置為wxallowed
  • 路由守護進程和其他用戶態網絡改進:
  • 將路由表支持添加到rc.d(8)和rcctl(8)。
  • 除了端口號之外,讓nc(1)支持服務名稱。
  • 將-M和-m TTL標誌添加到nc(1)。
  • 將AF_UNIX支持添加到tcpbench(1)。
  • 修正了rarpd(8)中的回歸問題。如果守護程序閒置很長時間,它就會掛起。
  • 在ifconfig(8)中添加了llprio選項。
  • 使用bpf(4)的多個程序已經過修改,可以通過打開/ dev / bpf0而不是通過/ dev / bpf *設備循環來利用bpf(4)設備克隆。這些程序包括arp(8),dhclient(8),dhcpd(8),dhcrelay(8),hostapd(8),mopd(8),npppd(8),rarpd(8),rbootd(8)和tcpdump (8)。 libpcap庫也已相應修改。
  • 安全改進:
  • W ^ X現在默認嚴格執行;如果可執行文件標記為PT_OPENBSD_WXNEEDED並且位於使用wxallowed mount(8)選項安裝的文件系統上,則程序只能違反該程序。因為仍有太多端口違反W ^ X,安裝程序會使用wxallowed掛載/ usr / local文件系統。只要/ usr / local是一個單獨的文件系統,這就允許基本系統更安全。如果您沒有使用違反W ^ X的程序,請考慮手動撤銷該選項。
  • setjmp(3)系列函數現在將xOR cookie應用於amd64,hppa,i386,mips64和powerpc上的jmpbuf中的堆棧和返回地址值。
  • SROP緩解:sigreturn(2)現在只能由內核提供的信號trampoline使用,並使用cookie來檢測重用它的嘗試。
  • 為了阻止代碼重用漏洞,rc(8)在啟動時重新鏈接libc.so,以隨機順序放置對象。
  • 在getpwnam(3)系列函數中,默認情況下停止打開影子數據庫。
  • 允許tcpdump(8)-r在沒有root權限的情況下啟動。
  • 刪除systrace。
  • 刪除Linux仿真支持。
  • 刪除對usermount選項的支持。
  • TCP SYN緩存不時重新設置其隨機散列函數。這可以防止攻擊者通過計時攻擊來計算哈希函數的分佈。
  • 為了防止SYN泛洪攻擊,管理員現在可以更改哈希數組的大小。 netstat(1)-s -p tcp顯示使用sysctl(8)net.inet.tcp調整SYN緩存的相關信息。
  • 管理員可以要求root權限以使用sysctl(8)net.inet.tcp.rootonly和sysctl(8)net.inet.udp.rootonly綁定到某些TCP和UDP端口。
  • 從mbuf(9)數據結構中刪除函數指針,並將索引用於可接受函數的數組中。
  • 各種改進:
  • 現在可以將線程庫加載到單線程進程中。
  • 改進了libc中的符號處理和標準合規性。例如,定義open()函數將不再乾擾fopen(3)的操作。
  • 最初加載的對象現在支持PT_TLS部分。
  • 改進了對“無路徑”的處理。和“空路徑”在fts(3)。
  • 在pcap(3)中,提供pcap_free_datalinks()和pcap_offline_filter()函數。
  • editline(3)庫中的許多錯誤修正和結構清理。
  • 刪除古老的dbm(3)函數; ndbm(3)仍然存在。
  • 在doas.conf(5)中添加setenv關鍵字以實現更強大的環境處理。
  • 將-g和-p選項添加到aucat.1以進行時間定位。
  • 使用更簡單的用戶界面重寫audioctl(1)。
  • 在關閉文件之前,添加-F選項以將文件安裝(1)到fsync(2)。
  • kdump(1)現在轉儲pollfd結構。
  • 改進ksh(1)POSIX合規性的各種細節。
  • mknod(8)以承諾(2)友好的方式重寫,並支持一次創建多個設備。
  • 實施rcctl(8)get all和getdef all。
  • 實施rcs(1)-I(交互式)標誌。
  • 在rcs(1)中,實現Mdocdate關鍵字替換。
  • 在top(1)中,允許過濾進程參數(如果正在顯示它們)。
  • 為fold(1)和rev(1)添加了UTF-8支持。
  • 默認情況下在xterm(1)和pod2man(1)中啟用UTF-8。
  • 過濾掉牆(1)中的非ASCII字符。
  • 在許多程序中一致地處理COLUMNS環境變量。
  • 選項-c和-k允許在發送端為syslogd(8)提供TLS客戶端證書。通過這種方式,接收方可以驗證日誌消息是否可信。請注意,syslogd還沒有此檢查功能。
  • 當klog緩衝區溢出時,syslogd將寫一條日誌消息,表明缺少某些條目。
  • 在OpenBSD / octeon上,啟用CPU緩存寫緩衝以提高性能。
  • pkg_add(1)和pkg_info(1)現在理解了分支的概念,以便於選擇一些流行的軟件包,如python或php,例如pkg_add python%3.4來選擇3.4分支,並使用pkg_info -zm來得到一個模糊列表,其分支選擇適合pkg_add -l。
  • fdisk(8)和pdisk(8)會立即退出,除非傳遞了角色特殊設備
  • st(4)正確跟踪可變大小塊的當前塊計數
  • fsck_ext2fs(8)再次工作
  • softraid(4)卷可以使用扇區大小不是512字節的磁盤構建
  • dhclient(8)拒絕並丟棄未使用的OFFER。
  • dhclient(8)如果其接口(例如網橋(4))在發送數據包時返回EAFNOSUPPORT,則會立即退出。
  • httpd(8)為HTTP v0.9請求返回400 Bad Request。
  • ffs2的延遲節點初始化避免將隨機磁盤數據視為inode
  • fcntl(2)基礎程序中的調用使用成語fcntl(n,F_GETFL)代替fcntl(n,F_GETFL,0)

  • 基本程序中的
  • socket(2)和accept4(2)調用使用SOCK_NONBLOCK來消除對單獨fcntl(2)的需要。
  • 默認情況下未啟用tmpfs
  • pledge(2)的內核語義在很多方面得到了改進。重點包括:新的承諾承諾,允許承諾的程序設置setugid屬性,更嚴格執行recvfd承諾和chroot(2)不再允許承諾的程序。
  • 許多承諾(2)相關的錯誤(缺少承諾,行為的意外變化,崩潰)被修復,特別是在gzip(1),nc(1),sed(1),skeyinit(1),stty (1),以及各種與磁盤相關的實用程序,例如disklabel(8)和fdisk(8)。
  • 已修復audio(4)驅動程序中的塊大小計算錯誤。
  • usb(4)驅動程序現在緩存供應商和產品ID。修復了usbdevs(8)在循環中調用會導致USB大容量存儲設備停止運行的問題。
  • rsu(4)和ural(4)司機在5.9中意外破壞後再次正在工作。
  • OpenSMTPD 6.0.0
  • 安全性:
  • 在smtpd(8)中實現fork + exec模式。
  • 修復SMTP狀態機中的邏輯問題,該問題可能導致無效狀態並導致崩潰。
  • 插入文件指針洩漏,可能導致資源耗盡並導致崩潰。
  • 使用自動DH參數而不是固定參數。
  • 默認情況下禁用DHE,因為它的計算成本很高且是潛在的DoS向量。
  • 版本6.2中帶來了以下改進:
  • 將-r選項添加到smtpd(8)enqueuer以與mailx兼容。
  • 在偵聽提交端口時添加缺少日期或消息ID。
  • 修復“smtpctl show queue”報告“無效”信封狀態。
  • 重寫“已收到”的格式標題,以便TLS部分不違反RFC。
  • 增加允許本地地址建立的連接數,並減少同一會話中事務之間的延遲。
  • 修復LMTP傳遞到返回延續行的服務器。
  • 進一步改進仍在進行實驗的過濾器API並修復各種相關問題。
  • 開始改進和統一日誌消息的格式。
  • 修復了手冊頁中的幾個文檔差異和拼寫錯誤。
  • OpenSSH 7.3
  • 安全性:
  • sshd(8):通過sshd(8)緩解對系統crypt(3)功能的潛在拒絕服務攻擊。攻擊者可能會發送非常長的密碼,這會導致在密碼中使用過多的CPU(3)。 sshd(8)現在拒絕接受長度超過1024個字符的密碼驗證請求。
  • sshd(8):在發送長密碼並在服務器上使用特定密碼哈希算法時,緩解密碼身份驗證中的時序差異,該身份驗證可用於從無效帳戶名中辨別有效。 CVE-2016-6210。
  • ssh(1),sshd(8):修復CBC填充oracle對策中可觀察到的時序弱點。請注意,默認情況下禁用CBC密碼,僅包括舊版兼容性。
  • ssh(1),sshd(8):改進加密 - 然後 - MAC(EtM)模式傳輸MAC算法的MAC驗證的順序,以在解密任何密文之前驗證MAC。這消除了時間差異洩露有關明文的事實的可能性,儘管沒有這種洩漏是已知的。
  • 新功能/已更改功能:
  • 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)
  • 版本6.2中修復了以下重大錯誤:
  • 在scp(1)和sftp(1)中,通過轉義不形成ASCII或UTF-8字符的字節來防止搞砸終端設置。
  • 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年棄用的文件。(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)
  • OpenNTPD 6.0
  • 當單個“約束”時指定,嘗試所有返回的地址,直到成功,而不是第一個返回的地址。
  • 放寬約束誤差範圍以與NTP對等體的數量成比例,避免在存在錯誤的NTP對等體時不斷重新連接。
  • 刪除了已禁用的熱插拔(4)傳感器支持。
  • 添加了對檢測約束子進程中崩潰的支持。
  • 將約束的執行從ntp進程移動到父進程,從而允許更好的權限分離,因為可以進一步限制ntp進程。
  • 修復網絡故障時的高CPU使用率。
  • 修復了各種內存洩漏問題。
  • 切換到RMS以進行抖動計算。
  • 與其他OpenBSD基本程序一起使用統一日誌記錄功能。
  • 設置MOD_MAXERROR以避免在使用ntp_adjtime時未同步的時間狀態。
  • 修復了HTTP時間戳標頭解析,以便以更便攜的方式使用strptime(3)。
  • 針對ntpd(8)約束的強化TLS,啟用服務器名稱驗證。
  • LibreSSL 2.4.2
  • 用戶可見的功能:
  • 修復了安裝目標中的一些損壞的聯機幫助頁鏈接。
  • cert.pem已經重組並與Mozilla的證書商店同步。
  • 可靠性修復,在解析超過16k的某些ASN.1元素時糾正錯誤。
  • 實施了IETF ChaCha20-Poly1305密碼套件。
  • 修復了openssl(1)的密碼提示,以正確處理^ C.
  • 代碼改進:
  • 通過添加'install_sw'構建目標來解決nginx兼容性問題。
  • 將默認EVP_aead_chacha20_poly1305(3)實施更改為IETF版本,現在是默認版本。
  • 在libtls中重寫錯誤處理,以便更容易看到配置錯誤。
  • 圍繞bn_wexpand(3)調用添加了缺失的錯誤處理。
  • 為釋放的ASN.1對象添加了explicit_bzero(3)調用。
  • 修正X509_ * set_object函數在分配失敗時返回0。
  • 不推薦使用EVP_ [Cipher | Encrypt | Decrypt] _Final。
  • 修復了一個問題,即使設置了標誌BN_FLG_CONSTTIME,也會阻止DSA簽名算法在常量時間內運行。
  • 修復了OCSP代碼中可能導致錯誤生成和解析OCSP請求的幾個問題。這可以解決在這些函數中解析時缺少錯誤的問題,並確保根據RFC 6960,OCSP只接受GENERALIZEDTIME格式。
  • 以下CVE已修復:
  • CVE-2016-2105-EVP_EncodeUpdate overflow。
  • CVE-2016-2106-EVP_EncryptUpdate溢出。
  • CVE-2016-2107-padding oracle in AES-NI CBC MAC check。
  • ASN.1編碼器中的CVE-2016-2108內存損壞。
  • CVE-2016-2109-ASN.1 BIO過多的內存分配。
  • 端口和包:
  • ports樹中的新proot(1)工具,用於在chroot中構建包。
  • 每個架構的許多預構建包:
  • alpha:7422
  • amd64:9433
  • hppa:6346
  • i386:9394
  • mips64:7921
  • mips64el:7767
  • powerpc:8318
  • sparc64:8570
  • 一些亮點:
  • Afl 2.19b
  • Chromium 51.0.2704.106
  • Emacs 21.4和24.5
  • GCC 4.9.3
  • GHC 7.10.3
  • Gimp 2.8.16
  • GNOME 3.20.2
  • 去1.6.3
  • Groff 1.22.3
  • JDK 7u80和8u72
  • KDE 3.5.10和4.14.3(加上KDE4核心更新)
  • LLVM / Clang 3.8.0
  • LibreOffice 5.1.4.2
  • Lua 5.1.5,5.2.4和5.3.3
  • MariaDB 10.0.25
  • Mono 4.4.0.182
  • Mozilla Firefox 45.2.0esr和47.0.1
  • Mozilla Thunderbird 45.2.0
  • Mutt 1.6.2
  • Node.js 4.4.5
  • Ocaml 4.3.0
  • OpenLDAP 2.3.43和2.4.44
  • PHP 5.5.37,5.6.23和7.0.8
  • Postfix 3.1.1和3.2-20160515
  • PostgreSQL 9.5.3
  • Python 2.7.12,3.4.5和3.5.2
  • R 3.3.1
  • Ruby 1.8.7.374,2.0.0.648,2.1.9,2.2.5和2.3.1
  • Rust 1.9.0-20160608
  • Sendmail 8.15.2
  • Sudo 1.8.17.1
  • Tcl / Tk 8.5.18和8.6.4
  • TeX Live 2015
  • Vim 7.4.1467
  • Xfce 4.12
  • 像往常一樣,手動頁面和其他文檔的穩步改進。
  • 該系統包括來自外部供應商的以下主要組件:
  • Xenocara(基於X.Org 7.7的xserver 1.18.3 +補丁,freetype的2.6.3,2.11.1的fontconfig,梅薩11.2.2,xterm的322,xkeyboard-配置2.18和以上)
  • GCC 4.2.1(+補丁)和3.3.6(+補丁)
  • Perl 5.20.3(+補丁)
  • SQLite 3.9.2(+補丁)
  • NSD 4.1.10
  • Unbound 1.5.9
  • Ncurses 5.7
  • Binutils 2.17(+補丁)
  • Gdb 6.3(+補丁)
  • Awk 2011年8月10日版
  • Expat 2.1.1

版本6.1中的新功能

  • 新/擴展平台:
  • ARMv7的:
  • 添加了EFI bootloader,內核現在從FFS而不是FAT或EXT文件系統加載,沒有U-Boot頭。
  • 單個內核和ramdisk現在用於所有SoC。
  • 硬件通過扁平化設備樹(FDT)動態枚舉,而不是通過基於電路板ID號的靜態表進行枚舉。
  • Miniroot安裝程序映像包括U-Boot 2016.07,支持EFI有效負載。
  • VAX:
  • 移除。
  • 改進了硬件支持,包括:
  • 用於Intel Bay Trail GPIO控制器的新的bytgpio(4)驅動程序。
  • 用於Intel Cherry View GPIO控制器的新chvgpio(4)驅動程序。
  • Maxim DS1307實時時鐘的新maxrtc(4)驅動程序。
  • 用於Non-Volatile Memory Express(NVMe)主機控制器接口的新nvme(4)驅動程序。
  • 用於恩智浦PCF8523實時時鐘的新pcfrtc(4)驅動程序。
  • 移動寬帶接口模型(MBIM)的新umb(4)驅動程序。
  • 基於RealTek RTL8152的10/100 USB以太網設備的新型ure(4)驅動程序。
  • 基於Fushicai USBTV007的音頻/視頻捕捉設備的新utvfu(4)驅動程序。
  • iwm(4)驅動程序現在支持Intel Wireless 3165和8260設備,並且在RAMDISK內核中工作更可靠。
  • dwiic(4)增加了對帶有GPIO信號中斷的I2C HID設備的支持。
  • sdmmc(4),rtsx(4),sdhc(4)和imxesdhc(4)增加了對更大總線寬度,高速模式和DMA傳輸的支持。
  • 支持Octeon II SoC上符合EHCI和OHCI標準的USB控制器。
  • 在OpenBSD / octeon上啟用了許多USB設備驅動程序。
  • 改進了對硬件減少的ACPI實施的支持。
  • 改進了對ACPI 5.0實施的支持。
  • AES-NI加密現在無需持有內核鎖即可完成。
  • 改進了PowerPC G5機器上的AGP支持。
  • 增加了對Intel Bay Trail SoC中SD卡插槽的支持。
  • ichiic(4)驅動程序現在忽略了SMBALERT#中斷,以防止出現錯誤的BIOS實現的中斷風暴。
  • 已修復axen(4)驅動程序的設備附件問題。
  • 使用RT2860設備時,ral(4)驅動器在負載下更穩定。
  • 恢復後死鍵盤的問題已在pckbd(4)驅動程序中修復。
  • rtsx(4)驅動程序現在支持RTS522A設備。
  • 已添加對MSI-X的初始支持。
  • 支持virtio(4)驅動程序中的MSI-X。
  • 為dc(4)驅動程序添加了硬件DMA溢出的解決方法。
  • 如果ACPI使用遲滯進行主動冷卻,acpitz(4)驅動程序現在會在冷卻後將風扇旋轉。
  • xhci(4)驅動程序現在可以正確地從支持xHCI的BIOS執行切換。
  • wsmouse(4)驅動程序中添加了對多點觸控輸入的支持。
  • uslcom(4)驅動程序現在支持Aruba 7xxx無線控制器的串行控制台。
  • re(4)驅動程序現在適用於APU1 EEPROM中損壞的LED配置。
  • ehci(4)驅動程序現在可以解決ATI USB控制器(例如SB700)的問題。
  • xen(4)驅動程序現在支持Qubes OS下的domU配置。
  • IEEE 802.11無線堆棧改進:
  • HT塊確認接收緩衝邏輯更緊密地遵循802.11-2012規範中給出的算法。
  • iwn(4)驅動程序現在跟踪與11n AP關聯的HT保護更改。
  • 無線堆棧和多個驅動程序可以更積極地使用RTS / CTS,以避免來自傳統設備和隱藏節點的干擾。
  • netstat(1)-W命令現在顯示有關802.11n事件的信息。
  • 在hostap模式下,不要重用仍然緩存的節點的關聯ID。修復了使用ral(4)驅動程序的訪問點卡在1 Mbps的問題,因為錯誤的節點對像上發生了Tx速率記帳。
  • 通用網絡堆棧改進:
  • 路由表現在基於ART,提供更快的查找。
  • 轉發路徑中每個數據包的路由查找次數已減少為1。
  • 現在可以在vlan(4)接口上發送的IPv4數據包的每個片段上正確設置VLAN標頭上的prio字段。
  • 為bpf(4)啟用設備克隆。這允許系統在/ dev中只有一個bpf設備節點,為所有bpf消費者提供服務(最多1024個)。
  • 現在可以與內核的其餘部分並行處理cnmac(4)驅動程序的Tx隊列。
  • 網絡輸入路徑現在在線程上下文中運行。
  • 安裝程序改進:
  • 更新受限用戶代碼列表
  • install.sh和upgrade.sh合併到install.sub
  • update在fw_update(1)
  • 之前以批處理模式自動運行sysmerge(8)
  • 問題和答案以可用作自動安裝使用的響應文件的格式記錄(8)
  • / usr / local在安裝期間設置為wxallowed
  • 路由守護進程和其他用戶態網絡改進:
  • 將路由表支持添加到rc.d(8)和rcctl(8)。
  • 除了端口號之外,讓nc(1)支持服務名稱。
  • 將-M和-m TTL標誌添加到nc(1)。
  • 將AF_UNIX支持添加到tcpbench(1)。
  • 修正了rarpd(8)中的回歸問題。如果守護程序閒置很長時間,它就會掛起。
  • 在ifconfig(8)中添加了llprio選項。
  • 使用bpf(4)的多個程序已經過修改,可以通過打開/ dev / bpf0而不是通過/ dev / bpf *設備循環來利用bpf(4)設備克隆。這些程序包括arp(8),dhclient(8),dhcpd(8),dhcrelay(8),hostapd(8),mopd(8),npppd(8),rarpd(8),rbootd(8)和tcpdump (8)。 libpcap庫也已相應修改。
  • 安全改進:
  • W ^ X現在默認嚴格執行;如果可執行文件標記為PT_OPENBSD_WXNEEDED並且位於使用wxallowed mount(8)選項安裝的文件系統上,則程序只能違反該程序。因為仍有太多端口違反W ^ X,安裝程序會使用wxallowed掛載/ usr / local文件系統。只要/ usr / local是一個單獨的文件系統,這就允許基本系統更安全。如果您沒有使用違反W ^ X的程序,請考慮手動撤銷該選項。
  • setjmp(3)系列函數現在將xOR cookie應用於amd64,hppa,i386,mips64和powerpc上的jmpbuf中的堆棧和返回地址值。
  • SROP緩解:sigreturn(2)現在只能由內核提供的信號trampoline使用,並使用cookie來檢測重用它的嘗試。
  • 為了阻止代碼重用漏洞,rc(8)在啟動時重新鏈接libc.so,以隨機順序放置對象。
  • 在getpwnam(3)系列函數中,默認情況下停止打開影子數據庫。
  • 允許tcpdump(8)-r在沒有root權限的情況下啟動。
  • 刪除systrace。
  • 刪除Linux仿真支持。
  • 刪除對usermount選項的支持。
  • TCP SYN緩存不時重新設置其隨機散列函數。這可以防止攻擊者通過計時攻擊來計算哈希函數的分佈。
  • 為了防止SYN泛洪攻擊,管理員現在可以更改哈希數組的大小。 netstat(1)-s -p tcp顯示使用sysctl(8)net.inet.tcp調整SYN緩存的相關信息。
  • 管理員可以要求root權限以使用sysctl(8)net.inet.tcp.rootonly和sysctl(8)net.inet.udp.rootonly綁定到某些TCP和UDP端口。
  • 從mbuf(9)數據結構中刪除函數指針,並將索引用於可接受函數的數組中。
  • 各種改進:
  • 現在可以將線程庫加載到單線程進程中。
  • 改進了libc中的符號處理和標準合規性。例如,定義open()函數將不再乾擾fopen(3)的操作。
  • 最初加載的對象現在支持PT_TLS部分。
  • 改進了fts(3)中“無路徑”和“空路徑”的處理。
  • 在pcap(3)中,提供pcap_free_datalinks()和pcap_offline_filter()函數。
  • editline(3)庫中的許多錯誤修正和結構清理。
  • 刪除古老的dbm(3)函數; ndbm(3)仍然存在。
  • 在doas.conf(5)中添加setenv關鍵字以實現更強大的環境處理。
  • 將-g和-p選項添加到aucat.1以進行時間定位。
  • 使用更簡單的用戶界面重寫audioctl(1)。
  • 在關閉文件之前,添加-F選項以將文件安裝(1)到fsync(2)。
  • kdump(1)現在轉儲pollfd結構。
  • 改進ksh(1)POSIX合規性的各種細節。
  • mknod(8)以承諾(2)友好的方式重寫,並支持一次創建多個設備。
  • 實施rcctl(8)get all和getdef all。
  • 實施rcs(1)-I(交互式)標誌。
  • 在rcs(1)中,實現Mdocdate關鍵字替換。
  • 在top(1)中,允許過濾進程參數(如果正在顯示它們)。
  • 為fold(1)和rev(1)添加了UTF-8支持。
  • 默認情況下在xterm(1)和pod2man(1)中啟用UTF-8。
  • 過濾掉牆(1)中的非ASCII字符。
  • 在許多程序中一致地處理COLUMNS環境變量。
  • 選項-c和-k允許在發送端為syslogd(8)提供TLS客戶端證書。通過這種方式,接收方可以驗證日誌消息是否可信。請注意,syslogd還沒有此檢查功能。
  • 當klog緩衝區溢出時,syslogd將寫一條日誌消息,表明缺少某些條目。
  • 在OpenBSD / octeon上,啟用CPU緩存寫緩衝以提高性能。
  • pkg_add(1)和pkg_info(1)現在理解了分支的概念,以便於選擇一些流行的軟件包,如python或php,例如pkg_add python%3.4來選擇3.4分支,並使用pkg_info -zm來得到一個模糊列表,其分支選擇適合pkg_add -l。
  • fdisk(8)和pdisk(8)會立即退出,除非傳遞了角色特殊設備
  • st(4)正確跟踪可變大小塊的當前塊計數
  • fsck_ext2fs(8)再次工作
  • softraid(4)卷可以使用扇區大小不是512字節的磁盤構建
  • dhclient(8)拒絕並丟棄未使用的OFFER。
  • dhclient(8)如果其接口(例如網橋(4))在發送數據包時返回EAFNOSUPPORT,則會立即退出。
  • httpd(8)為HTTP v0.9請求返回400 Bad Request。
  • ffs2的延遲節點初始化避免將隨機磁盤數據視為inode
  • fcntl(2)基礎程序中的調用使用成語fcntl(n,F_GETFL)代替fcntl(n,F_GETFL,0)

  • 基本程序中的
  • socket(2)和accept4(2)調用使用SOCK_NONBLOCK來消除對單獨fcntl(2)的需要。
  • 默認情況下未啟用tmpfs
  • pledge(2)的內核語義在很多方面得到了改進。重點包括:新的承諾承諾,允許承諾的程序設置setugid屬性,更嚴格執行recvfd承諾和chroot(2)不再允許承諾的程序。
  • 許多承諾(2)相關的錯誤(缺少承諾,行為的意外變化,崩潰)被修復,特別是在gzip(1),nc(1),sed(1),skeyinit(1),stty (1),以及各種與磁盤相關的實用程序,例如disklabel(8)和fdisk(8)。
  • 已修復audio(4)驅動程序中的塊大小計算錯誤。
  • usb(4)驅動程序現在緩存供應商和產品ID。修復了usbdevs(8)在循環中調用會導致USB大容量存儲設備停止運行的問題。
  • rsu(4)和ural(4)司機在5.9中意外破壞後再次正在工作。
  • OpenSMTPD 6.0.0
  • 安全性:
  • 在smtpd(8)中實現fork + exec模式。
  • 修復SMTP狀態機中的邏輯問題,該問題可能導致無效狀態並導致崩潰。
  • 插入文件指針洩漏,可能導致資源耗盡並導致崩潰。
  • 使用自動DH參數而不是固定參數。
  • 默認情況下禁用DHE,因為它的計算成本很高且是潛在的DoS向量。
  • 版本6.1中帶來了以下改進:
  • 將-r選項添加到smtpd(8)enqueuer以與mailx兼容。
  • 在偵聽提交端口時添加缺少日期或消息ID。
  • 修復“smtpctl show queue”報告“無效”信封狀態。
  • 重寫“已接收”標題的格式,以便TLS部分不違反RFC。
  • 增加允許本地地址建立的連接數,並減少同一會話中事務之間的延遲。
  • 修復LMTP傳遞到返回延續行的服務器。
  • 進一步改進仍在進行實驗的過濾器API並修復各種相關問題。
  • 開始改進和統一日誌消息的格式。
  • 修復了手冊頁中的幾個文檔差異和拼寫錯誤。
  • OpenSSH 7.3
  • 安全性:
  • sshd(8):通過sshd(8)緩解對系統crypt(3)功能的潛在拒絕服務攻擊。攻擊者可能會發送非常長的密碼,這會導致在密碼中使用過多的CPU(3)。 sshd(8)現在拒絕接受長度超過1024個字符的密碼驗證請求。
  • sshd(8):在發送長密碼並在服務器上使用特定密碼哈希算法時,緩解密碼身份驗證中的時序差異,該身份驗證可用於從無效帳戶名中辨別有效。 CVE-2016-6210。
  • ssh(1),sshd(8):修復CBC填充oracle對策中可觀察到的時序弱點。請注意,默認情況下禁用CBC密碼,僅包括舊版兼容性。
  • ssh(1),sshd(8):改進加密 - 然後 - MAC(EtM)模式傳輸MAC算法的MAC驗證的順序,以在解密任何密文之前驗證MAC。這消除了時間差異洩露有關明文的事實的可能性,儘管沒有這種洩漏是已知的。
  • 新功能/已更改功能:
  • 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)
  • 版本6.1中修復了以下重大錯誤:
  • 在scp(1)和sftp(1)中,通過轉義不形成ASCII或UTF-8字符的字節來防止搞砸終端設置。
  • 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)
  • OpenNTPD 6.0
  • 如果指定了單個“約束”,請嘗試所有返回的地址,直到成功,而不是第一個返回的地址。
  • 放寬約束誤差範圍以與NTP對等體的數量成比例,避免在存在錯誤的NTP對等體時不斷重新連接。
  • 刪除了已禁用的熱插拔(4)傳感器支持。
  • 添加了對檢測約束子進程中崩潰的支持。
  • 將約束的執行從ntp進程移動到父進程,從而允許更好的權限分離,因為可以進一步限制ntp進程。
  • 修復網絡故障時的高CPU使用率。
  • 修復了各種內存洩漏問題。
  • 切換到RMS以進行抖動計算。
  • 與其他OpenBSD基本程序一起使用統一日誌記錄功能。
  • 設置MOD_MAXERROR以避免在使用ntp_adjtime時未同步的時間狀態。
  • 修復了HTTP時間戳標頭解析,以便以更便攜的方式使用strptime(3)。
  • 針對ntpd(8)約束的強化TLS,啟用服務器名稱驗證。
  • LibreSSL 2.4.2
  • 用戶可見的功能:
  • 修復了安裝目標中的一些損壞的聯機幫助頁鏈接。
  • cert.pem已經重組並與Mozilla的證書商店同步。
  • 可靠性修復,在解析超過16k的某些ASN.1元素時糾正錯誤。
  • 實施了IETF ChaCha20-Poly1305密碼套件。
  • 修復了openssl(1)的密碼提示,以正確處理^ C.
  • 代碼改進:
  • 通過添加'install_sw'構建目標來解決nginx兼容性問題。
  • 將默認EVP_aead_chacha20_poly1305(3)實施更改為IETF版本,現在是默認版本。
  • 在libtls中重寫錯誤處理,以便更容易看到配置錯誤。
  • 圍繞bn_wexpand(3)調用添加了缺失的錯誤處理。
  • 為釋放的ASN.1對象添加了explicit_bzero(3)調用。
  • 修正X509_ * set_object函數在分配失敗時返回0。
  • 不推薦使用EVP_ [Cipher | Encrypt | Decrypt] _Final。
  • 修復了一個問題,即使設置了標誌BN_FLG_CONSTTIME,也會阻止DSA簽名算法在常量時間內運行。
  • 修復了OCSP代碼中可能導致錯誤生成和解析OCSP請求的幾個問題。這可以解決在這些函數中解析時缺少錯誤的問題,並確保根據RFC 6960,OCSP只接受GENERALIZEDTIME格式。
  • 以下CVE已修復:
  • CVE-2016-2105-EVP_EncodeUpdate overflow。
  • CVE-2016-2106-EVP_EncryptUpdate溢出。
  • CVE-2016-2107-padding oracle in AES-NI CBC MAC check。
  • ASN.1編碼器中的CVE-2016-2108內存損壞。
  • CVE-2016-2109-ASN.1 BIO過多的內存分配。
  • 端口和包:
  • ports樹中的新proot(1)工具,用於在chroot中構建包。
  • 每個架構的許多預構建包:
  • alpha:7422
  • amd64:9433
  • hppa:6346
  • i386:9394
  • mips64:7921
  • mips64el:7767
  • powerpc:8318
  • sparc64:8570
  • 一些亮點:
  • Afl 2.19b
  • Chromium 51.0.2704.106
  • Emacs 21.4和24.5
  • GCC 4.9.3
  • GHC 7.10.3
  • Gimp 2.8.16
  • GNOME 3.20.2
  • 去1.6.3
  • Groff 1.22.3
  • JDK 7u80和8u72
  • KDE 3.5.10和4.14.3(加上KDE4核心更新)
  • LLVM / Clang 3.8.0
  • LibreOffice 5.1.4.2
  • Lua 5.1.5,5.2.4和5.3.3
  • MariaDB 10.0.25
  • Mono 4.4.0.182
  • Mozilla Firefox 45.2.0esr和47.0.1
  • Mozilla Thunderbird 45.2.0
  • Mutt 1.6.2
  • Node.js 4.4.5
  • Ocaml 4.3.0
  • OpenLDAP 2.3.43和2.4.44
  • PHP 5.5.37,5.6.23和7.0.8
  • Postfix 3.1.1和3.2-20160515
  • PostgreSQL 9.5.3
  • Python 2.7.12,3.4.5和3.5.2
  • R 3.3.1
  • Ruby 1.8.7.374,2.0.0.648,2.1.9,2.2.5和2.3.1
  • Rust 1.9.0-20160608
  • Sendmail 8.15.2
  • Sudo 1.8.17.1
  • Tcl / Tk 8.5.18和8.6.4
  • TeX Live 2015
  • Vim 7.4.1467
  • Xfce 4.12
  • 像往常一樣,手動頁面和其他文檔的穩步改進。
  • 該系統包括來自外部供應商的以下主要組件:
  • Xenocara(基於X.Org 7.7,xserver 1.18.3 +補丁,freetype 2.6.3,fontconfig 2.11.1,Mesa 11.2.2,xterm 322,xkeyboard-config 2.18等)
  • GCC 4.2.1(+補丁)和3.3.6(+補丁)
  • Perl 5.20.3(+補丁)
  • SQLite 3.9.2(+補丁)
  • NSD 4.1.10
  • Unbound 1.5.9
  • Ncurses 5.7
  • Binutils 2.17(+補丁)
  • Gdb 6.3(+補丁)
  • Awk 2011年8月10日版
  • Expat 2.1.1

類似的軟件

意見 OpenBSD

評論沒有發現
添加評論
打開圖片!