OpenSSH

Phần mềm chụp màn hình:
OpenSSH
Các chi tiết về phần mềm:
Phiên bản: 7.7 Cập nhật
Ngày tải lên: 22 Jun 18
Nhà phát triển: OpenBSD Project
Giấy phép: Miễn phí
Phổ biến: 21

Rating: nan/5 (Total Votes: 0)

OpenSSH là dự án phần mềm nguồn mở và phân phối tự do, thư viện và chương trình dòng lệnh chạy trong nền hệ điều hành GNU / Linux của bạn và bảo vệ toàn bộ mạng của bạn khỏi những kẻ xâm nhập và kẻ tấn công. Đây là phiên bản mã nguồn mở của đặc tả SSH (Secure Shell), được thiết kế đặc biệt cho


Tính năng trong nháy mắt

OpenSSH là một dự án nguồn mở được phân phối theo giấy phép miễn phí. Nó cung cấp xác thực mạnh dựa trên Khóa công khai, Xác thực Kerberos và Mật khẩu một lần, mã hóa mạnh dựa trên thuật toán AES, Blowfish, Arcfour và 3DES, hỗ trợ chuyển tiếp X11 bằng cách mã hóa toàn bộ lưu lượng của Hệ thống cửa sổ X, cũng như AFS và Vé đi qua Kerberos.

Ngoài ra, phần mềm còn hỗ trợ chuyển tiếp cổng bằng cách mã hóa kênh cho các giao thức kế thừa, hỗ trợ nén dữ liệu, hỗ trợ chuyển tiếp đại lý bằng cách sử dụng tiêu chuẩn xác thực đăng nhập một lần (SSO) và hỗ trợ máy chủ và máy khách SFTP (Secure FTP) Giao thức SSH2 hoặc SSH1.

Một tính năng thú vị khác là khả năng tương tác, có nghĩa là dự án tuân thủ các phiên bản 1.3, 1.5 và 2.0 của giao thức SSH (Secure Shell) ban đầu. Sau khi cài đặt, OpenSSH sẽ tự động thay thế các chương trình FTP, Telnet, RCP và rlogin chuẩn bằng các phiên bản an toàn của chúng, chẳng hạn như SFTP, SCP và SSH.


Dưới mui xe, tính khả dụng và các hệ điều hành được hỗ trợ

Dự án OpenSSH được viết hoàn toàn bằng ngôn ngữ lập trình C. Nó bao gồm việc thực hiện SSH chính và SSH daemon, chạy trong nền. Phần mềm này được phân phối chủ yếu như một kho lưu trữ nguồn phổ quát, sẽ làm việc với bất kỳ hệ điều hành GNU / Linux nào trên cả kiến ​​trúc 32 bit và 64 bit.


OpenSSH di động

Một phiên bản di động của giao thức OpenSSH cũng có sẵn để tải xuống trên Softoware, miễn phí, được gọi là Portable OpenSSH. Nó là một triển khai mã nguồn mở của các giao thức SSH phiên bản 1 và SSH phiên bản 2 cho các hệ điều hành Linux, BSD và Solaris.

