OpenBSD는 4.4BSD 플랫폼 기반의 이식 가능하고 효율적이며 안전하며 다중 플랫폼 UNIX와 유사한 운영 체제를 제공하는 무료 프로젝트입니다. 전세계 수십만 대의 컴퓨터에서 사용되는 강력한 서버 제품입니다.
가용성, 부팅 옵션, 지원되는 플랫폼
운영 체제는 전용 섹션 (위 참조)에서 사용자가 네트워크를 통해 설치할 수있는 ISO 이미지 또는 바이너리 패키지로 무료로 다운로드 할 수 있습니다. ISO 이미지는 대부분의 PC의 BIOS에서 직접 부팅 할 수있는 CD 디스크에 구울 수 있습니다.
OpenBSD는 SVR4 (Solaris), FreeBSD, Linux, BSD, SunOS 및 HP-UX에서 대부분의 프로그램의 바이너리 에뮬레이션을 지원합니다. i386, sparc64, alpha, m68k, sh, amd64, PowerPC, m88k 등 다양한 아키텍처에 설치할 수 있습니다. & nbsp; sparc, ARM, hppa, vax, mips64 및 mips64el.
CD 이미지는 사용자의 개입없이 자동으로 부팅되며 운영 체제를 수동으로 설치, 업그레이드 또는 자동 설치할지 묻는 메시지와 함께 셸 프롬프트로 전환됩니다.
수동 또는 자동 설치
표준 (읽기 : 수동) 설치에서는 사용자가 키보드 레이아웃을 선택하고, 호스트 이름을 설정하고, 네트워크 인터페이스를 선택하고, IPv4 및 / 또는 IPv6로 구성하고 루트에 대한 새 암호를 설정해야합니다 시스템 관리자) 계정.
또한 시스템 시작시 SSH 및 NTP 서비스를 시작하도록 선택하고, X 윈도우 시스템을 사용할지 여부를 선택하고, 사용자를 설정하고, 시간대를 선택하고, 디스크 드라이브를 파티션하고, 세트를 설치할 수 있습니다 .
GNOME, KDE, Xfce 데스크탑 환경, MySQL, PostgreSQL, Postfix 및 OpenLDAP 서버, Mozilla Firefox, Mozilla Thunderbird, LibreOffice, Emacs, Vim 및 Chromium 응용 프로그램을 포함하는 OpenBSD에 포함 된 소프트웨어 패키지 중, PHP, Python, Ruby, Tcl / Tk, JDK, Mono 및 Go 프로그래밍 언어와 함께 사용할 수 있습니다.
결론
요약하자면, OpenBSD는 OpenSSH, OpenNTPD, OpenSMTPD, OpenBGPD, OpenIKED 및 mandoc을 포함한 최신 소프트웨어를 우리에게 제공하는 강력하고 높은 평판을 얻은 서버 지향 BSD / UNIX 운영 체제입니다. p>
이 릴리스의 새로운 기능 :
개선 된 하드웨어 지원 :
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) 드라이버.
Bosch 모션 센서 용 새 bgw (4) 드라이버.
Broadcom 및 Cypress FullMAC 802.11 장치 용 새 bwfm (4) 드라이버 (아직 실험 중이며 기본적으로 커널에 컴파일되지 않음)
EFI 런타임 서비스 용 새 efi (4) 드라이버.
i.MX6 통합 레귤레이터 용 새로운 imxanatop (4) 드라이버.
Rockchip RK3399 호스트 / PCIe 브리지 용 새 rkpcie (4) 드라이버.
Allwinner Reduced Serial Bus 컨트롤러 용 새 sxirsb (4) 드라이버.
Allwinner 온도 모니터 용 새 sxitemp (4) 드라이버.
Allwinner A10 / A20 터치 패드 컨트롤러의 온도 센서 용 새 sxits (4) 드라이버.
여러 개의 Allwinner SoC에서 발견되는 2 선 버스를위한 새로운 sxitwi (4) 드라이버.
Silergy SY8106A 조절기 용 새 sypwr (4) 드라이버.
Rockchip RK3288 / RK3328 SoC에 대한 지원이 rktemp (4) 드라이버에 추가되었습니다.
Allwinner A10 / A20, A23 / A33, A80 및 R40 / V40 SoC에 대한 지원이 sxiccmu (4) 드라이버에 추가되었습니다.
Allwinner A33, GR8 및 R40 / V40 SoC에 대한 지원이 sxipio (4) 드라이버에 추가되었습니다.
SAS3.5 MegaRAID에 대한 지원이 mfii (4) 드라이버에 추가되었습니다.
Intel Cannon Lake 및 Ice Lake 통합 이더넷에 대한 지원이 em (4) 드라이버에 추가되었습니다.
cnmac (4) 포트는 이제 분산 인터럽트 처리를 위해 다른 CPU 코어에 할당됩니다.
pms (4) 드라이버는 이제 재설정 알림을 감지하고 처리합니다.
amd64 Intel CPU 마이크로 코드가 부팅시로드되고 fw_update (1)에 의해 설치 / 업데이트됩니다.
SPARC T7-1 / 2 / 4 시스템에 대한 지원을 추가하여 sun4v 하이퍼 바이저 인터럽트 쿠키 API를 지원합니다.
sdhc (4) 컨트롤러에 연결된 SD / MMC 저장 장치에 대한 최대 절전 모드 지원이 추가되었습니다.
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 유니 커널를 지원하십시오.
유효한 (그러나 드문) 명령어 인코딩을보다 잘 처리하십시오.
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 키를 자동으로 지 웁니다.
사용자 영역에서 구성된 WEP / WPA 키를 커널에서 다시 읽을 수있는 기능이 제거되었습니다.iwm (4) 드라이버는 이제 숨겨진 SSID로 네트워크에 연결할 수 있습니다.
athn (4) 드라이버가 지원하는 USB 장치는 이제 오픈 소스 펌웨어를 사용하며 hostap 모드는 이제 이러한 장치와 작동합니다.
일반적인 네트워크 스택 개선 :
IPsec을 사용할 때 네트워크 스택이 더 이상 KERNEL_LOCK ()을 사용하여 실행되지 않습니다.
들어오는 TCP / UDP 패킷 처리는 이제 KERNEL_LOCK ()없이 수행됩니다.
소켓 연결 작업은 KERNEL_LOCK ()없이 실행됩니다.
sys / netinet6에서 자동 구성이 사용자 영역에서 실행되기 때문에 코드 정리 및 제거
bridge (4) 멤버는 이제 새로운 보호 옵션을 사용하여 서로 이야기하는 것을 방지 할 수 있습니다.
pf 전환 패킷 기능이 단순화되었습니다. ip_DIVERTFL 소켓 옵션은 divert (4)에서 제거되었습니다.
pf divert-to와 divert-reply의 다양한 구석이 더 일관성있게 나타납니다.
pf (4)에서 모든 이웃 검색 패킷의 IPv6 헤더 홉 한계 필드에 255가 있음을 강요합니다.
pf.conf (5)의 새로운 syncookies 옵션 설정.
IPv6를 통한 GRE 지원.
GRE 터널을 통한 이더넷 용 새 egre (4) 드라이버.
gre (4) 및 egre (4)에서 선택적 GRE 키 헤더 및 GRE 키 엔트로피 지원.Generic Routing Encapsulation을 사용하는 네트워크 가상화 용 새 nvgre (4) 드라이버.
터널 인터페이스로 캡슐화 된 Do not Fragment 플래그 패킷 구성 지원.
설치 개선 :
install.site 또는 upgrade.site가 실패하면 사용자에게 알리고 rand.seed를 저장 한 후에 오류가 발생합니다.
IPv4 및 IPv6 주소를 입력 할 때 CIDR 표기법을 허용합니다.
미러 목록에서 HTTP 미러 선택을 복구합니다.
사용자 이름에 '-'허용.
설치 / 업그레이드 프로세스가 끝나면 질문을 통해 캐리지 리턴으로 인해 적절한 조치가 취해집니다. 재부팅하십시오.
호스트 이름이 알려져 있지 않으면 모드 (설치 또는 업그레이드) 쉘 프롬프트를 표시하십시오.
어떤 인터페이스가 기본 라우트를 갖고 있는지 그리고 DHCP를 통해 구성된 경우 제대로 감지합니다.
프리 페치 영역에서 세트를 읽을 수 있는지 확인하십시오.
URL 리디렉션이 전체 설치 / 업그레이드에 효과적인지 확인하십시오.
rc.firsttime에 세트를 가져올 때 사용되는 HTTP 프록시를 추가하십시오. 여기서 fw_update와 syspatch가 세트를 찾아서 사용할 수 있습니다.
SLAAC로 RFC 7217을 지원하는 논리를 추가하십시오.
vlan (4)와 같이 동적으로 생성 된 네트워크 인터페이스에 대해 IPv6이 구성되었는지 확인하십시오.도메인 이름 및 도메인 검색 옵션이 모두 DHCP리스에서 제공 될 때 올바른 호스트 이름을 만듭니다.
라우팅 데몬 및 기타 사용자 네트워크 향상 :
bgpctl (8)에는 새 ssv 옵션이 있습니다.이 옵션은 립 항목을 출력 전에 선택 항목처럼 세미콜론으로 구분하여 출력합니다.
slaacd (8)는 RFC 7217에 따라 무작위이지만 안정적인 IPv6 상태 비 저장 자동 구성 주소를 생성합니다. 이는 RFC 8064에 따라 기본값별로 활성화됩니다.
slaacd (8)는 RFC 7217 (랜덤이지만 안정) 및 RFC 4941 (프라이버시) 스타일 무 상태 자동 구성 주소를 사용하여 / 64 크기의 접두어에 대한 인위적인 제한을 제거하여 RFC 4862를 따릅니다.
ospfd (8)는 이제 인터페이스의 상태에 따라 라우트에 대한 메트릭을 설정할 수 있습니다.
ifconfig (8)에는 인터페이스가 ARP 요청에만 응답하도록하는 새로운 staticarp 옵션이 있습니다.
ipsecctl (8)은 이제 같은 소스 나 목적지를 가진 흐름 출력을 붕괴 할 수 있습니다.
netstart (8)의 -n 옵션은 더 이상 기본 경로를 사용하지 않습니다. 이제는 문서화되었습니다.
보안 개선 :
다양한 아키텍처에서 더 많은 트랩 - 썰매를 사용하십시오.
어셈블리 소스의 상수 변수에 대한 .rodata의 사용 확대.x86 사용 중지 "repz ret" 나무의 먼지가 많은 구석에.
& quot; 간행물 & quot; 서약서 (2).
ramfisk를 빌드하는 데 사용 된 elfrdsetroot 유틸리티와 rebound (8) 모니터링 프로세스는 이제 pledge (2)를 사용합니다.
6.3 이후에 mmap (2)에 MAP_STACK을 도입 할 준비를하십시오.
시작할 때 엔트로피로 KARL 링크 된 커널 텍스트의 작은 부분을 난수 생성기로 푸시합니다.
스레드 더미의 맨 위에 작은 무작위 간격을 두어 공격자가 ROP 작업을 수행하기 위해 또 다른 계산을 할 수있게하십시오.
Intel 브랜드 amd64 CPU의 붕괴 취약성 완화.
OpenBSD / arm64는 이제 커널 페이지 테이블 격리를 사용하여 Spectre variant 3 (Meltdown) 공격을 완화합니다.
OpenBSD / armv7과 OpenBSD / arm64는 Spectre Variant 2 공격을 줄이기 위해 추측 실행을하는 프로세서에서 BTB (Branch Target Buffer)를 플러시합니다.
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.conf (5)를 구문 분석 한 후 dhclient (8)가 종료됩니다.
classless-static-routes (121) 및 classless-ms-static-routes (249) 옵션의 기본 경로는 이제 dhclient.leases (5) 파일에 올바르게 표시됩니다.
추가하지 말고 '-L'로 지정된 파일을 덮어 씁니다.
dhclient.leases (5)의리스는 이제 임대가 승인 된 시간을 기록하는 'epoch'속성을 포함합니다.이 속성은 올바른 갱신, 리 바인딩 및 만료 시간을 계산하는 데 사용됩니다.
RFC 952를 위반하는 이름의 밑줄에 대해 더 이상 신경을 쓰지 않습니다.리스를 요청할 때 무조건 호스트 이름 정보를 전송하므로 기본 설치에서 dhclient.conf (5)가 필요하지 않습니다.
기본적으로 조용하게하십시오. '-q'가 제거되었고 자세한 로깅을 가능하게하기 위해 '-v'가 추가되었습니다.
요청한 주소에 대한 중복 제안을 거절하십시오.
link-timeout 초 후에 무조건 백그라운드로 들어갑니다.
조용 할 때 로깅을 대폭 감소 시키지만 '-v'가 사용자 정의 실행 파일을 컴파일 할 필요없이 모든 디버그 정보를 기록하도록하십시오.
dhclient.leases (5)에서 'interface'문을 무시하고 파일의 모든리스가 구성된 인터페이스를위한 것이라고 가정합니다.
인터페이스에 바인딩 된 임대 원본을 표시합니다.
dhclient.conf (5)에서 'ignore', 'request'및 'require'선언을 사용하면 목록을 바꾸는 대신 지정된 옵션을 관련 목록에 추가합니다.
dhclient (8)가 인터페이스를 구성하지 않고 종료 될 수있는 시작 경쟁을 제거하십시오.
다양한 개선 사항 :
malloc (3) 및 친구들에게 코드 재구성 및 기타 개선 사항을 적용하여 효율성을 높입니다.일시 중지 또는 최대 절전 모드 작업을 수행 할 때 모든 파일 시스템이 올바르게 동기화되고 깨끗하게 표시되는지 확인하거나 디스크에 완벽하게 정리 된 상태 (open + unlinked 파일로 인해)가 될 수없는 경우 파일 시스템을 더럽혀서 실패한 재개 / 최대 절전 모드로 설정하십시오 fsck (8) 수행을 보장합니다.
acme-client (1)은 계약 URL을 자동으로 검색하고 30x HTTP 리디렉션을 따릅니다.
최신 C ++ 도구 체인을 지원하는 __cxa_thread_atexit () 추가.
drm (4) 장치에 대한 변경을 모니터링하기 위해 kqueue (2)에 EVFILT_DEVICE 지원을 추가했습니다.
ldexp (3)는 이제 mips64에서 비정규 숫자의 부호를 올바르게 처리합니다.
libm에 새로운 sincos (3) 함수가 있습니다.
fdisk (8)는 편집하는 동안 입력 된 MBR 파티션 오프셋의 유효성을 보장합니다.
fdisk (8)는 이제 기본 값이 유효한 범위 내에 있음을 보장합니다.
less (1)는 '$'의 환경 변수 LESS만을 나눕니다.
less (1)는 초기 명령에서 '$'를 만났을 때 더 이상 가짜 파일을 생성하지 않습니다.
이제 softraid (4)는 볼륨을 어셈블 할 때 청크의 수를 확인하여 디스크 상 및 메모리 내 메타 데이터가 동기화되도록합니다.disklabel (8)은 이제 블록 크기를 편집하기 전에 FFS 파티션의 조각 크기를 편집 할 수 있습니다.
disklabel (8)은 이제 파티션 blocksize를 편집 할 수있을 때마다 실린더 / 그룹 (cpg) 속성을 편집 할 수 있습니다.
disklabel (8)은 (R) esize 명령 중 ^ D 및 유효하지 않은 입력을 감지합니다.
disklabel (8)은 - / + 연산자가 사용될 때 언더 플로와 오버 플로우를 감지합니다.
disklabel (8)은 free chunk에서 실린더 수를 계산할 때 off-by-one을 피합니다.
이제 disklabel (8)은 전체 여유 공간 대신 가장 큰 여유 덩어리의 크기에 대해 요청 된 파티션 크기의 유효성을 검사합니다.
bpf (4)를 통한 USB 전송 덤프 지원.
tcpdump (8)는 이제 USBPcap 형식의 USB 전송 덤프를 이해할 수 있습니다.
csh (1), ksh (1) 및 sh (1)의 기본 프롬프트에는 이제 호스트 이름이 포함됩니다.
ksh (1)의 메모리 할당이 calloc (3)에서 malloc (3)으로 다시 전환되어 초기화되지 않은 메모리를 쉽게 인식 할 수있게되었습니다. 결과적으로 이맥스 편집 모드에서 이력 관련 버그가 발견되어 수정되었습니다.
쉘 대신 명령을 실행하는 새로운 script (1) -c 옵션.
매치 수를 제한하는 새로운 grep (1) -m 옵션.대소 문자를 구별하지 않는 새로운 uniq (1) -i 옵션.
printf (3) 형식 문자열은 % 형식을 찾을 때 더 이상 유효성이 검사되지 않습니다. 안드로이드 및 다른 대부분의 운영 체제에 따른 커밋을 기반으로합니다.
vfwprintf (3)의 향상된 오류 검사.
cron (8), ftp (1), mandoc (1), openssl (1), ssh (1) 및 sshd (8)을 포함하여 오래된 기본 파일 설명자를 위해 많은 기본 프로그램을 감사하고 수정했습니다.
다양한 버그 수정 및 향상된 기능 (1) :
-b, -s, -w 옵션에 대한 인수의 임의의 길이 제한이 제거되었습니다.
% F 형식 지정자가 지원되며 % D 형식의 버그가 수정되었습니다.
회귀 테스트에서 코드 커버리지 향상.
몇 가지 버퍼 오버런이 수정되었습니다.
patch (1) 유틸리티는 이제 파일을 생성하거나 삭제하는 git diffs에 더 잘 대처합니다.
pkg_add (1)는 이제 cdn.openbsd.org와 같은 HTTP (S) 리디렉터에 대한 지원이 향상되었습니다.
ftp (1) 및 pkg_add (1)는 향상된 속도를 위해 HTTPS 세션 재개를 지원합니다.
mandoc (1) -T ps 출력 파일 크기가 50 % 이상 감소했습니다.
시동 중에 경고가 발생하면 syslogd (8) 로그에 기록됩니다.syslogd (8)가 전체 파일 시스템의 파일에 로깅을 중지했습니다. 이제는 경고를 쓰고 공간을 사용할 수있게 된 후에 계속됩니다.
vmt (4)를 사용하면 복제 및 실행중인 게스트의 디스크 전용 스냅 샷을 만들 수 있습니다.
OpenSMTPD 6.0.4
smtpctl (8)에 spf walk 옵션을 추가하십시오.
모듬 된 정리 및 개선.
수많은 수동 페이지 수정 및 개선.
OpenSSH 7.7
새로운 기능 / 변경된 기능 :
전체 : https://tools.ietf.org/html/draft-irtf-cfrg-xmss-hash-based-signatures-12에 설명 된 알고리즘을 기반으로 PQC XMSS 키 (확장 해시 기반 서명)에 대한 실험적 지원을 추가합니다. XMSS 서명 코드는 실험적이며 기본적으로 컴파일되지 않습니다.
sshd (8) : "rdomain"을 추가합니다. sshd_config Match 키워드를 사용하여 연결을 수신 한 라우팅 도메인 (현재 OpenBSD 및 Linux에서 지원됨)에 따라 조건부 구성을 허용합니다.
sshd_config (5) : 선택적인 rdomain 한정자를 ListenAddress 지시자에 추가하여 다른 라우팅 도메인에서 수신 할 수 있도록합니다. 이것은 현재 OpenBSD와 Linux에서만 지원됩니다.sshd_config (5) : RDomain 지시문을 추가하여 인증 된 세션을 명시 적 라우팅 도메인에 배치 할 수있게합니다. 이것은 현재 OpenBSD에서만 지원됩니다.
sshd (8) : & quot; 만료 시간 & quot; 만료 키를 허용하는 authorized_keys 파일의 옵션.
ssh (1) : 나가는 연결을 인터페이스의 주소에 바인딩 할 수 있도록 BindInterface 옵션을 추가합니다 (기본적으로 BindAddress가 더 유용합니다).
ssh (1) : LocalCommand에 대한 새로운 % T 확장을 통해 tun / tap 포워딩을 위해 할당 된 장치를 노출합니다. 이것에 의해, LocalCommand를 사용해 인터페이스를 준비 할 수 있습니다.
sshd (8) : 새로운 SSH_TUNNEL 환경 변수를 통해 tun / tap 포워딩을 위해 할당 된 장치를 노출하십시오. 이를 통해 서버의 인터페이스 및 주변 네트워크 구성을 자동으로 설정할 수 있습니다.
ssh (1) / scp (1) / sftp (1) : ssh, sftp 및 scp에 URI 지원을 추가합니다. ssh : // 사용자 @ 호스트 또는 sftp : // 사용자 @ 호스트 / 경로. draft-ietf-secsh-scp-sftp-ssh-uri-04에 설명 된 추가 연결 매개 변수는 초안의 ssh 지문 형식이 다른 알고리즘을 지정하지 않고 폐기 된 MD5 해시를 사용하기 때문에 구현되지 않습니다.ssh-keygen (1) : 시작 또는 중지 시간 만 지정하는 인증서 유효 기간을 허용합니다 (둘 다 또는 둘 다 대신).
sftp (1) : & quot; cd & quot; 및 "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 # 2810ssh (1) : rsa-sha2-256 / 512 서명이 요청되었을 때 에이전트가 ssh-rsa (SHA1) 서명을 반환 할 때 경고합니다. 이 조건은 이전 또는 비 OpenSSH 에이전트가 사용 중일 때 가능합니다. bz # 2799
ssh-agent (1) : 7.6에 소개 된 회귀 분석을 수정하여 유효하지 않은 서명 요청 메시지가 표시되면 ssh-agent가 심각하게 종료되도록했습니다.
sshd_config (5) : 오랫동안 ssh_config (5) 에서처럼 대소 문자를 구분하지 않고 yes / no 플래그 옵션을 수락합니다. bz # 2664
ssh (1) : 연결 중 실패에 대한 오류보고를 향상시킵니다. 오해의 소지가있는 몇 가지 상황에서 오류가 발생했습니다. bz # 2814
ssh-keyscan (1) : 결과를 SSHFP 형식으로 직접 인쇄 할 수있게하려면 -D 옵션을 추가하십시오. bz # 2821
회귀 테스트 : 마지막 버전의 SSHv1 제거에서 PuTTY interop 테스트가 고장난 문제를 수정합니다. bz # 2823
ssh (1) : IUTF8 (RFC8160) 옵션을 보낼 때 연결을 잘못 삭제하는 일부 서버의 호환성 수정.
scp (1) : scp가 시작한 ssh 세션에서 RemoteCommand와 RequestTTY를 비활성화합니다 (sftp가 이미 이것을 수행하고있었습니다).
ssh-keygen (1) : 사용할 수없는 주체를 가진 인증서 생성을 거부합니다.ssh-keygen (1) : ssh-keygen이 키 생성 중에 모든 공개 키를 쓸 수 없으면 Fatally exit하십시오. 이전에는 주석을 쓰고 줄 바꿈을 종료하는 오류를 자동으로 무시했습니다.
ssh (1) : 주소 인 호스트 이름 인수를 자동으로 소문자로 강제 변경하지 마십시오. 대신 known_host와 일치하기 전에 모호성 (예 : :: 0001 = & gt; :: 1)을 해결할 수 있도록 표준화합니다. bz # 2763
ssh (1) : & quot; 예 & quot; 또는 "아니오" 호스트 키 프롬프트에 대한 응답. bz # 2803
sftp (1) : 첫 번째 패킷의 디코딩이 실패 할 때 sftp가 쉘의 청결에 대한 경고를 출력합니다. 이는 일반적으로 비대화 형 시작의 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 용 코드를 계속 사용할 수 있습니다.
기존 문서가없는 OpenSSL의 새로운 공용 API를 비롯하여 API 설명서에 대한 광범위한 수정, 개선 및 추가.
libcrypto, libssl 및 libtls의 자동 라이브러리 초기화 지원이 추가되었습니다. 이제 대상 운영 체제에 대해 pthread_once 또는 이와 동등한 버전에 대한 지원이 필요합니다. 부작용으로, 최소한의 Windows 지원은 Vista 이상입니다.
더 많은 패킷 처리 방법을 CBB로 변환하여 TLS 메시지를 생성 할 때 탄력성을 향상시킵니다.
잘못된 형식의 중복 된 확장에 대한 검사의 일관성을 개선하여 TLS 확장 처리 작업을 완료했습니다.
템플리트 된 ASN.1을 사용하여 ASN1_TYPE_ {get, set} _octetstring ()을 다시 작성하십시오. 이렇게하면 기존 M_ASN1_ * 매크로 (asn1_mac.h)의 마지막 남은 사용이 계속 존재해야하는 API에서 제거됩니다.libtls에서 클라이언트 측 세션 재개 지원이 추가되었습니다. libtls 클라이언트는 세션 파일 설명자 (적절한 소유권과 권한을 가진 일반 파일)를 지정할 수 있으며 libtls는 TLS 핸드 셰이크 전체에서 세션 데이터의 읽기 및 쓰기를 관리합니다.
ARMv7 아키텍처에서의 엄격한 정렬을위한 지원 개선. 이러한 경우 어셈블리를 조건부로 활성화합니다.
tls_config를 재사용 할 때 libtls에서 메모리 누수가 수정되었습니다.
DTLS 지원을 일반 TLS 코드 경로에 병합하여 중복 된 코드를 제거합니다.
항구와 패키지 :
dpb (1) 및 일반 포트 (7)는 이제 PORTS_PRIVSEP = Yes로 설정하여 동일한 권한 분리 모델을 사용할 수 있습니다.
각 아키텍처에 대한 많은 미리 빌드 된 패키지
아치 64 : 7990
알파 : 1
amd64 : 9912
팔 : 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
이맥스 21.4와 25.3
GCC 4.9.4
GHC 8.2.2
김프 2.8.22
그놈 3.26.2
1.10 이동
Groff 1.22.3
JDK 8u144KDE 3.5.10 및 4.14.3 (KDE4 핵심 업데이트 포함)
LLVM / Clang 5.0.1
LibreOffice 6.0.2.1
루아 5.1.5, 5.2.4 및 5.3.4
MariaDB 10.0.34
Mozilla Firefox 52.7.3esr 및 59.0.2
모질라 썬더 버드 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
녹 1.24.0
센드 메일 8.16.0.21
SQLite3 3.22.0
수도 1.8.22
Tcl / Tk 8.5.19 및 8.6.8
TeX Live 2017
Vim 8.0.1589
Xfce 4.12
매뉴얼 페이지와 다른 문서에서 꾸준히 개선되었습니다.
이 시스템에는 외부 공급 업체의 다음 주요 구성 요소가 포함됩니다.
Xenocara (xserver 1.19.6 + 패치, freetype 2.8.1, fontconfig 2.12.4, Mesa 13.0.6, xterm 330, xkeyboard-config 2.20 이상의 X.Org 7.7 기반)
LLVM / Clang 5.0.1 (+ 패치)
GCC 4.2.1 (+ 패치) 및 3.3.6 (+ 패치)
펄 5.24.3 (+ 패치)
NSD 4.1.20
언 바운드 1.6.8
Ncurses 5.7
Binutils 2.17 (+ 패치)
Gdb 6.3 (+ 패치)
Awk 2011 년 8 월 10 일 버전
Expat 2.2.5
버전 6.2의 새로운 기능 :
신규 / 확장 플랫폼 :
armv7 :
EFI 부트 로더가 추가되었습니다. 이제 커널은 U 부팅 헤더가없는 FAT 또는 EXT 파일 시스템 대신 FFS에서로드됩니다.
현재 하나의 커널과 램 디스크가 모든 SoC에 사용됩니다.
하드웨어는 보드 ID 번호를 기반으로하는 정적 테이블 대신 FDT (Flattened Device Tree)를 통해 동적으로 열거됩니다.
미니 루트 설치 프로그램 이미지에는 EFI 페이로드를 지원하는 U-Boot 2016.07이 포함되어 있습니다.
vax :
제거되었습니다.
향상된 하드웨어 지원 :
Intel Bay Trail GPIO 컨트롤러 용 새 bytgpio (4) 드라이버.
Intel Cherry View GPIO 컨트롤러 용 새 chvgpio (4) 드라이버.
Maxim DS1307 실시간 클록을위한 새로운 maxrtc (4) 드라이버.
비 휘발성 메모리 익스프레스 (NVMe) 호스트 컨트롤러 인터페이스 용 새 nvme (4) 드라이버.
NXP PCF8523 실시간 클럭을위한 새로운 pcfrtc (4) 드라이버.
모바일 광대역 인터페이스 모델 (MBIM) 용 새 umb (4) 드라이버
RealTek RTL8152 기반 10/100 USB 이더넷 장치 용 New ure (4) 드라이버.
Fushicai USBTV007 기반의 오디오 / 비디오 캡처 장치 용 새로운 utvfu (4) 드라이버.
GPIO 신호 인터럽트를 사용하는 I2C HID 장치에 대한 지원이 dwiic (4)에 추가되었습니다.
sdmmc (4), rtsx (4), sdhc (4) 및 imxesdhc (4)에는 더 큰 버스 폭, 고속 모드 및 DMA 전송에 대한 지원이 추가되었습니다.
Octeon II SoC에서 EHCI 및 OHCI 호환 USB 컨트롤러 지원.
많은 USB 장치 드라이버가 OpenBSD / octone에서 활성화되었습니다.
하드웨어가 감소 된 ACPI 구현에 대한 지원이 향상되었습니다.
ACPI 5.0 구현에 대한 향상된 지원.
이제 AES-NI 암호는 커널 잠금을 유지하지 않고 수행됩니다.
PowerPC G5 시스템의 향상된 AGP 지원.
Intel Bay Trail SoCs의 SD 카드 슬롯에 대한 지원이 추가되었습니다.
ichiic (4) 드라이버는 SMBALERT # 인터럽트를 무시하고 버그가있는 BIOS 구현으로 인한 인터럽트 폭풍을 방지합니다.
axen (4) 드라이버의 장치 연결 문제가 수정되었습니다.
ral (4) 드라이버는 RT2860 장치로 인해 더 안정적입니다.
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 이벤트에 대한 정보를 표시합니다.
호스트 모드에서는 캐시 된 노드의 연관 ID를 다시 사용하지 마십시오. 잘못된 노드 객체에서 Tx rate accounting이 발생했기 때문에 ral (4) 드라이버를 사용하는 액세스 포인트가 1 Mbps에서 멈추는 문제를 수정했습니다.
일반적인 네트워크 스택 개선 :
이제 라우팅 테이블은보다 빠른 조회를 제공하는 ART를 기반으로합니다.
전달 경로에서 패킷 당 경로 조회 수가 1로 감소했습니다.
VLAN 헤더의 prio 필드는 이제 vlan (4) 인터페이스에서 나가는 IPv4 패킷의 각 조각에 올바르게 설정됩니다.
bpf (4)에 대한 장치 복제가 활성화되었습니다. 이를 통해 시스템은 모든 bpf 소비자 (최대 1024)를 서비스하는 / dev에 단 하나의 bpf 장치 노드 만 가질 수 있습니다.
이제 cnmac (4) 드라이버의 Tx 큐를 나머지 커널과 병렬로 처리 할 수 있습니다.
이제 네트워크 입력 경로가 스레드 컨텍스트에서 실행됩니다.
설치 개선 :
제한된 사용자 코드 목록 업데이트
install.sh 및 upgrade.sh를 install.sub로 병합했습니다.
업데이트는 fw_update (1) 전에 sysmerge (8)를 배치 모드로 자동 실행합니다.질문 및 답변은 autoinstall (8)에서 사용할 응답 파일로 사용할 수있는 형식으로 기록됩니다.
설치 중에 / usr / local이 wxallowed로 설정됩니다.
라우팅 데몬 및 기타 사용자 네트워크 향상 :
rc.d (8) 및 rcctl (8)에 라우팅 테이블 지원을 추가하십시오.
nc (1)은 포트 번호와 함께 서비스 이름을 지원합니다.
nc (1)에 -M 및 -m TTL 플래그를 추가하십시오.
tcpbench (1)에 AF_UNIX 지원을 추가하십시오.
rarpd (8)에서 회귀 현상이 수정되었습니다. 오랜 시간 동안 유휴 상태 였으면 데몬이 멈출 수 있습니다.
ifconfig (8)에 llprio 옵션을 추가했습니다.
/ dev / bpf * 장치를 루핑하는 대신 / dev / bpf0을 열어 bpf (4)를 사용하는 여러 프로그램이 bpf (4) 장치 복제를 활용하도록 수정되었습니다. 이 프로그램에는 arp (8), dhclient (8), dhcpd (8), dhcrelay (8), hostapd (8), mopd (8), npppd (8), rarpd (8), rbootd (8). libpcap 라이브러리도 그에 따라 수정되었습니다.
보안 개선 :W ^ X는 기본적으로 엄격하게 시행됩니다. 실행 파일이 PT_OPENBSD_WXNEEDED로 표시되고 wxallowed mount (8) 옵션으로 마운트 된 파일 시스템에 위치하는 경우에만 프로그램이이를 위반할 수 있습니다. 여전히 W ^ X를 위반하는 포트가 너무 많기 때문에 설치 프로그램은 wxallowed를 사용하여 / usr / local 파일 시스템을 마운트합니다. 이렇게하면 / usr / local이 별도의 파일 시스템 인 한 기본 시스템의 보안이 강화됩니다. W ^ X 위반 프로그램을 사용하지 않는 경우 수동으로 해당 옵션을 취소하는 것이 좋습니다.
setjmp (3) 계열의 함수는 이제 amd64, hppa, i386, mips64 및 powerpc의 jmpbuf에있는 스택 및 반환 주소 값에 XOR 쿠키를 적용합니다.
SROP 완화 : sigreturn (2)은 커널이 제공 한 신호 trampoline에 의해서만 재사용 시도를 탐지하는 쿠키와 함께 사용될 수 있습니다.
코드 재사용 취약점을 막기 위해 rc (8)은 시작시 libc.so를 다시 링크하여 객체를 임의의 순서로 배치합니다.
getpwnam (3) 계열의 함수에서 기본적으로 섀도 데이터베이스를 열지 마십시오.
루트 권한없이 tcpdump (8) -r을 시작하도록 허용하십시오.
systrace를 제거하십시오.
Linux 에뮬레이션 지원을 제거하십시오.
usermount 옵션에 대한 지원을 제거하십시오.TCP SYN 캐시는 임의의 해시 함수를 수시로 다시 시드합니다. 이렇게하면 공격자가 타이밍 공격으로 해시 함수의 분포를 계산할 수 없습니다.
SYN 플러딩 공격에 대비하기 위해 관리자는 이제 해시 배열의 크기를 변경할 수 있습니다. netstat (1) -s -p tcp는 sysctl (8) net.inet.tcp로 SYN 캐시를 조정하는 관련 정보를 표시합니다.
관리자는 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 키워드를 추가하십시오.
시간 위치 지정을 위해 aucat.1에 -g 및 -p 옵션을 추가하십시오.
보다 간단한 사용자 인터페이스로 audioctl (1)을 다시 작성하십시오.
파일을 닫기 전에 파일을 fsync (2)에 설치하려면 -F 옵션을 추가하십시오.
kdump (1)는 이제 pollfd 구조체를 덤프합니다.
ksh (1) POSIX 준수의 다양한 세부 사항을 향상시킵니다.
mknod (8)는 서약 (2) 친화적 인 스타일로 다시 작성되며 동시에 여러 장치를 만드는 것을 지원합니다.
구현 rcctl (8) 모두를 얻을 getdef 모두.
rcs (1) -I (대화식) 플래그를 구현하십시오.
rcs (1)에서 Mdocdate 키워드 대체를 구현하십시오.
top (1)에서 프로세스 인수가 표시되는 경우이를 필터링 할 수 있습니다.
fold (1) 및 rev (1)에 UTF-8 지원이 추가되었습니다.
xterm (1) 및 pod2man (1)에서 기본적으로 UTF-8을 활성화하십시오.
wall (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)가 다시 작동합니다.
512 바이트 이외의 섹터 크기를 가진 디스크로 softraid (4) 볼륨을 구성 할 수 있습니다.
dhclient (8) DECLINE이 사용하지 않는 제안을 버립니다.
dhclient (8)는 패킷이 전송 될 때 인터페이스 (예 : bridge (4))가 EAFNOSUPPORT를 반환하면 즉시 종료됩니다.httpd (8)은 HTTP v0.9 요청에 대해 400 개의 잘못된 요청을 반환합니다.
ffs2의 게으른 노드 초기화는 랜덤 디스크 데이터를 아이 노드로 취급하는 것을 방지합니다.
기본 프로그램의 fcntl (2) 호출은 fcntl (n, F_GETFL, 0) 대신 fcntl (n, F_GETFL) 관용구를 사용합니다.
기본 프로그램의 socket (2) 및 accept4 (2) 호출은 SOCK_NONBLOCK을 사용하여 별도의 fcntl (2)을 사용할 필요가 없습니다.
tmpfs는 기본적으로 활성화되어 있지 않습니다.
서약의 커널 내 의미 (2)는 여러면에서 개선되었다. 주요 내용은 다음과 같습니다 : 약속 된 프로그램이 setugid 속성을 설정할 수 있도록하는 새로운 chown 약속, recvfd 약속 및 chroot (2)의 엄격한 시행은 약속 된 프로그램에 대해 더 이상 허용되지 않습니다.
gzip (1), nc (1), sed (1), skeyinit (1), stty (1) 등 여러 서약 (2) 관련 버그 (약속 없음, 의도하지 않은 동작 변경, , 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에 도입되었습니다.
mailx와의 호환성을 위해 -r 옵션을 smtpd (8) enqueuer에 추가하십시오.
제출 포트에서 청취 할 때 누락 날짜 또는 메시지 ID를 추가하십시오.
& quot; smtpctl show queue & quot;를 수정합니다. "무효" 봉투 상태.
& quot; 수신 된 & quot; TLS 부분이 RFC를 위반하지 않도록해야합니다.
로컬 주소가 설정할 수있는 연결 수를 늘리고 같은 세션의 트랜잭션 간 지연을 줄입니다.
연속 줄을 반환하는 서버에 대한 LMTP 배달을 수정했습니다.여전히 실험 필터 API를 개선하고 다양한 관련 문제를 수정하십시오.
로그 메시지의 형식을 개선하고 통합하기 시작하십시오.
설명서 페이지의 몇 가지 문서 불일치와 오타를 수정했습니다.
OpenSSH 7.3
보안:
sshd (8) : sshd (8)를 통해 시스템의 crypt (3) 기능에 대한 잠재적 인 서비스 거부 공격을 완화합니다. 공격자는 crypt (3)에서 과도한 CPU 사용을 유발할 수있는 매우 긴 암호를 보낼 수 있습니다. 이제 sshd (8)는 1024 자 이상의 암호 인증 요청을 거부합니다.
sshd (8) : 긴 암호가 전송되고 특정 암호 해싱 알고리즘이 서버에서 사용 중일 때 유효하지 않은 계정 이름을 유효하게 식별하는 데 사용할 수있는 암호 인증의 타이밍 차이를 줄입니다. CVE-2016-6210.
ssh (1), sshd (8) : CBC 패딩 오라클 대책에서 관찰 가능한 타이밍 약점을 수정합니다. CBC 암호는 기본적으로 사용되지 않으며 레거시 호환성을 위해서만 포함됩니다.ssh (1), sshd (8) : 임의의 암호문을 해독하기 전에 MAC을 확인하기 위해 MAC (Encrypt-then-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) : 초안 -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 문자를 형성하지 않는 바이트를 이스케이프 처리하여 터 L 널 설정을 f 지하십시오.
ssh (1), sshd (8) : 비교적 일반적인 프로토콜 이벤트의 syslog 수준을 LOG_CRIT에서 줄입니다. (bz # 2585)
sshd (8) : Refuse AuthenticationMethods = & quot; & quot; 여러 인증을 필요로하지 않는 기본 동작에 대해서는 AuthenticationMethods = any를 허용합니다. (bz # 2398)
sshd (8) : 구식의 오해의 소지가있는 "가능한 중단 시도"를 제거하십시오. 정방향 및 역방향 DNS가 일치하지 않을 때의 메시지 (bz # 2585)
ssh (1) : 디버그 모드 나 syslog에 로깅 할 때를 제외하고 ControlPersist 백그라운드 프로세스 표준 오류를 닫습니다. (bz # 1988)
기타 : direct-streamlocal@openssh.com 채널 열기 메시지에 대한 PROTOCOL 설명을 배포 된 코드와 일치 시키십시오. (bz # 2529)
ssh (1) : 중복 제거 LocalForward 및 RemoteForward 항목으로 인해 ExitOnForwardFailure와 hostname canonicalisation이 모두 사용되는 경우 오류를 수정합니다. (bz # 2562)
sshd (8) : moduli에서 쓸모없는 "소수"로 폴백을 제거합니다. 2001 년에 비추천 된 파일입니다. (bz # 2559)sshd_config (5) : UseDNS의 올바른 설명 : known_hosts가 아닌 authorized_keys에 대한 ssh 호스트 이름 처리에 영향을줍니다. (bz # 2554)
ssh (1) : 파일 시스템에 해당 개인 키가없는 에이전트의 단독 인증서 키를 사용하여 인증 수정. (bz # 2550)
sshd (8) : 시간 기반 RekeyLimit이 설정되면 ClientAliveInterval ping을 보냅니다. 이전에 keepalive 패킷이 전송되지 않았습니다. (bz # 2252)
OpenNTPD 6.0
단일 "제약" 가 지정된 경우, 첫 번째로 반환 된 주소가 아니라 하나가 성공할 때까지 모든 반환 된 주소를 시도하십시오.
제약 조건 오류 마진이 NTP 피어의 수에 비례하도록 완화하고, 나쁜 NTP 피어가있을 때 지속적인 재 연결을 피하십시오.
비활성화 된 hotplug (4) 센서 지원이 제거되었습니다.
제약 조건 하위 프로세스에서 충돌을 감지하는 기능이 추가되었습니다.
ntp 프로세스의 제약 조건 실행을 상위 프로세스로 이전하여 ntp 프로세스를 더 제한 할 수 있으므로 권한 분리가 향상되었습니다.
네트워크가 다운되었을 때 높은 CPU 사용량이 수정되었습니다.
다양한 메모리 누수가 해결되었습니다.
지터 계산을 위해 RMS로 전환되었습니다.
다른 OpenBSD 기본 프로그램과 통합 로깅 기능.ntp_adjtime을 사용할 때 동기화되지 않은 시간 상태를 피하려면 MOD_MAXERROR를 설정하십시오.
strptime (3)을보다 이식성있는 방식으로 사용하도록 고정 HTTP 타임 스탬프 헤더 구문 분석.
ntpd (8) 제약 조건에 대한 TLS 강화. 서버 이름 검증을 가능하게합니다.
LibreSSL 2.4.2
사용자가 볼 수있는 기능 :
설치 대상에서 일부 맨 페이지 링크가 깨지는 문제를 수정했습니다.
cert.pem이 재구성되어 Mozilla의 인증서 저장소와 동기화되었습니다.
안정성 수정으로 크기가 16k를 초과하는 특정 ASN.1 요소를 구문 분석 할 때 오류를 수정합니다.
IETF ChaCha20-Poly1305 암호 제품군을 구현했습니다.
고정 암호는 ^ C를 올바르게 처리하기 위해 openssl (1)에서 프롬프트합니다.
코드 개선 :
'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 오버플로
CVE-2016-2106-EVP_EncryptUpdate 오버 플로우.
CVE-2016-2107- AES-NI CBC MAC 확인에 패딩 오라클
CVE-2016-2108 - ASN.1 인코더의 메모리 손상.
CVE-2016-2109-ASN.1 BIO 과도한 메모리 할당.
항구와 패키지 :
chot에서 패키지를 빌드하기위한 포트 트리에있는 새로운 proot (1) 도구.
각 아키텍처에 대한 많은 미리 빌드 된 패키지
알파 : 7422
amd64 : 9433
hppa : 6346
i386 : 9394
mips64 : 7921
mips64el : 7767
powerpc : 8318
sparc64 : 8570
몇 가지 주요 내용 :
Afl 2.19b
Chromium 51.0.2704.106
이맥스 21.4와 24.5GCC 4.9.3
GHC 7.10.3
김프 2.8.16
그놈 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
루아 5.1.5, 5.2.4 및 5.3.3
MariaDB 10.0.25
모노 4.4.0.182
Mozilla Firefox 45.2.0esr 및 47.0.1
모질라 썬더 버드 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
녹 1.9.0-20160608
Sendmail 8.15.2
수도 1.8.17.1
Tcl / Tk 8.5.18 및 8.6.4
TeX Live 2015
빔 7.4.1467
Xfce 4.12
매뉴얼 페이지와 다른 문서에서 꾸준히 개선되었습니다.
이 시스템에는 외부 공급 업체의 다음 주요 구성 요소가 포함됩니다.
Xenocara (xserver 1.18.3 + 패치, freetype 2.6.3, fontconfig 2.11.1, Mesa 11.2.2, xterm 322, xkeyboard-config 2.18 이상을 포함한 X.Org 7.7 기반)
GCC 4.2.1 (+ 패치) 및 3.3.6 (+ 패치)
펄 5.20.3 (+ 패치)
SQLite 3.9.2 (+ 패치)
NSD 4.1.10
언 바운드 1.5.9
Ncurses 5.7
Binutils 2.17 (+ 패치)
Gdb 6.3 (+ 패치)
Awk 2011 년 8 월 10 일 버전
Expat 2.1.1
버전 6.1의 새로운 기능 :
신규 / 확장 플랫폼 :armv7 :
EFI 부트 로더가 추가되었습니다. 이제 커널은 U 부팅 헤더가없는 FAT 또는 EXT 파일 시스템 대신 FFS에서로드됩니다.
현재 하나의 커널과 램 디스크가 모든 SoC에 사용됩니다.
하드웨어는 보드 ID 번호를 기반으로하는 정적 테이블 대신 FDT (Flattened Device Tree)를 통해 동적으로 열거됩니다.
미니 루트 설치 프로그램 이미지에는 EFI 페이로드를 지원하는 U-Boot 2016.07이 포함되어 있습니다.
vax :
제거되었습니다.
향상된 하드웨어 지원 :
Intel Bay Trail GPIO 컨트롤러 용 새 bytgpio (4) 드라이버.
Intel Cherry View GPIO 컨트롤러 용 새 chvgpio (4) 드라이버.
Maxim DS1307 실시간 클록을위한 새로운 maxrtc (4) 드라이버.
비 휘발성 메모리 익스프레스 (NVMe) 호스트 컨트롤러 인터페이스 용 새 nvme (4) 드라이버.
NXP PCF8523 실시간 클럭을위한 새로운 pcfrtc (4) 드라이버.
모바일 광대역 인터페이스 모델 (MBIM) 용 새 umb (4) 드라이버
RealTek RTL8152 기반 10/100 USB 이더넷 장치 용 New ure (4) 드라이버.
Fushicai USBTV007에 기반한 오디오 / 비디오 캡처 장치 용 새로운 utvfu (4) 드라이버.iwm (4) 드라이버는 이제 Intel Wireless 3165 및 8260 장치를 지원하며 RAMDISK 커널에서보다 안정적으로 작동합니다.
GPIO 신호 인터럽트를 사용하는 I2C HID 장치에 대한 지원이 dwiic (4)에 추가되었습니다.
sdmmc (4), rtsx (4), sdhc (4) 및 imxesdhc (4)에는 더 큰 버스 폭, 고속 모드 및 DMA 전송에 대한 지원이 추가되었습니다.
Octeon II SoC에서 EHCI 및 OHCI 호환 USB 컨트롤러 지원.
많은 USB 장치 드라이버가 OpenBSD / octone에서 활성화되었습니다.
하드웨어가 감소 된 ACPI 구현에 대한 지원이 향상되었습니다.
ACPI 5.0 구현에 대한 향상된 지원.
이제 AES-NI 암호는 커널 잠금을 유지하지 않고 수행됩니다.
PowerPC G5 시스템의 향상된 AGP 지원.
Intel Bay Trail SoCs의 SD 카드 슬롯에 대한 지원이 추가되었습니다.
ichiic (4) 드라이버는 SMBALERT # 인터럽트를 무시하고 버그가있는 BIOS 구현으로 인한 인터럽트 폭풍을 방지합니다.
axen (4) 드라이버의 장치 연결 문제가 수정되었습니다.
ral (4) 드라이버는 RT2860 장치로 인해 더 안정적입니다.
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 이벤트에 대한 정보를 표시합니다.
호스트 모드에서는 캐시 된 노드의 연관 ID를 다시 사용하지 마십시오. 잘못된 노드 객체에서 Tx rate accounting이 발생했기 때문에 ral (4) 드라이버를 사용하는 액세스 포인트가 1 Mbps에서 멈추는 문제를 수정했습니다.
일반적인 네트워크 스택 개선 :
이제 라우팅 테이블은보다 빠른 조회를 제공하는 ART를 기반으로합니다.
전달 경로에서 패킷 당 경로 조회 수가 1로 감소했습니다.
VLAN 헤더의 prio 필드는 이제 vlan (4) 인터페이스에서 나가는 IPv4 패킷의 각 조각에 올바르게 설정됩니다.
bpf (4)에 대한 장치 복제가 활성화되었습니다. 이를 통해 시스템은 모든 bpf 소비자 (최대 1024)를 서비스하는 / dev에 단 하나의 bpf 장치 노드 만 가질 수 있습니다.
이제 cnmac (4) 드라이버의 Tx 큐를 나머지 커널과 병렬로 처리 할 수 있습니다.
이제 네트워크 입력 경로가 스레드 컨텍스트에서 실행됩니다.
설치 개선 :
제한된 사용자 코드 목록 업데이트
install.sh 및 upgrade.sh를 install.sub로 병합했습니다.
업데이트는 fw_update (1) 전에 sysmerge (8)를 배치 모드로 자동 실행합니다.질문 및 답변은 autoinstall (8)에서 사용할 응답 파일로 사용할 수있는 형식으로 기록됩니다.
설치 중에 / usr / local이 wxallowed로 설정됩니다.
라우팅 데몬 및 기타 사용자 네트워크 향상 :
rc.d (8) 및 rcctl (8)에 라우팅 테이블 지원을 추가하십시오.
nc (1)은 포트 번호와 함께 서비스 이름을 지원합니다.
nc (1)에 -M 및 -m TTL 플래그를 추가하십시오.
tcpbench (1)에 AF_UNIX 지원을 추가하십시오.
rarpd (8)에서 회귀 현상이 수정되었습니다. 오랜 시간 동안 유휴 상태 였으면 데몬이 멈출 수 있습니다.
ifconfig (8)에 llprio 옵션을 추가했습니다.
/ dev / bpf * 장치를 루핑하는 대신 / dev / bpf0을 열어 bpf (4)를 사용하는 여러 프로그램이 bpf (4) 장치 복제를 활용하도록 수정되었습니다. 이 프로그램에는 arp (8), dhclient (8), dhcpd (8), dhcrelay (8), hostapd (8), mopd (8), npppd (8), rarpd (8), rbootd (8). libpcap 라이브러리도 그에 따라 수정되었습니다.
보안 개선 :W ^ X는 기본적으로 엄격하게 시행됩니다. 실행 파일이 PT_OPENBSD_WXNEEDED로 표시되고 wxallowed mount (8) 옵션으로 마운트 된 파일 시스템에 위치하는 경우에만 프로그램이이를 위반할 수 있습니다. 여전히 W ^ X를 위반하는 포트가 너무 많기 때문에 설치 프로그램은 wxallowed를 사용하여 / usr / local 파일 시스템을 마운트합니다. 이렇게하면 / usr / local이 별도의 파일 시스템 인 한 기본 시스템의 보안이 강화됩니다. W ^ X 위반 프로그램을 사용하지 않는 경우 수동으로 해당 옵션을 취소하는 것이 좋습니다.
setjmp (3) 계열의 함수는 이제 amd64, hppa, i386, mips64 및 powerpc의 jmpbuf에있는 스택 및 반환 주소 값에 XOR 쿠키를 적용합니다.
SROP 완화 : sigreturn (2)은 커널이 제공 한 신호 trampoline에 의해서만 재사용 시도를 탐지하는 쿠키와 함께 사용될 수 있습니다.
코드 재사용 취약점을 막기 위해 rc (8)은 시작시 libc.so를 다시 링크하여 객체를 임의의 순서로 배치합니다.
getpwnam (3) 계열의 함수에서 기본적으로 섀도 데이터베이스를 열지 마십시오.
루트 권한없이 tcpdump (8) -r을 시작하도록 허용하십시오.
systrace를 제거하십시오.
Linux 에뮬레이션 지원을 제거하십시오.
usermount 옵션에 대한 지원을 제거하십시오.TCP SYN 캐시는 임의의 해시 함수를 수시로 다시 시드합니다. 이렇게하면 공격자가 타이밍 공격으로 해시 함수의 분포를 계산할 수 없습니다.
SYN 플러딩 공격에 대비하기 위해 관리자는 이제 해시 배열의 크기를 변경할 수 있습니다. netstat (1) -s -p tcp는 sysctl (8) net.inet.tcp로 SYN 캐시를 조정하는 관련 정보를 표시합니다.
관리자는 sysctl (8) net.inet.tcp.rootonly 및 sysctl (8) net.inet.udp.rootonly를 사용하여 일부 TCP 및 UDP 포트에 바인딩하기위한 루트 권한을 요구할 수 있습니다.
mbuf (9) 데이터 구조에서 함수 포인터를 제거하고 대신 수용 가능한 함수의 배열에 인덱스를 사용하십시오.
다양한 개선 사항 :
이제 스레드 라이브러리를 단일 스레드 프로세스에로드 할 수 있습니다.
libc의 심볼 처리 및 표준 준수 향상. 예를 들어, open () 함수를 정의하면 더 이상 fopen (3)의 작동을 방해하지 않습니다.
PT_TLS 섹션은 초기로드 된 객체에서 지원됩니다.
fts (3)에서 "no paths"및 "empty path"처리 개선.
pcap (3)에서 pcap_free_datalinks () 및 pcap_offline_filter () 함수를 제공하십시오.많은 버그 수정과 editline (3) 라이브러리의 구조적 정리.
고대 dbm (3) 함수를 제거하십시오. ndbm (3)이 남아 있습니다.
doas.conf (5)에서보다 강력한 환경 처리를 위해 setenv 키워드를 추가하십시오.
시간 위치 지정을 위해 aucat.1에 -g 및 -p 옵션을 추가하십시오.
보다 간단한 사용자 인터페이스로 audioctl (1)을 다시 작성하십시오.
파일을 닫기 전에 파일을 fsync (2)에 설치하려면 -F 옵션을 추가하십시오.
kdump (1)는 이제 pollfd 구조체를 덤프합니다.
ksh (1) POSIX 준수의 다양한 세부 사항을 향상시킵니다.
mknod (8)는 서약 (2) 친화적 인 스타일로 다시 작성되며 동시에 여러 장치를 만드는 것을 지원합니다.
구현 rcctl (8) 모두를 얻을 getdef 모두.
rcs (1) -I (대화식) 플래그를 구현하십시오.
rcs (1)에서 Mdocdate 키워드 대체를 구현하십시오.
top (1)에서 프로세스 인수가 표시되는 경우이를 필터링 할 수 있습니다.
fold (1) 및 rev (1)에 UTF-8 지원이 추가되었습니다.
xterm (1) 및 pod2man (1)에서 기본적으로 UTF-8을 활성화하십시오.
wall (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)가 다시 작동합니다.
512 바이트 이외의 섹터 크기를 가진 디스크로 softraid (4) 볼륨을 구성 할 수 있습니다.
dhclient (8) DECLINE이 사용하지 않는 제안을 버립니다.
dhclient (8)는 패킷이 전송 될 때 인터페이스 (예 : bridge (4))가 EAFNOSUPPORT를 반환하면 즉시 종료됩니다.httpd (8)은 HTTP v0.9 요청에 대해 400 개의 잘못된 요청을 반환합니다.
ffs2의 게으른 노드 초기화는 랜덤 디스크 데이터를 아이 노드로 취급하는 것을 방지합니다.
기본 프로그램의 fcntl (2) 호출은 fcntl (n, F_GETFL, 0) 대신 fcntl (n, F_GETFL) 관용구를 사용합니다.
기본 프로그램의 socket (2) 및 accept4 (2) 호출은 SOCK_NONBLOCK을 사용하여 별도의 fcntl (2)을 사용할 필요가 없습니다.
tmpfs는 기본적으로 활성화되어 있지 않습니다.
서약의 커널 내 의미 (2)는 여러면에서 개선되었다. 주요 내용은 다음과 같습니다 : 약속 된 프로그램이 setugid 속성을 설정할 수 있도록하는 새로운 chown 약속, recvfd 약속 및 chroot (2)의 엄격한 시행은 약속 된 프로그램에 대해 더 이상 허용되지 않습니다.
gzip (1), nc (1), sed (1), skeyinit (1), stty (1) 등 여러 서약 (2) 관련 버그 (약속 없음, 의도하지 않은 동작 변경, , 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에 도입되었습니다.
mailx와의 호환성을 위해 -r 옵션을 smtpd (8) enqueuer에 추가하십시오.
제출 포트에서 청취 할 때 누락 날짜 또는 메시지 ID를 추가하십시오.
"smtpctl show queue"가 "유효하지 않은"봉투 상태를보고하는 문제를 수정했습니다.
TLS 부분이 RFC를 위반하지 않도록 "Received"헤더의 형식을 다시 작성하십시오.
로컬 주소가 설정할 수있는 연결 수를 늘리고 같은 세션의 트랜잭션 간 지연을 줄입니다.
연속 줄을 반환하는 서버에 대한 LMTP 배달을 수정했습니다.여전히 실험 필터 API를 개선하고 다양한 관련 문제를 수정하십시오.
로그 메시지의 형식을 개선하고 통합하기 시작하십시오.
설명서 페이지의 몇 가지 문서 불일치와 오타를 수정했습니다.
OpenSSH 7.3
보안:
sshd (8) : sshd (8)를 통해 시스템의 crypt (3) 기능에 대한 잠재적 인 서비스 거부 공격을 완화합니다. 공격자는 crypt (3)에서 과도한 CPU 사용을 유발할 수있는 매우 긴 암호를 보낼 수 있습니다. 이제 sshd (8)는 1024 자 이상의 암호 인증 요청을 거부합니다.
sshd (8) : 긴 암호가 전송되고 특정 암호 해싱 알고리즘이 서버에서 사용 중일 때 유효하지 않은 계정 이름을 유효하게 식별하는 데 사용할 수있는 암호 인증의 타이밍 차이를 줄입니다. CVE-2016-6210.
ssh (1), sshd (8) : CBC 패딩 오라클 대책에서 관찰 가능한 타이밍 약점을 수정합니다. CBC 암호는 기본적으로 사용되지 않으며 레거시 호환성을 위해서만 포함됩니다.ssh (1), sshd (8) : 임의의 암호문을 해독하기 전에 MAC을 확인하기 위해 MAC (Encrypt-then-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) : 초안 -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 문자를 형성하지 않는 바이트를 이스케이프 처리하여 터 L 널 설정을 f 지하십시오.
ssh (1), sshd (8) : 비교적 일반적인 프로토콜 이벤트의 syslog 수준을 LOG_CRIT에서 줄입니다. (bz # 2585)
sshd (8) : 구성에서 AuthenticationMethods = ""을 거부하고 다중 인증을 필요로하지 않는 기본 동작에 대해 AuthenticationMethods = any를 허용합니다. (bz # 2398)
sshd (8) : 쓸모없는 오해의 소지가있는 "가능한 중단 시도"를 제거하십시오. 정방향 및 역방향 DNS가 일치하지 않을 때의 메시지 (bz # 2585)
ssh (1) : 디버그 모드 나 syslog에 로깅 할 때를 제외하고 ControlPersist 백그라운드 프로세스 표준 오류를 닫습니다. (bz # 1988)
기타 : direct-streamlocal@openssh.com 채널 열기 메시지에 대한 PROTOCOL 설명을 배포 된 코드와 일치 시키십시오. (bz # 2529)
ssh (1) : 중복 제거 LocalForward 및 RemoteForward 항목으로 인해 ExitOnForwardFailure와 hostname canonicalisation이 모두 사용되는 경우 오류를 수정합니다. (bz # 2562)
sshd (8) : moduli에서 fallback을 제거하여 2001 년에 비추천 된 "primes"파일을 삭제합니다. (bz # 2559)sshd_config (5) : UseDNS의 올바른 설명 : known_hosts가 아닌 authorized_keys에 대한 ssh 호스트 이름 처리에 영향을줍니다. (bz # 2554)
ssh (1) : 파일 시스템에 해당 개인 키가없는 에이전트의 단독 인증서 키를 사용하여 인증 수정. (bz # 2550)
sshd (8) : 시간 기반 RekeyLimit이 설정되면 ClientAliveInterval ping을 보냅니다. 이전에 keepalive 패킷이 전송되지 않았습니다. (bz # 2252)
OpenNTPD 6.0
단일 "제약 조건"이 지정된 경우 첫 번째로 반환 된 주소가 아니라 하나가 성공할 때까지 모든 반환 된 주소를 시도하십시오.
제약 조건 오류 마진이 NTP 피어의 수에 비례하도록 완화하고, 나쁜 NTP 피어가있을 때 지속적인 재 연결을 피하십시오.
비활성화 된 hotplug (4) 센서 지원이 제거되었습니다.
제약 조건 하위 프로세스에서 충돌을 감지하는 기능이 추가되었습니다.
ntp 프로세스의 제약 조건 실행을 상위 프로세스로 이전하여 ntp 프로세스를 더 제한 할 수 있으므로 권한 분리가 향상되었습니다.
네트워크가 다운되었을 때 높은 CPU 사용량이 수정되었습니다.
다양한 메모리 누수가 해결되었습니다.
지터 계산을 위해 RMS로 전환되었습니다.
다른 OpenBSD 기본 프로그램과 통합 로깅 기능.ntp_adjtime을 사용할 때 동기화되지 않은 시간 상태를 피하려면 MOD_MAXERROR를 설정하십시오.
strptime (3)을보다 이식성있는 방식으로 사용하도록 고정 HTTP 타임 스탬프 헤더 구문 분석.
ntpd (8) 제약 조건에 대한 TLS 강화. 서버 이름 검증을 가능하게합니다.
LibreSSL 2.4.2
사용자가 볼 수있는 기능 :
설치 대상에서 일부 맨 페이지 링크가 깨지는 문제를 수정했습니다.
cert.pem이 재구성되어 Mozilla의 인증서 저장소와 동기화되었습니다.
안정성 수정으로 크기가 16k를 초과하는 특정 ASN.1 요소를 구문 분석 할 때 오류를 수정합니다.
IETF ChaCha20-Poly1305 암호 제품군을 구현했습니다.
고정 암호는 ^ C를 올바르게 처리하기 위해 openssl (1)에서 프롬프트합니다.
코드 개선 :
'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 오버플로
CVE-2016-2106-EVP_EncryptUpdate 오버 플로우.
CVE-2016-2107- AES-NI CBC MAC 확인에 패딩 오라클
CVE-2016-2108 - ASN.1 인코더의 메모리 손상.
CVE-2016-2109-ASN.1 BIO 과도한 메모리 할당.
항구와 패키지 :
chot에서 패키지를 빌드하기위한 포트 트리에있는 새로운 proot (1) 도구.
각 아키텍처에 대한 많은 미리 빌드 된 패키지
알파 : 7422
amd64 : 9433
hppa : 6346
i386 : 9394
mips64 : 7921
mips64el : 7767
powerpc : 8318
sparc64 : 8570
몇 가지 주요 내용 :
Afl 2.19b
Chromium 51.0.2704.106이맥스 21.4와 24.5
GCC 4.9.3
GHC 7.10.3
김프 2.8.16
그놈 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
루아 5.1.5, 5.2.4 및 5.3.3
MariaDB 10.0.25
모노 4.4.0.182
Mozilla Firefox 45.2.0esr 및 47.0.1
모질라 썬더 버드 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
녹 1.9.0-20160608
Sendmail 8.15.2
수도 1.8.17.1
Tcl / Tk 8.5.18 및 8.6.4
TeX Live 2015
빔 7.4.1467
Xfce 4.12
매뉴얼 페이지와 다른 문서에서 꾸준히 개선되었습니다.
이 시스템에는 외부 공급 업체의 다음 주요 구성 요소가 포함됩니다.Xenocara (xserver 1.18.3 + 패치, freetype 2.6.3, fontconfig 2.11.1, Mesa 11.2.2, xterm 322, xkeyboard-config 2.18 이상을 포함한 X.Org 7.7 기반)
GCC 4.2.1 (+ 패치) 및 3.3.6 (+ 패치)
펄 5.20.3 (+ 패치)
SQLite 3.9.2 (+ 패치)
NSD 4.1.10
언 바운드 1.5.9
Ncurses 5.7
Binutils 2.17 (+ 패치)
Gdb 6.3 (+ 패치)
Awk 2011 년 8 월 10 일 버전
Expat 2.1.1
댓글을 찾을 수 없습니다