Câu trả lời:
Server 2008 R2 / Windows 7 đã giới thiệu hỗ trợ TLS 1.1 và TLS 1.2 cho Windows và được phát hành trước các cuộc tấn công khiến TLS 1.0 dễ bị tấn công, do đó, có lẽ vấn đề của TLS 1.0 là mặc định vì đây là phiên bản TLS được sử dụng rộng rãi nhất tại thời điểm Server 2008 R2 được phát hành (tháng 7 năm 2009).
Không chắc chắn làm thế nào bạn biết chắc chắn, hoặc tìm hiểu "tại sao" một quyết định thiết kế đã được đưa ra, nhưng cho rằng Windows 7 và Server 2008 R2 đã giới thiệu tính năng này cho gia đình Windows và Windows Server 2012 sử dụng TLS 1.2 theo mặc định. dường như cho thấy đó là vấn đề "cách mọi thứ được thực hiện" vào thời điểm đó. TLS 1.0 vẫn "đủ tốt", vì vậy nó là mặc định, nhưng TLS 1.1 và 1.2 được hỗ trợ để hỗ trợ chuyển tiếp và khả năng vận hành chuyển tiếp.
Blog kỹ thuật này từ một nhân viên của Microsoft khuyên bạn nên bật các phiên bản TLS mới hơn và cũng lưu ý rằng (kể từ tháng 10 năm 2011):
Trong số các máy chủ web một lần nữa, IIS 7.5 là máy chủ duy nhất hỗ trợ TLS 1.1 và TLS 1.2. Cho đến bây giờ Apache không hỗ trợ các giao thức này vì OPENSSL không bao gồm hỗ trợ cho chúng. Hy vọng, họ sẽ bắt kịp các tiêu chuẩn mới của ngành.
Điều đó hỗ trợ thêm cho ý tưởng rằng các phiên bản TLS mới hơn không được bật theo mặc định trong Server 2008 R2 vì lý do đơn giản là chúng mới hơn và không được hỗ trợ hoặc sử dụng rộng rãi vào thời điểm đó - Apache và OpenSSL thậm chí chưa hỗ trợ chúng sử dụng chúng như mặc định
Chi tiết về cách chính xác cách bật và tắt các phiên bản SSL / TLS khác nhau có thể được tìm thấy trong bài viết Microsoft KB số 245030, có tiêu đềHow to restrict the use of certain cryptographic algorithms and protocols in Schannel.dll
. Rõ ràng, các Client
khóa điều khiển Internet Explorer và các Server
khóa bao gồm IIS.
Tôi đã tự hỏi điều này bản thân mình ... có lẽ chỉ do các vấn đề tương thích đã biết vào thời điểm đó ... Tôi đã tìm thấy mục blog MSDN này (từ ngày 24 tháng 3 năm 2011):
Nó nói về một số máy chủ web "hoạt động sai" theo cách họ đáp ứng với các yêu cầu giao thức không được hỗ trợ, sau đó khiến máy khách không chuyển sang giao thức được hỗ trợ, kết quả là người dùng không thể truy cập (các) trang web.
Trích dẫn một phần của mục blog đó ở đây:
Máy chủ không được phép hành xử theo cách này, thay vào đó, dự kiến sẽ trả lời đơn giản bằng phiên bản giao thức HTTPS mới nhất mà nó hỗ trợ (ví dụ: "3.1, hay còn gọi là TLS 1.0). Bây giờ, máy chủ đã đóng kết nối một cách duyên dáng vào thời điểm này. không sao-- mã trong WinINET sẽ dự phòng và thử lại kết nối chỉ cung cấp TLS 1.0. WinINET bao gồm mã sao cho TLS1.1 & 1.2 dự phòng thành TLS1.0, sau đó chuyển sang SSL3 (nếu được bật) rồi SSL2 (nếu được bật). Nhược điểm của dự phòng là hiệu suất, các vòng tròn bổ sung cần thiết cho bắt tay phiên bản thấp hơn thường sẽ dẫn đến một hình phạt lên tới hàng chục hoặc hàng trăm mili giây.
Tuy nhiên, máy chủ này đã sử dụng RST TCP / IP để hủy kết nối, điều này vô hiệu hóa mã dự phòng trong WinINET và khiến toàn bộ chuỗi kết nối bị bỏ qua, khiến người dùng với Internet Internet Explorer không thể hiển thị thông báo lỗi của trang web.