2013-05-01 19 views
5

Chúng tôi đã gặp sự cố với máy tạo tự động của chúng tôi hôm qua. Chúng tôi đang sử dụng một máy chủ TFS Build, và khi nó cố gắng tự động tải xuống các gói NuGet, chúng tôi nhận được sự khét tiếng "Kết nối cơ bản đã bị đóng: Không thể thiết lập mối quan hệ tin cậy đối với kênh bảo mật SSL/TLS".Tại sao lại sử dụng SSL cho kho lưu trữ NuGet?

Có rất nhiều chủ đề xung quanh 'net về lý do tại sao điều này xảy ra. Đó không phải là câu hỏi của tôi. Nó có thể được cố định một cách dễ dàng bằng cách thay đổi đủ kho NuGet của bạn từ

https://nuget.org/api/v2/ 

để

http://nuget.org/api/v2/ 

hoặc

http://packages.nuget.org/v1/FeedService.svc/ 

Những gì tôi muốn biết là tại sao các kho lưu trữ là sử dụng SSL trong nơi đầu tiên? Tôi cho rằng nó có lý do, nhưng tôi không thể hiểu được điều gì. Không có thông tin đăng nhập nào yêu cầu bảo mật. Tôi không thể nghĩ ra bất kỳ thông tin nào được gửi cần phải được bảo mật. Tôi chỉ muốn đảm bảo rằng bằng cách sử dụng một kết nối không an toàn (hoạt động tốt) chúng tôi không bằng cách nào đó ảnh hưởng đến máy xây dựng của chúng tôi.

Có ai có thể giải thích những gì có được từ việc kết nối với NuGet bằng kết nối bảo mật không?

Trả lời

8

Tôi không thể nghĩ ra bất kỳ thông tin nào được gửi cần bảo mật là .

Không nhất thiết vì thông tin bạn trao đổi với nuget.org chứa bất kỳ điều gì bí mật và do đó cần được bảo mật. Bằng cách sử dụng SSL, bạn sẽ chắc chắn rằng nó thực sự là nuget.org bạn đang nói chuyện. Nếu không có SSL, ai đó có thể trong lý thuyết được cho ăn bạn gói không có thật, và đó có thể là một vấn đề an ninh.

Đối với các vấn đề mà bạn đang gặp phải với "Không thể thiết lập mối quan hệ tin cậy cho SSL/TLS kênh an toàn", chúng tôi đã có một vấn đề tương tự khi chúng tôi bắt đầu sử dụng một xây dựng máy chủ mới:

Nếu bạn xem chứng chỉ SSL được trình bày bởi https://nuget.org/, đường dẫn chứng nhận là: GeoTrust Global CA> RapidSSL CA> * .nuget.org

GeoTrust Global CA bị thiếu CA đáng tin cậy trên máy chủ xây dựng mới của chúng tôi, do đó, vấn đề dễ dàng được giải quyết bằng cách thêm chúng vào danh sách máy chủ xây dựng của CA gốc đáng tin cậy (sử dụng giao diện điều khiển MMC với snap-in Certificates).

Cập nhật:
Trên một dịch vụ sau, tôi đã có kinh nghiệm cùng một vấn đề SSL, và thêm GeoTrust như một CA tin cậy một mình không giải quyết vấn đề. Trong số bổ sung, máy chủ cũng bị thiếu CA gốc cho https://go.microsoft.com/, là Baltimore CyberTrust Root (truy cập https://microsoft.com và bạn sẽ có thể xem và tải xuống chứng chỉ). Việc thêm danh sách này vào danh sách máy chủ của CA gốc đáng tin cậy đã giải quyết được vấn đề.

Các vấn đề liên quan