Tính năng mới trong bản phát hành này là gì:

  • Các thay đổi không tương thích tiềm ẩn:
  • Bản phát hành này bao gồm một số thay đổi có thể ảnh hưởng đến cấu hình hiện có:
  • Bản phát hành này xóa hỗ trợ máy chủ cho giao thức SSH v.1.
  • ssh (1): Xóa 3des-cbc khỏi đề xuất mặc định của khách hàng. Mật mã khối 64 bit không an toàn trong năm 2016 và chúng tôi không muốn đợi cho đến khi các cuộc tấn công như SWEET32 được mở rộng sang SSH. Vì 3des-cbc là thuật toán mã hóa bắt buộc duy nhất trong các RFC SSH, điều này có thể gây ra sự cố khi kết nối với các thiết bị cũ bằng cấu hình mặc định, nhưng rất có khả năng các thiết bị đó đã cần cấu hình rõ ràng cho thuật toán trao đổi khóa và khóa máy chủ. sshd (8): Xóa hỗ trợ nén trước khi xác thực. Làm nén sớm trong giao thức có thể có vẻ hợp lý trong những năm 1990, nhưng ngày nay rõ ràng là một ý tưởng tồi về cả mật mã (xem nhiều cuộc tấn công oracle nén trong TLS) và bề mặt tấn công. Hỗ trợ nén trước xác thực đã bị tắt theo mặc định cho & gt; 10 năm. Hỗ trợ vẫn còn trong khách hàng. ssh-agent sẽ từ chối tải các mô-đun PKCS # 11 bên ngoài danh sách trắng các đường dẫn tin cậy theo mặc định. Danh sách trắng đường dẫn có thể được chỉ định tại thời gian chạy.
  • sshd (8): Khi lệnh bắt buộc xuất hiện trong cả chứng chỉ và khóa / lệnh được ủy quyền lệnh = restriction, sshd giờ đây sẽ từ chối chấp nhận chứng chỉ trừ khi chúng giống nhau. Hành vi trước đó (có tài liệu) về việc có lệnh cưỡng chế cưỡng bức đè lên lệnh khác có thể hơi khó hiểu và dễ xảy ra lỗi. sshd (8): Xóa chỉ thị cấu hình UseLogin và hỗ trợ cho việc có / bin / login quản lý các phiên đăng nhập.
  • Các thay đổi kể từ OpenSSH 7.3:
  • Bảo mật:
  • ssh-agent (1): Bây giờ sẽ từ chối tải các mô-đun PKCS # 11 từ các đường dẫn bên ngoài danh sách trắng đáng tin cậy (thời gian chạy có thể định cấu hình). Các yêu cầu tải mô-đun có thể được chuyển qua chuyển tiếp tác nhân và kẻ tấn công có thể tải mô-đun PKCS # 11 thù địch trên kênh tác nhân được chuyển tiếp: PKCS # 11 là các thư viện được chia sẻ, vì vậy điều này sẽ dẫn đến việc thực thi mã trên hệ thống đang chạy ssh -nhận được nếu kẻ tấn công có quyền kiểm soát của các đại lý chuyển tiếp-socket (trên máy chủ chạy máy chủ sshd) và khả năng ghi vào hệ thống tập tin của máy chủ chạy ssh-agent (thường là máy chủ chạy ssh client). Báo cáo bởi Jann Horn của Project Zero.
  • sshd (8): Khi tách đặc quyền bị vô hiệu hóa, các ổ cắm miền Unix được chuyển tiếp sẽ được tạo ra bởi sshd (8) với các đặc quyền của 'root' thay vì người dùng đã được xác thực. Phiên bản này từ chối chuyển tiếp socket tên miền Unix khi tách đặc quyền bị vô hiệu hóa (tách đặc quyền đã được kích hoạt mặc định trong 14 năm). Báo cáo bởi Jann Horn của Project Zero.
  • sshd (8): Tránh rò rỉ lý thuyết của vật liệu khóa riêng tư của máy chủ đến các tiến trình con được phân tách đặc quyền thông qua realloc () khi đọc các khóa. Không có rò rỉ như vậy đã được quan sát thấy trong thực tế cho các phím có kích thước bình thường, cũng không rò rỉ cho các quá trình con trực tiếp phơi bày tài liệu quan trọng cho người dùng không có đặc quyền. Báo cáo bởi Jann Horn của Project Zero.
  • sshd (8): Trình quản lý bộ nhớ dùng chung được hỗ trợ nén xác thực trước có kiểm tra giới hạn có thể được một số trình biên dịch tối ưu hóa ưu tiên. Ngoài ra, trình quản lý bộ nhớ này có thể truy cập không chính xác khi tính năng nén xác thực trước bị vô hiệu hóa. Điều này có khả năng có thể cho phép các cuộc tấn công chống lại quá trình giám sát đặc quyền từ quá trình tách đặc quyền sandboxed (một thỏa hiệp của sau này sẽ được yêu cầu đầu tiên). Bản phát hành này loại bỏ hỗ trợ nén trước xác thực từ sshd (8). Báo cáo bởi Guido Vranken bằng cách sử dụng công cụ nhận dạng tối ưu hóa không ổn định Stack (http://css.csail.mit.edu/stack/)
  • sshd (8): Khắc phục tình trạng từ chối dịch vụ trong đó kẻ tấn công gửi nhiều tin nhắn KEXINIT có thể tiêu thụ tới 128MB cho mỗi kết nối. Báo cáo bởi Shi Lei của Gear Team, Qihoo 360.
  • sshd (8): Xác thực phạm vi địa chỉ cho chỉ thị AllowUser và DenyUsers tại thời gian tải cấu hình và từ chối chấp nhận các địa chỉ không hợp lệ. Trước đây, bạn có thể chỉ định phạm vi địa chỉ CIDR không hợp lệ (ví dụ: user@127.1.2.3/55) và các giá trị này sẽ luôn khớp nhau, có thể dẫn đến cấp quyền truy cập ở nơi không được dự định. Báo cáo bởi Laurence Parry.
  • Tính năng Mới:
  • ssh (1): Thêm chế độ ghép kênh proxy vào ssh (1) lấy cảm hứng từ phiên bản trong PuTTY của Simon Tatham. Điều này cho phép một khách hàng ghép kênh giao tiếp với quy trình tổng thể bằng cách sử dụng một tập hợp con của gói SSH và giao thức kênh qua ổ cắm miền Unix, với quá trình chính hoạt động như một proxy dịch ID kênh, v.v. các hệ thống thiếu đi bộ mô tả tập tin (được sử dụng bởi mã ghép kênh hiện tại) và có khả năng, kết hợp với chuyển tiếp socket tên miền Unix, với quy trình tổng thể của máy khách và ghép kênh trên các máy khác nhau. Chế độ proxy ghép kênh có thể được gọi bằng cách sử dụng & quot; ssh -O proxy ... & quot;
  • sshd (8): Thêm tùy chọn DisableShunter sshd_config để vô hiệu hóa chuyển tiếp X11, agent, TCP, đường hầm và chuyển tiếp miền Unix, cũng như bất kỳ thứ gì khác mà chúng tôi có thể triển khai trong tương lai. Giống như cờ authorized_keys 'hạn chế', điều này được dự định là cách hạn chế đơn giản và tương lai để hạn chế tài khoản.
  • sshd (8), ssh (1): Hỗ trợ & quot; curve25519-sha256 & quot; phương thức trao đổi khóa. Điều này giống với phương pháp hiện được hỗ trợ có tên & quot; curve25519-sha256@libssh.org".
  • sshd (8): Cải thiện việc xử lý SIGHUP bằng cách kiểm tra xem sshd đã được daemonised khi khởi động và bỏ qua cuộc gọi tới daemon (3) nếu nó có. Điều này đảm bảo rằng một SIGHUP khởi động lại sshd (8) sẽ giữ lại cùng một process-ID như thực hiện ban đầu. sshd (8) cũng sẽ hủy liên kết PidFile trước khi SIGHUP khởi động lại và tạo lại nó sau khi khởi động lại thành công, thay vì để lại một tập tin cũ trong trường hợp lỗi cấu hình. bz # 2641
  • sshd (8): Cho phép các chỉ thị ClientAliveInterval và ClientAliveCountMax xuất hiện trong các khối đối sánh sshd_config.
  • sshd (8): Thêm% -cảnh báo vào AuthorizedPrincipalsCommand để khớp với các loại được hỗ trợ bởi AuthorizedKeysCommand (khóa, loại khóa, vân tay, v.v.) và một vài thứ khác để cung cấp quyền truy cập vào nội dung của chứng chỉ đang được cung cấp.
  • Đã thêm các kiểm tra hồi quy cho kết hợp chuỗi, đối sánh địa chỉ và chức năng khử trùng chuỗi.
  • Đã cải thiện công cụ khai thác khóa trao đổi khóa.
  • Sửa lỗi:
  • ssh (1): Cho phép IdentityFile tải thành công và sử dụng chứng chỉ không có khóa công khai trống tương ứng. bz # 2617 chứng chỉ id_rsa-cert.pub (và không có id_rsa.pub).
  • ssh (1): Khắc phục xác thực khóa công khai khi nhiều xác thực được sử dụng và khóa công khai không chỉ là phương pháp đầu tiên được thử. bz # 2642
  • regress: Cho phép kiểm tra interop PuTTY chạy không cần giám sát. bz # 2639
  • ssh-agent (1), ssh (1): cải thiện báo cáo khi cố gắng tải các khóa từ mã thông báo PKCS # 11 với ít thông điệp nhật ký vô dụng hơn và chi tiết hơn trong các thông báo gỡ lỗi. bz # 2610
  • ssh (1): Khi rớt xuống các kết nối của ControlMaster, không gây ô nhiễm stderr khi LogLevel = quiet.
  • sftp (1): Bật ^ Z đợi ssh (1) tạm dừng trước khi đình chỉ sftp (1) để đảm bảo rằng ssh (1) khôi phục chế độ đầu cuối chính xác nếu bị treo trong lời nhắc mật khẩu.
  • ssh (1): Tránh bận chờ khi ssh (1) bị tạm ngưng trong khi nhắc mật khẩu.
  • ssh (1), sshd (8): Báo cáo chính xác lỗi trong khi gửi tin nhắn thông báo.
  • sshd (8): sửa lỗi NULL-deref nếu sshd (8) nhận được một thông báo NEWKEYS out-of-sequence.
  • sshd (8): Danh sách chính xác các thuật toán chữ ký được hỗ trợ được gửi trong phần mở rộng server-sig-algs. bz # 2547
  • sshd (8): Khắc phục việc gửi tin nhắn ext_info nếu privsep bị tắt.
  • sshd (8): thực thi đúng hơn thứ tự mong đợi của các cuộc gọi giám sát tách đặc quyền được sử dụng để xác thực và chỉ cho phép chúng khi các phương thức xác thực tương ứng của chúng được bật trong cấu hình
  • sshd (8): Sửa lỗi optlen chưa được khởi tạo trong hàm getockopt (); vô hại trên Unix / BSD nhưng có khả năng gặp sự cố trên Cygwin.
  • Sửa các báo cáo dương tính giả do clear_bzero (3) không được công nhận là bộ khởi tạo bộ nhớ khi được biên dịch bằng bộ nhớ -fsanitize. sshd_config (5): Sử dụng 2001: db8 :: / 32, mạng con IPv6 chính thức cho các ví dụ cấu hình.
  • Tính di động:
  • Trên môi trường được định cấu hình bằng ngôn ngữ Thổ Nhĩ Kỳ, hãy quay lại miền địa phương C / POSIX để tránh lỗi trong phân tích cú pháp cấu hình do xử lý duy nhất của ngôn ngữ đó là 'i' và 'I'. bz # 2643
  • sftp-server (8), ssh-agent (1): Từ chối ptrace trên OS X bằng ptrace (PT_DENY_ATTACH, ..)
  • ssh (1), sshd (8): Giải mã mật khẩu AES-CTR trên OpenSSL cũ (~ 0.9.8).
  • Khắc phục biên dịch cho libcrypto được biên dịch mà không cần hỗ trợ RIPEMD160.
  • đóng góp: Thêm gnome-ssh-askpass3 với hỗ trợ GTK + 3. bz # 2640 sshd (8): Cải thiện khả năng chèn lại PRNG qua tách đặc quyền và buộc libcrypto lấy được hạt giống chất lượng cao trước khi chroot hoặc sandbox.
  • Tất cả: Kiểm tra rõ ràng cho strnvis bị hỏng. NetBSD thêm một strnvis và không may làm cho nó không tương thích với cái hiện có trong OpenBSD và libbsd của Linux (cái cũ đã tồn tại hơn mười năm). Cố gắng phát hiện mớ hỗn độn này và giả sử tùy chọn an toàn duy nhất nếu chúng tôi đang biên dịch chéo.

Tính năng mới trong phiên bản:

  • Các thay đổi không tương thích tiềm ẩn:
  • Bản phát hành này bao gồm một số thay đổi có thể ảnh hưởng đến cấu hình hiện có:
  • Bản phát hành này xóa hỗ trợ máy chủ cho giao thức SSH v.1.
  • ssh (1): Xóa 3des-cbc khỏi đề xuất mặc định của khách hàng. Mật mã khối 64 bit không an toàn trong năm 2016 và chúng tôi không muốn đợi cho đến khi các cuộc tấn công như SWEET32 được mở rộng sang SSH. Vì 3des-cbc là thuật toán mã hóa bắt buộc duy nhất trong các RFC SSH, điều này có thể gây ra sự cố khi kết nối với các thiết bị cũ bằng cấu hình mặc định, nhưng rất có khả năng các thiết bị đó đã cần cấu hình rõ ràng cho thuật toán trao đổi khóa và khóa máy chủ. sshd (8): Xóa hỗ trợ nén trước khi xác thực. Làm nén sớm trong giao thức có thể có vẻ hợp lý trong những năm 1990, nhưng ngày nay rõ ràng là một ý tưởng tồi về cả mật mã (xem nhiều cuộc tấn công oracle nén trong TLS) và bề mặt tấn công. Hỗ trợ nén trước xác thực đã bị tắt theo mặc định cho & gt; 10 năm. Hỗ trợ vẫn còn trong khách hàng. ssh-agent sẽ từ chối tải các mô-đun PKCS # 11 bên ngoài danh sách trắng các đường dẫn tin cậy theo mặc định. Danh sách trắng đường dẫn có thể được chỉ định tại thời gian chạy.
  • sshd (8): Khi lệnh bắt buộc xuất hiện trong cả chứng chỉ và khóa / lệnh được ủy quyền lệnh = restriction, sshd giờ đây sẽ từ chối chấp nhận chứng chỉ trừ khi chúng giống nhau. Hành vi trước đó (có tài liệu) về việc có lệnh cưỡng chế cưỡng bức đè lên lệnh khác có thể hơi khó hiểu và dễ xảy ra lỗi. sshd (8): Xóa chỉ thị cấu hình UseLogin và hỗ trợ cho việc có / bin / login quản lý các phiên đăng nhập.
  • Các thay đổi kể từ OpenSSH 7.3:
  • Bảo mật:
  • ssh-agent (1): Bây giờ sẽ từ chối tải các mô-đun PKCS # 11 từ các đường dẫn bên ngoài danh sách trắng đáng tin cậy (thời gian chạy có thể định cấu hình). Các yêu cầu tải mô-đun có thể được chuyển qua chuyển tiếp tác nhân và kẻ tấn công có thể tải mô-đun PKCS # 11 thù địch trên kênh tác nhân được chuyển tiếp: PKCS # 11 là các thư viện được chia sẻ, vì vậy điều này sẽ dẫn đến việc thực thi mã trên hệ thống đang chạy ssh -nhận được nếu kẻ tấn công có quyền kiểm soát của các đại lý chuyển tiếp-socket (trên máy chủ chạy máy chủ sshd) và khả năng ghi vào hệ thống tập tin của máy chủ chạy ssh-agent (thường là máy chủ chạy ssh client). Báo cáo bởi Jann Horn của Project Zero.
  • sshd (8): Khi tách đặc quyền bị vô hiệu hóa, các ổ cắm miền Unix được chuyển tiếp sẽ được tạo ra bởi sshd (8) với các đặc quyền của 'root' thay vì người dùng đã được xác thực. Phiên bản này từ chối chuyển tiếp socket tên miền Unix khi tách đặc quyền bị vô hiệu hóa (tách đặc quyền đã được kích hoạt mặc định trong 14 năm). Báo cáo bởi Jann Horn của Project Zero.
  • sshd (8): Tránh rò rỉ lý thuyết của vật liệu khóa riêng tư của máy chủ đến các tiến trình con được phân tách đặc quyền thông qua realloc () khi đọc các khóa. Không có rò rỉ như vậy đã được quan sát thấy trong thực tế cho các phím có kích thước bình thường, cũng không rò rỉ cho các quá trình con trực tiếp phơi bày tài liệu quan trọng cho người dùng không có đặc quyền. Báo cáo bởi Jann Horn của Project Zero.
  • sshd (8): Trình quản lý bộ nhớ dùng chung được hỗ trợ nén xác thực trước có kiểm tra giới hạn có thể được một số trình biên dịch tối ưu hóa ưu tiên. Ngoài ra, trình quản lý bộ nhớ này có thể truy cập không chính xác khi tính năng nén xác thực trước bị vô hiệu hóa. Điều này có khả năng có thể cho phép các cuộc tấn công chống lại quá trình giám sát đặc quyền từ quá trình tách đặc quyền sandboxed (một thỏa hiệp của sau này sẽ được yêu cầu đầu tiên). Bản phát hành này loại bỏ hỗ trợ nén trước xác thực từ sshd (8). Báo cáo bởi Guido Vranken bằng cách sử dụng công cụ nhận dạng tối ưu hóa không ổn định Stack (http://css.csail.mit.edu/stack/)
  • sshd (8): Khắc phục tình trạng từ chối dịch vụ trong đó kẻ tấn công gửi nhiều tin nhắn KEXINIT có thể tiêu thụ tới 128MB cho mỗi kết nối. Báo cáo bởi Shi Lei của Gear Team, Qihoo 360.
  • sshd (8): Xác thực phạm vi địa chỉ cho chỉ thị AllowUser và DenyUsers tại thời gian tải cấu hình và từ chối chấp nhận các địa chỉ không hợp lệ. Trước đây, bạn có thể chỉ định phạm vi địa chỉ CIDR không hợp lệ (ví dụ: user@127.1.2.3/55) và các giá trị này sẽ luôn khớp nhau, có thể dẫn đến cấp quyền truy cập ở nơi không được dự định. Báo cáo bởi Laurence Parry.
  • Tính năng Mới:
  • ssh (1): Thêm chế độ ghép kênh proxy vào ssh (1) lấy cảm hứng từ phiên bản trong PuTTY của Simon Tatham. Điều này cho phép một khách hàng ghép kênh giao tiếp với quy trình tổng thể bằng cách sử dụng một tập hợp con của gói SSH và giao thức kênh qua ổ cắm miền Unix, với quá trình chính hoạt động như một proxy dịch ID kênh, v.v. các hệ thống thiếu đi bộ mô tả tập tin (được sử dụng bởi mã ghép kênh hiện tại) và có khả năng, kết hợp với chuyển tiếp socket tên miền Unix, với quy trình tổng thể của máy khách và ghép kênh trên các máy khác nhau. Chế độ proxy ghép kênh có thể được gọi bằng cách sử dụng & quot; ssh -O proxy ... & quot;
  • sshd (8): Thêm tùy chọn DisableShunter sshd_config để vô hiệu hóa chuyển tiếp X11, agent, TCP, đường hầm và chuyển tiếp miền Unix, cũng như bất kỳ thứ gì khác mà chúng tôi có thể triển khai trong tương lai. Giống như cờ authorized_keys 'hạn chế', điều này được dự định là cách hạn chế đơn giản và tương lai để hạn chế tài khoản.
  • sshd (8), ssh (1): Hỗ trợ & quot; curve25519-sha256 & quot; phương thức trao đổi khóa. Điều này giống với phương pháp hiện được hỗ trợ có tên & quot; curve25519-sha256@libssh.org".
  • sshd (8): Cải thiện việc xử lý SIGHUP bằng cách kiểm tra xem sshd đã được daemonised khi khởi động và bỏ qua cuộc gọi tới daemon (3) nếu nó có. Điều này đảm bảo rằng một SIGHUP khởi động lại sshd (8) sẽ giữ lại cùng một process-ID như thực hiện ban đầu. sshd (8) cũng sẽ hủy liên kết PidFile trước khi SIGHUP khởi động lại và tạo lại nó sau khi khởi động lại thành công, thay vì để lại một tập tin cũ trong trường hợp lỗi cấu hình. bz # 2641
  • sshd (8): Cho phép các chỉ thị ClientAliveInterval và ClientAliveCountMax xuất hiện trong các khối đối sánh sshd_config.
  • sshd (8): Thêm% -cảnh báo vào AuthorizedPrincipalsCommand để khớp với các loại được hỗ trợ bởi AuthorizedKeysCommand (khóa, loại khóa, vân tay, v.v.) và một vài thứ khác để cung cấp quyền truy cập vào nội dung của chứng chỉ đang được cung cấp.
  • Đã thêm các kiểm tra hồi quy cho kết hợp chuỗi, đối sánh địa chỉ và chức năng khử trùng chuỗi.
  • Đã cải thiện công cụ khai thác khóa trao đổi khóa.
  • Sửa lỗi:
  • ssh (1): Cho phép IdentityFile tải thành công và sử dụng chứng chỉ không có khóa công khai trống tương ứng. bz # 2617 chứng chỉ id_rsa-cert.pub (và không có id_rsa.pub).
  • ssh (1): Khắc phục xác thực khóa công khai khi nhiều xác thực được sử dụng và khóa công khai không chỉ là phương pháp đầu tiên được thử. bz # 2642
  • regress: Cho phép kiểm tra interop PuTTY chạy không cần giám sát. bz # 2639
  • ssh-agent (1), ssh (1): cải thiện báo cáo khi cố gắng tải các khóa từ mã thông báo PKCS # 11 với ít thông điệp nhật ký vô dụng hơn và chi tiết hơn trong các thông báo gỡ lỗi. bz # 2610
  • ssh (1): Khi rớt xuống các kết nối của ControlMaster, không gây ô nhiễm stderr khi LogLevel = quiet.
  • sftp (1): Bật ^ Z đợi ssh (1) tạm dừng trước khi đình chỉ sftp (1) để đảm bảo rằng ssh (1) khôi phục chế độ đầu cuối chính xác nếu bị treo trong lời nhắc mật khẩu.
  • ssh (1): Tránh bận chờ khi ssh (1) bị tạm ngưng trong khi nhắc mật khẩu.
  • ssh (1), sshd (8): Báo cáo chính xác lỗi trong khi gửi tin nhắn thông báo.
  • sshd (8): sửa lỗi NULL-deref nếu sshd (8) nhận được một thông báo NEWKEYS out-of-sequence.
  • sshd (8): Danh sách chính xác các thuật toán chữ ký được hỗ trợ được gửi trong phần mở rộng server-sig-algs. bz # 2547
  • sshd (8): Khắc phục việc gửi tin nhắn ext_info nếu privsep bị tắt.
  • sshd (8): thực thi đúng hơn thứ tự mong đợi của các cuộc gọi giám sát tách đặc quyền được sử dụng để xác thực và chỉ cho phép chúng khi các phương thức xác thực tương ứng của chúng được bật trong cấu hình
  • sshd (8): Sửa lỗi optlen chưa được khởi tạo trong hàm getockopt (); vô hại trên Unix / BSD nhưng có khả năng gặp sự cố trên Cygwin.
  • Sửa các báo cáo dương tính giả do clear_bzero (3) không được công nhận là bộ khởi tạo bộ nhớ khi được biên dịch bằng bộ nhớ -fsanitize. sshd_config (5): Sử dụng 2001: db8 :: / 32, mạng con IPv6 chính thức cho các ví dụ cấu hình.
  • Tính di động:
  • Trên môi trường được định cấu hình bằng ngôn ngữ Thổ Nhĩ Kỳ, hãy quay lại miền địa phương C / POSIX để tránh lỗi trong phân tích cú pháp cấu hình do xử lý duy nhất của ngôn ngữ đó là 'i' và 'I'. bz # 2643
  • sftp-server (8), ssh-agent (1): Từ chối ptrace trên OS X bằng ptrace (PT_DENY_ATTACH, ..)
  • ssh (1), sshd (8): Giải mã mật khẩu AES-CTR trên OpenSSL cũ (~ 0.9.8).
  • Khắc phục biên dịch cho libcrypto được biên dịch mà không cần hỗ trợ RIPEMD160.
  • đóng góp: Thêm gnome-ssh-askpass3 với hỗ trợ GTK + 3. bz # 2640 sshd (8): Cải thiện khả năng chèn lại PRNG qua tách đặc quyền và buộc libcrypto lấy được hạt giống chất lượng cao trước khi chroot hoặc sandbox.
  • Tất cả: Kiểm tra rõ ràng cho strnvis bị hỏng. NetBSD thêm một strnvis và không may làm cho nó không tương thích với cái hiện có trong OpenBSD và libbsd của Linux (cái cũ đã tồn tại hơn mười năm). Cố gắng phát hiện mớ hỗn độn này và giả sử tùy chọn an toàn duy nhất nếu chúng tôi đang biên dịch chéo.

Tính năng mới trong phiên bản 7.4:

  • Các thay đổi có khả năng không tương thích:
  • Bản phát hành này bao gồm một số thay đổi có thể ảnh hưởng đến cấu hình hiện có:
  • Bản phát hành này xóa hỗ trợ máy chủ cho giao thức SSH v.1.
  • ssh (1): Xóa 3des-cbc khỏi đề xuất mặc định của khách hàng. Mật mã khối 64 bit không an toàn trong năm 2016 và chúng tôi không muốn đợi cho đến khi các cuộc tấn công như SWEET32 được mở rộng sang SSH. Vì 3des-cbc là thuật toán mã hóa bắt buộc duy nhất trong các RFC SSH, điều này có thể gây ra sự cố khi kết nối với các thiết bị cũ bằng cấu hình mặc định, nhưng rất có khả năng các thiết bị đó đã cần cấu hình rõ ràng cho thuật toán trao đổi khóa và khóa máy chủ. sshd (8): Xóa hỗ trợ nén trước khi xác thực. Làm nén sớm trong giao thức có thể có vẻ hợp lý trong những năm 1990, nhưng ngày nay rõ ràng là một ý tưởng tồi về cả mật mã (xem nhiều cuộc tấn công oracle nén trong TLS) và bề mặt tấn công. Hỗ trợ nén trước xác thực đã bị tắt theo mặc định cho & gt; 10 năm. Hỗ trợ vẫn còn trong khách hàng. ssh-agent sẽ từ chối tải các mô-đun PKCS # 11 bên ngoài danh sách trắng các đường dẫn tin cậy theo mặc định. Danh sách trắng đường dẫn có thể được chỉ định tại thời gian chạy.
  • sshd (8): Khi lệnh bắt buộc xuất hiện trong cả chứng chỉ và khóa / lệnh được ủy quyền lệnh = restriction, sshd giờ đây sẽ từ chối chấp nhận chứng chỉ trừ khi chúng giống nhau. Hành vi trước đó (có tài liệu) về việc có lệnh cưỡng chế cưỡng bức đè lên lệnh khác có thể hơi khó hiểu và dễ xảy ra lỗi. sshd (8): Xóa chỉ thị cấu hình UseLogin và hỗ trợ cho việc có / bin / login quản lý các phiên đăng nhập.
  • Các thay đổi kể từ OpenSSH 7.3:
  • Bảo mật:
  • ssh-agent (1): Bây giờ sẽ từ chối tải các mô-đun PKCS # 11 từ các đường dẫn bên ngoài danh sách trắng đáng tin cậy (thời gian chạy có thể định cấu hình). Các yêu cầu tải mô-đun có thể được chuyển qua chuyển tiếp tác nhân và kẻ tấn công có thể tải mô-đun PKCS # 11 thù địch trên kênh tác nhân được chuyển tiếp: PKCS # 11 là các thư viện được chia sẻ, vì vậy điều này sẽ dẫn đến việc thực thi mã trên hệ thống đang chạy ssh -nhận được nếu kẻ tấn công có quyền kiểm soát của các đại lý chuyển tiếp-socket (trên máy chủ chạy máy chủ sshd) và khả năng ghi vào hệ thống tập tin của máy chủ chạy ssh-agent (thường là máy chủ chạy ssh client). Báo cáo bởi Jann Horn của Project Zero.
  • sshd (8): Khi tách đặc quyền bị vô hiệu hóa, các ổ cắm miền Unix được chuyển tiếp sẽ được tạo ra bởi sshd (8) với các đặc quyền của 'root' thay vì người dùng đã được xác thực. Phiên bản này từ chối chuyển tiếp socket tên miền Unix khi tách đặc quyền bị vô hiệu hóa (tách đặc quyền đã được kích hoạt mặc định trong 14 năm). Báo cáo bởi Jann Horn của Project Zero.
  • sshd (8): Tránh rò rỉ lý thuyết của vật liệu khóa riêng tư của máy chủ đến các tiến trình con được phân tách đặc quyền thông qua realloc () khi đọc các khóa. Không có rò rỉ như vậy đã được quan sát thấy trong thực tế cho các phím có kích thước bình thường, cũng không rò rỉ cho các quá trình con trực tiếp phơi bày tài liệu quan trọng cho người dùng không có đặc quyền. Báo cáo bởi Jann Horn của Project Zero.
  • sshd (8): Trình quản lý bộ nhớ dùng chung được hỗ trợ nén xác thực trước có kiểm tra giới hạn có thể được một số trình biên dịch tối ưu hóa ưu tiên. Ngoài ra, trình quản lý bộ nhớ này có thể truy cập không chính xác khi tính năng nén xác thực trước bị vô hiệu hóa. Điều này có khả năng có thể cho phép các cuộc tấn công chống lại quá trình giám sát đặc quyền từ quá trình tách đặc quyền sandboxed (một thỏa hiệp của sau này sẽ được yêu cầu đầu tiên). Bản phát hành này loại bỏ hỗ trợ nén trước xác thực từ sshd (8). Báo cáo bởi Guido Vranken bằng cách sử dụng công cụ nhận dạng tối ưu hóa không ổn định Stack (http://css.csail.mit.edu/stack/)
  • sshd (8): Khắc phục tình trạng từ chối dịch vụ trong đó kẻ tấn công gửi nhiều tin nhắn KEXINIT có thể tiêu thụ tới 128MB cho mỗi kết nối. Báo cáo bởi Shi Lei của Gear Team, Qihoo 360.
  • sshd (8): Xác thực phạm vi địa chỉ cho chỉ thị AllowUser và DenyUsers tại thời gian tải cấu hình và từ chối chấp nhận các địa chỉ không hợp lệ. Trước đây, bạn có thể chỉ định phạm vi địa chỉ CIDR không hợp lệ (ví dụ: user@127.1.2.3/55) và các giá trị này sẽ luôn khớp nhau, có thể dẫn đến cấp quyền truy cập ở nơi không được dự định. Báo cáo bởi Laurence Parry.
  • Tính năng Mới:
  • ssh (1): Thêm chế độ ghép kênh proxy vào ssh (1) lấy cảm hứng từ phiên bản trong PuTTY của Simon Tatham. Điều này cho phép một khách hàng ghép kênh giao tiếp với quy trình tổng thể bằng cách sử dụng một tập hợp con của gói SSH và giao thức kênh qua ổ cắm miền Unix, với quá trình chính hoạt động như một proxy dịch ID kênh, v.v. các hệ thống thiếu đi bộ mô tả tập tin (được sử dụng bởi mã ghép kênh hiện tại) và có khả năng, kết hợp với chuyển tiếp socket tên miền Unix, với quy trình tổng thể của máy khách và ghép kênh trên các máy khác nhau. Chế độ proxy ghép kênh có thể được gọi bằng cách sử dụng "proxy ssh -O ..."
  • sshd (8): Thêm tùy chọn DisableShunter sshd_config để vô hiệu hóa chuyển tiếp X11, agent, TCP, đường hầm và chuyển tiếp miền Unix, cũng như bất kỳ thứ gì khác mà chúng tôi có thể triển khai trong tương lai. Giống như cờ authorized_keys 'hạn chế', điều này được dự định là cách hạn chế đơn giản và tương lai để hạn chế tài khoản.
  • sshd (8), ssh (1): Hỗ trợ phương thức trao đổi khóa "curve25519-sha256". Điều này giống với phương pháp hiện được hỗ trợ có tên "curve25519-sha256@libssh.org".
  • sshd (8): Cải thiện việc xử lý SIGHUP bằng cách kiểm tra xem sshd đã được daemonised khi khởi động và bỏ qua cuộc gọi tới daemon (3) nếu nó có. Điều này đảm bảo rằng một SIGHUP khởi động lại sshd (8) sẽ giữ lại cùng một process-ID như thực hiện ban đầu. sshd (8) cũng sẽ hủy liên kết PidFile trước khi SIGHUP khởi động lại và tạo lại nó sau khi khởi động lại thành công, thay vì để lại một tập tin cũ trong trường hợp lỗi cấu hình. bz # 2641
  • sshd (8): Cho phép các chỉ thị ClientAliveInterval và ClientAliveCountMax xuất hiện trong các khối đối sánh sshd_config.
  • sshd (8): Thêm% -cảnh báo vào AuthorizedPrincipalsCommand để khớp với các loại được hỗ trợ bởi AuthorizedKeysCommand (khóa, loại khóa, vân tay, v.v.) và một vài thứ khác để cung cấp quyền truy cập vào nội dung của chứng chỉ đang được cung cấp.
  • Đã thêm các kiểm tra hồi quy cho kết hợp chuỗi, đối sánh địa chỉ và chức năng khử trùng chuỗi.
  • Đã cải thiện công cụ khai thác khóa trao đổi khóa.
  • Sửa lỗi:
  • ssh (1): Cho phép IdentityFile tải thành công và sử dụng chứng chỉ không có khóa công khai trống tương ứng. bz # 2617 chứng chỉ id_rsa-cert.pub (và không có id_rsa.pub).
  • ssh (1): Khắc phục xác thực khóa công khai khi nhiều xác thực được sử dụng và khóa công khai không chỉ là phương pháp đầu tiên được thử. bz # 2642
  • regress: Cho phép kiểm tra interop PuTTY chạy không cần giám sát. bz # 2639
  • ssh-agent (1), ssh (1): cải thiện báo cáo khi cố gắng tải các khóa từ mã thông báo PKCS # 11 với ít thông điệp nhật ký vô dụng hơn và chi tiết hơn trong các thông báo gỡ lỗi. bz # 2610
  • ssh (1): Khi rớt xuống các kết nối của ControlMaster, không gây ô nhiễm stderr khi LogLevel = quiet.
  • sftp (1): Bật ^ Z đợi ssh (1) tạm dừng trước khi đình chỉ sftp (1) để đảm bảo rằng ssh (1) khôi phục chế độ đầu cuối chính xác nếu bị treo trong lời nhắc mật khẩu.
  • ssh (1): Tránh bận chờ khi ssh (1) bị tạm ngưng trong khi nhắc mật khẩu.
  • ssh (1), sshd (8): Báo cáo chính xác lỗi trong khi gửi tin nhắn thông báo.
  • sshd (8): sửa lỗi NULL-deref nếu sshd (8) nhận được một thông báo NEWKEYS out-of-sequence.
  • sshd (8): Danh sách chính xác các thuật toán chữ ký được hỗ trợ được gửi trong phần mở rộng server-sig-algs. bz # 2547
  • sshd (8): Khắc phục việc gửi tin nhắn ext_info nếu privsep bị tắt.
  • sshd (8): thực thi đúng hơn thứ tự mong đợi của các cuộc gọi giám sát tách đặc quyền được sử dụng để xác thực và chỉ cho phép chúng khi các phương thức xác thực tương ứng của chúng được bật trong cấu hình
  • sshd (8): Sửa lỗi optlen chưa được khởi tạo trong hàm getockopt (); vô hại trên Unix / BSD nhưng có khả năng gặp sự cố trên Cygwin.
  • Sửa các báo cáo dương tính giả do clear_bzero (3) không được công nhận là bộ khởi tạo bộ nhớ khi được biên dịch bằng bộ nhớ -fsanitize. sshd_config (5): Sử dụng 2001: db8 :: / 32, mạng con IPv6 chính thức cho các ví dụ cấu hình.
  • Tính di động:
  • Trên môi trường được định cấu hình bằng ngôn ngữ Thổ Nhĩ Kỳ, hãy quay lại miền địa phương C / POSIX để tránh lỗi trong phân tích cú pháp cấu hình do xử lý duy nhất của ngôn ngữ đó là 'i' và 'I'. bz # 2643
  • sftp-server (8), ssh-agent (1): Từ chối ptrace trên OS X bằng ptrace (PT_DENY_ATTACH, ..)
  • ssh (1), sshd (8): Giải mã mật khẩu AES-CTR trên OpenSSL cũ (~ 0.9.8).
  • Khắc phục biên dịch cho libcrypto được biên dịch mà không cần hỗ trợ RIPEMD160.
  • đóng góp: Thêm gnome-ssh-askpass3 với hỗ trợ GTK + 3. bz # 2640 sshd (8): Cải thiện khả năng chèn lại PRNG qua tách đặc quyền và buộc libcrypto lấy được hạt giống chất lượng cao trước khi chroot hoặc sandbox.
  • Tất cả: Kiểm tra rõ ràng cho strnvis bị hỏng. NetBSD thêm một strnvis và không may làm cho nó không tương thích với cái hiện có trong OpenBSD và libbsd của Linux (cái cũ đã tồn tại hơn mười năm). Cố gắng phát hiện mớ hỗn độn này và giả sử tùy chọn an toàn duy nhất nếu chúng tôi đang biên dịch chéo.

Tính năng mới trong phiên bản 7.3:

  • Bảo mật:
  • sshd (8): Giảm thiểu khả năng tấn công từ chối dịch vụ tiềm năng đối với chức năng crypt (3) của hệ thống thông qua sshd (8). Kẻ tấn công có thể gửi mật khẩu rất dài có thể gây ra việc sử dụng CPU quá mức trong crypt (3). sshd (8) bây giờ từ chối chấp nhận yêu cầu xác thực mật khẩu có độ dài lớn hơn 1024 ký tự. Được báo cáo độc lập bởi Tomas Kuthan (Oracle), Andres Rojas và Javier Nieto.
  • sshd (8): Giảm thiểu sự khác biệt về thời gian trong xác thực mật khẩu có thể được sử dụng để phân biệt hợp lệ với các tên tài khoản không hợp lệ khi mật khẩu dài được gửi và các thuật toán băm mật khẩu cụ thể đang được sử dụng trên máy chủ. CVE-2016-6210, được báo cáo bởi EddieEzra.Harari tại verint.com
  • ssh (1), sshd (8): Khắc phục nhược điểm thời gian quan sát được trong các biện pháp đối phó với đệm của CBC. Báo cáo của Jean Paul Degabriele, Kenny Paterson, Torben Hansen và Martin Albrecht. Lưu ý rằng mật mã CBC bị tắt theo mặc định và chỉ được bao gồm cho khả năng tương thích cũ.
  • ssh (1), sshd (8): Cải thiện thứ tự vận hành xác minh MAC cho các thuật toán MAC vận chuyển chế độ mã hóa-MAC (EtM) để xác minh MAC trước khi giải mã bất kỳ bản mã nào. Điều này loại bỏ khả năng thời gian khác biệt làm rò rỉ sự thật về bản rõ, mặc dù không có rò rỉ như vậy đã được quan sát thấy. Báo cáo của Jean Paul Degabriele, Kenny Paterson, Torben Hansen và Martin Albrecht. sshd (8): (chỉ di động) Bỏ qua các môi trường PAM khi UseLogin = yes. Nếu PAM được cấu hình để đọc biến môi trường do người dùng chỉ định và UseLogin = yes trong sshd_config, thì người dùng cục bộ thù địch có thể tấn công / bin / đăng nhập thông qua LD_PRELOAD hoặc các biến môi trường tương tự được đặt qua PAM. CVE-2015-8325, được tìm thấy bởi Shayan Sadigh.
  • Tính năng Mới:
  • ssh (1): Thêm tùy chọn ProxyJump và cờ dòng lệnh -J tương ứng để cho phép chuyển hướng đơn giản thông qua một hoặc nhiều bản sao lưu SSH hoặc "máy chủ nhảy".
  • ssh (1): Thêm tùy chọn IdentityAgent để cho phép chỉ định các ổ cắm tác nhân cụ thể thay vì chấp nhận một ổ cắm từ môi trường. ssh (1): Cho phép ExitOnForwardFailure và ClearAllForwardings được tùy chọn ghi đè khi sử dụng ssh -W. bz # 2577
  • ssh (1), sshd (8): Triển khai hỗ trợ cho chế độ thiết bị đầu cuối IUTF8 theo lệnh draft-sgtatham-secsh-iutf8-00. ssh (1), sshd (8): Thêm hỗ trợ cho các nhóm Diffie-Hellman 2K, 4K và 8K cố định bổ sung từ draft-ietf-curdle-ssh-kex-sha2-03.
  • ssh-keygen (1), ssh (1), sshd (8): hỗ trợ chữ ký SHA256 và SHA512 RSA trong các chứng chỉ; ssh (1): Thêm chỉ thị Bao gồm cho các tệp ssh_config (5).
  • ssh (1): Cho phép các ký tự UTF-8 trong các biểu ngữ xác thực trước được gửi từ máy chủ. bz # 2058
  • Sửa lỗi:
  • ssh (1), sshd (8): Giảm mức syslog của một số sự kiện giao thức tương đối phổ biến từ LOG_CRIT. bz # 2585
  • sshd (8): Từ chối AuthenticationMethods = "" trong cấu hình và chấp nhận AuthenticationMethods = bất kỳ hành vi mặc định nào không yêu cầu xác thực nhiều. bz # 2398
  • sshd (8): Xóa lỗi thời "lỗi có thể xảy ra!" thông báo khi DNS chuyển tiếp và ngược lại không khớp. bz # 2585
  • ssh (1): Đóng trình xử lý nền của ControlPersist, ngoại trừ trong chế độ gỡ lỗi hoặc khi đăng nhập vào syslog. bz # 1988
  • misc: Tạo mô tả PROTOCOL cho các kênh mở trực tiếp -streamlocal@openssh.com khớp với mã được triển khai. bz # 2529
  • ssh (1): Trùng lặp các mục nhập LocalForward và RemoteForward để sửa lỗi khi cả hai ExitOnForwardFailure và hostname canonicalisation được bật. bz # 2562
  • sshd (8): Xóa dự phòng khỏi các mô-đun thành tệp "số nguyên tố" lỗi thời đã bị ngừng sử dụng vào năm 2001. bz # 2559.
  • sshd_config (5): Mô tả chính xác của UseDNS: nó ảnh hưởng đến việc xử lý tên máy chủ ssh cho authorized_keys, không phải known_hosts; bz # 2554 ssh (1): Khắc phục xác thực bằng cách sử dụng các khóa chứng chỉ đơn lẻ trong một tác nhân không có các khóa riêng tương ứng trên hệ thống tệp. bz # 2550
  • sshd (8): Gửi các ping ClientAliveInterval khi một RekeyLimit dựa trên thời gian được thiết lập; các gói trước đó không được gửi đi. bz # 2252

Tính năng mới trong phiên bản 7.2:

  • Bảo mật:
  • ssh (1), sshd (8): xóa mã chuyển vùng chưa hoàn thành và không sử dụng (đã bị tắt cưỡng bức trong OpenSSH 7.1p2).
  • ssh (1): loại bỏ dự phòng từ chuyển tiếp X11 không đáng tin cậy sang chuyển tiếp đáng tin cậy khi máy chủ X vô hiệu hóa tiện ích mở rộng SECURITY.
  • ssh (1), sshd (8): tăng kích thước mô đun tối thiểu được hỗ trợ cho trao đổi nhóm diffie-hellman thành 2048 bit.
  • sshd (8): hộp cát trước khi xác thực hiện được bật theo mặc định (các phiên bản trước đã bật tính năng này cho cài đặt mới qua sshd_config).
  • Tính năng Mới:
  • tất cả: thêm hỗ trợ cho chữ ký RSA bằng thuật toán băm SHA-256/512 dựa trên draft-rsa-dsa-sha2-256-03.txt và draft-ssh-ext-info-04.txt.
  • ssh (1): Thêm tùy chọn khách hàng AddKeysToAgent có thể được đặt thành 'có', 'không', 'yêu cầu' hoặc 'xác nhận' và mặc định là 'không'. Khi được bật, khóa cá nhân được sử dụng trong quá trình xác thực sẽ được thêm vào ssh-agent nếu nó đang chạy (có xác nhận được bật nếu được đặt thành 'xác nhận').
  • sshd (8): thêm tùy chọn authorized_keys mới "hạn chế" bao gồm tất cả các hạn chế khóa hiện tại và tương lai (không - * - chuyển tiếp, v.v.). Ngoài ra, hãy thêm các phiên bản cho phép của các hạn chế hiện có, ví dụ: "no-pty" - & gt; "pty". Điều này giúp đơn giản hóa nhiệm vụ thiết lập khóa bị hạn chế và đảm bảo chúng bị hạn chế tối đa, bất kể bất kỳ quyền nào chúng tôi có thể triển khai trong tương lai. ssh (1): thêm tùy chọn CertificateFile ssh_config để liệt kê một cách rõ ràng các chứng chỉ. bz # 2436
  • ssh-keygen (1): cho phép ssh-keygen thay đổi nhận xét chính cho tất cả các định dạng được hỗ trợ.
  • ssh-keygen (1): cho phép lấy dấu vân tay từ đầu vào chuẩn, ví dụ: "ssh-keygen -lf -"
  • ssh-keygen (1): cho phép lấy dấu vân tay nhiều khóa công khai trong một tệp, ví dụ: "ssh-keygen -lf ~ / .ssh / authorized_keys" bz # 1319
  • sshd (8): hỗ trợ "none" làm đối số cho sshd_config Foreground và ChrootDirectory. Hữu ích bên trong khối Kết hợp để ghi đè mặc định chung. bz # 2486
  • ssh-keygen (1): hỗ trợ nhiều chứng chỉ (một dòng trên mỗi dòng) và đọc từ đầu vào tiêu chuẩn (sử dụng "-f -") cho "ssh-keygen -L" ssh-keyscan (1): thêm "ssh- keyscan -c ... "flag để cho phép tìm nạp chứng chỉ thay vì các khóa đơn giản.
  • ssh (1): xử lý tốt hơn các FQDN được neo (ví dụ: 'cvs.openbsd.org.') trong định danh tên máy chủ - xử lý chúng như đã chuẩn và loại bỏ dấu '.' trước khi khớp với ssh_config.
  • Sửa lỗi:
  • sftp (1): các thư mục đích hiện tại không nên chấm dứt các tải lên đệ quy (hồi quy trong openssh 6.8) bz # 2528
  • ssh (1), sshd (8): gửi chính xác các câu trả lời SSH2_MSG_UNIMPLEMENTED đến các thư không mong muốn trong quá trình trao đổi khóa. bz # 2949
  • ssh (1): từ chối các nỗ lực để thiết lập ConnectionAttempts = 0, điều này không có ý nghĩa và sẽ gây ra ssh in một biến ngăn xếp chưa được khởi tạo. bz # 2500
  • ssh (1): sửa lỗi khi cố gắng kết nối với các địa chỉ IPv6 được phân tầng với kích hoạt tên máy chủ được kích hoạt.
  • sshd_config (5): liệt kê một vài tùy chọn khác có thể sử dụng trong các khối Kết hợp. bz # 2489
  • sshd (8): sửa "PubkeyAcceptedKeyTypes + ..." bên trong khối Đối sánh. ssh (1): mở rộng các ký tự dấu ngã trong tên tệp được chuyển đến tùy chọn -i trước khi kiểm tra xem tệp danh tính có tồn tại hay không. Tránh nhầm lẫn trong trường hợp shell không mở rộng (ví dụ: "-i ~ / file" so với "-i ~ / file"). bz # 2481
  • ssh (1): không thêm "exec" vào lệnh shell được chạy bởi "Match exec" trong tệp cấu hình, có thể khiến một số lệnh thất bại trong một số môi trường nhất định. bz # 2471
  • ssh-keyscan (1): sửa đầu ra cho nhiều máy chủ / addrs trên một dòng khi máy chủ lưu trữ băm hoặc một cổng không chuẩn được sử dụng bz # 2479
  • sshd (8): bỏ qua "Không thể chuyển sang thư mục chính" khi ChrootDirectory đang hoạt động. bz # 2485
  • ssh (1): bao gồm PubkeyAcceptedKeyTypes trong kết xuất cấu hình ssh -G. sshd (8): tránh thay đổi cờ thiết bị TunnelForwarding nếu chúng đã là những gì cần thiết; làm cho nó có thể sử dụng mạng tun / tap như người dùng không phải root nếu quyền của thiết bị và cờ giao diện được thiết lập trước
  • ssh (1), sshd (8): RekeyLimits có thể bị vượt quá bởi một gói. bz # 2521
  • ssh (1): khắc phục lỗi chính ghép kênh để thông báo thoát ứng dụng khách.
  • ssh (1), ssh-agent (1): tránh gây tử vong () đối với mã thông báo PKCS11 hiển thị các ID khóa trống. bz # 1773
  • sshd (8): tránh printf của đối số NULL. bz # 2535
  • ssh (1), sshd (8): cho phép RekeyLimits lớn hơn 4GB. bz # 2521
  • ssh-keygen (1): sshd (8): sửa một số lỗi trong (không sử dụng) hỗ trợ chữ ký KRL.
  • ssh (1), sshd (8): sửa các kết nối với các đồng nghiệp sử dụng tính năng đoán trao đổi khóa của giao thức. bz # 2515
  • sshd (8): bao gồm số cổng từ xa trong các thông điệp tường trình. bz # 2503
  • ssh (1): không cố gắng tải khóa riêng SSHv1 khi được biên dịch mà không hỗ trợ SSHv1. bz # 2505
  • ssh-agent (1), ssh (1): sửa các thông báo lỗi không đúng trong quá trình tải và ký lỗi. bz # 2507
  • ssh-keygen (1): không để lại các tệp tạm thời trống khi thực hiện các chỉnh sửa tệp known_hosts khi known_host không tồn tại.
  • sshd (8): định dạng gói chính xác cho các trả lời tcpip-forward cho các yêu cầu không phân bổ cổng bz # 2509
  • ssh (1), sshd (8): sửa lỗi có thể treo trên đầu ra đã đóng. bz # 2469 ssh (1): mở rộng% i trong ControlPath thành UID. bz # 2449
  • ssh (1), sshd (8): sửa kiểu trả về của openssh_RSA_verify. bz # 2460
  • ssh (1), sshd (8): sửa một số tùy chọn phân tích rò rỉ bộ nhớ. bz # 2182
  • ssh (1): thêm một số đầu ra gỡ lỗi trước độ phân giải DNS; đó là một nơi mà ssh trước đây có thể im lặng trong trường hợp máy chủ DNS không hồi đáp. bz # 2433 ssh (1): loại bỏ dòng mới giả trong hostkey trực quan. bz # 2686
  • ssh (1): sửa lỗi in (ssh -G ...) của HostKeyAlgorithms = + ...
  • ssh (1): sửa lỗi mở rộng của HostkeyAlgorithms = + ...
  • Tài liệu:
  • ssh_config (5), sshd_config (5): cập nhật danh sách thuật toán mặc định để phù hợp với thực tế hiện tại. bz # 2527
  • ssh (1): đề cập đến các tùy chọn truy vấn-key-plain -Q key-plain và -Q. bz # 2455
  • sshd_config (8): mô tả rõ ràng hơn những gì AuthorizedKeysFile = none.
  • ssh_config (5): tài liệu tốt hơn ExitOnForwardFailure. bz # 2444
  • sshd (5): đề cập đến các nhóm dự phòng nội bộ DH-GEX trong sách hướng dẫn. bz # 2302
  • sshd_config (5): mô tả tốt hơn cho tùy chọn MaxSessions. bz # 2531
  • Tính di động:
  • ssh (1), sftp-server (8), ssh-agent (1), sshd (8): Hỗ trợ các đặc quyền chi tiết của Illumos / Solaris. Bao gồm một hộp cát Privsep và autedge (). bz # 2511
  • Cải tạo redhat / openssh.spec, xóa các tùy chọn và cú pháp không được chấp nhận.
  • định cấu hình: cho phép - công cụ không có-ssl-với -without-openssl
  • sshd (8): sửa nhiều xác thực bằng S / Key. bz # 2502
  • sshd (8): đọc lại từ libcrypto RAND_before bỏ đặc quyền. Tránh vi phạm hộp cát với BoringSSL.
  • Sửa va chạm tên với các hàm glob (3) do hệ thống cung cấp. bz # 2463
  • Điều chỉnh Makefile để sử dụng ssh-keygen -A khi tạo khóa máy chủ. bz # 2459
  • định cấu hình: sửa giá trị mặc định cho --with-ssh1 bz # 2457
  • định cấu hình: phát hiện tốt hơn biểu tượng _res bz # 2259
  • hỗ trợ getrandom () syscall trên Linux

Tính năng mới trong phiên bản 7.1:

  • Bảo mật:
  • sshd (8): OpenSSH 7.0 chứa lỗi logic trong PermitRootLogin = cấm-mật khẩu / không có mật khẩu có thể, tùy thuộc vào cấu hình biên dịch thời gian, cho phép xác thực mật khẩu để root trong khi ngăn chặn các hình thức xác thực khác. Vấn đề này đã được báo cáo bởi Mantas Mikulenas.
  • Sửa lỗi:
  • ssh (1), sshd (8): thêm giải pháp tương thích cho FuTTY
  • ssh (1), sshd (8): tinh chỉnh các giải pháp tương thích cho WinSCP
  • Sửa một số lỗi bộ nhớ (bộ nhớ không có đôi, không có bộ nhớ chưa khởi tạo, v.v.) trong ssh (1) và ssh-keygen (1). Báo cáo bởi Mateusz Kocielski.

Phần mềm khác của nhà phát triển OpenBSD Project

Portable OpenSSH
Portable OpenSSH

22 Jun 18

OpenSMTPD
OpenSMTPD

28 Sep 15

Ý kiến ​​để OpenSSH

Bình luận không
Nhập bình luận
Bật hình ảnh!