2010-06-14 30 views
5

Chúng tôi có một trang web www.name1.domain.com mà chúng tôi đã tạo thành công và triển khai SSL cert. Sau đó chúng tôi đã thêm một trang web khác, www.name2.domain.com và đang thấy một số hành vi lạ trong IE7 và IE8 (bất ngờ!).Chứng chỉ SSL không khớp trong IE 7+, OK trong Firefox 3.6+

Về cơ bản, IE7,8 báo cáo sự không khớp của tên máy chủ khi chúng tôi truy cập https://www.name2.domain.com/. Khi tôi thêm và xem chứng chỉ này trong IE cho tên miền này, tên máy chủ không chính xác, nhưng thuộc về tên máy chủ cũ hơn, tức là www.name1.domain.com.

Firefox không có vấn đề này và chọn đúng tên máy chủ lưu trữ www.name2.domain.com cho trang web thứ hai mà không có vấn đề.

Bất cứ ý tưởng tại sao IE là misbehavin (ngoài cho những hỗn xược (-:)

Cảm ơn

KM

+0

Tôi không thể hiểu câu nói của bạn. Những gì, chính xác, là trong giấy chứng nhận? Chúng ta đang nói về bao nhiêu chứng chỉ? Một? Hai? –

+0

Có r 2 máy chủ - www.name1.domain.com & www.name2.domain.com - w/một chứng chỉ SSL mỗi cấu hình trong Apache. Khi tôi truy cập https://www.name1.domain.com và xem cert, tên chung của máy chủ là www.name1.domain.com hoặc trong IE hoặc Firefox. Càng xa càng tốt. Khi tôi truy cập https://www.name2.domain.com trong IE, IE cho biết có "Đã xảy ra sự cố với chứng chỉ bảo mật của trang web này". Tôi tiến hành để xem các trang web, nhưng IE sẽ hiển thị một "Giấy chứng nhận lỗi" Xem cert cho thấy tôi rằng nó nó được cấp cho www.name1.domain.com, khi nó nên được www.name2.domain.com. HTH & cảm ơn bạn đã dành thời gian! –

Trả lời

7

Vấn đề của bạn là Internet Explorer trên Windows XP (và có lẽ cả phần mềm khác nữa) không phải là SNI.

Tôi vừa mới gặp phải vấn đề tương tự - về cơ bản Firefox và Chrome là ok và nhận được chứng chỉ chính xác nhưng Internet Explorer thì không.Sau đó, tôi đã nhìn nó lên một chút và thấy this trên Wikipedia, trong số những thứ khác:

trình duyệt với sự hỗ trợ cho TLS tên máy chủ chỉ [7] Internet Explorer 7 trở lên, trên Windows Vista hoặc cao hơn. Không hoạt động trên Windows XP, ngay cả Internet Explorer 8.

Vì vậy, combo apache/openSSL của bạn là SNI có khả năng và có thể thực hiện việc này, nhưng Windows XP thì không.

Giải pháp của tôi là tôi đặt tên miền phụ chính đầu tiên trong cấu hình VirtualHost và số thứ cấp thấp hơn. Ít nhất có ít lời giải thích cho khách hàng về lý do tại sao điều này bật lên. Tôi không biết nếu nó sẽ làm việc cho bạn mặc dù.

+2

P.S. Tôi chỉ muốn la mắng người dùng của mình và yêu cầu họ bắt đầu sử dụng Chrome, vì lợi ích của thiên đường! – Zlatko

2

Firefox hỗ trợ chạy SSL trên cùng một cổng, 443 (sử dụng giống nhau không?! IP) để hai máy ảo (trong Apache), nhưng IE7 thì không.

http://www.eggheadcafe.com/software/aspnet/36069240/sni-support.aspx

====

01.235.

http://httpd.apache.org/docs/2.0/ssl/ssl_faq.html#vhosts2

Tại sao không thể sử dụng Virtual Hosting dựa trên tên để xác định các máy chủ ảo SSL khác nhau? Virtual Hosting dựa trên tên là một phương pháp rất phổ biến để xác định các máy chủ ảo khác nhau. Nó cho phép bạn sử dụng cùng một địa chỉ IP và cùng một số cổng cho nhiều trang web khác nhau. Khi mọi người chuyển sang SSL, có vẻ như tự nhiên cho rằng cùng một phương pháp có thể được sử dụng để có nhiều máy chủ ảo SSL khác nhau trên cùng một máy chủ.

Nó đến như là một cú sốc để biết rằng điều đó là không thể.

Lý do là giao thức SSL là một lớp riêng biệt đóng gói giao thức HTTP. Vì vậy, phiên SSL là một giao dịch riêng biệt, diễn ra trước khi phiên HTTP đã bắt đầu. Máy chủ nhận được yêu cầu SSL trên địa chỉ IP X và cổng Y (thường là 443). Vì yêu cầu SSL không chứa bất kỳ trường Host: nào, máy chủ không có cách nào để quyết định máy chủ ảo SSL nào sẽ sử dụng. Thông thường, nó sẽ chỉ sử dụng cái đầu tiên mà nó tìm thấy, khớp với cổng và địa chỉ IP được chỉ định. Bạn có thể, tất nhiên, sử dụng Virtual Hosting dựa trên tên để xác định nhiều máy chủ ảo không phải SSL (tất cả trên cổng 80, ví dụ) và sau đó có một máy chủ ảo SSL duy nhất (trên cổng 443). Quay lại đầu trang Cung cấp Phản hồi THÔNG TIN THÊM THÔNG TIN THÊM Nhưng nếu bạn làm điều này, bạn phải đảm bảo đặt số cổng không phải SSL trên chỉ thị NameVirtualHost, ví dụ:

NameVirtualHost 192.168.1.1:80 giải pháp workaround khác bao gồm:

Sử dụng địa chỉ IP riêng biệt cho máy chủ SSL khác nhau. Sử dụng các số cổng khác nhau cho các máy chủ SSL khác nhau.

+0

Paul, bạn có thể cho tôi biết tại sao Chrome và Firefox có được chứng chỉ chính xác và Internet Explorer không? Với nhiều máy chủ SSL? – Zlatko

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