Có phải mỗi tên miền phụ cần chứng chỉ SSL riêng không?


41

Tôi đang tạo một máy chủ websocket sẽ sống ws.mysite.example. Tôi muốn máy chủ ổ cắm web được mã hóa SSL cũng như domain.exampleđược mã hóa SSL. Tôi có cần mua chứng chỉ mới cho mỗi tên miền phụ tôi tạo không? Tôi có cần một địa chỉ IP dành riêng cho mỗi tên miền phụ tôi tạo không? Tôi có thể sẽ có nhiều hơn một tên miền phụ.

Tôi đang sử dụng NGINX và Gunicorn chạy trên Ubuntu.

Câu trả lời:


44

Tôi sẽ trả lời điều này theo hai bước ...

Bạn có cần chứng chỉ SSL cho mỗi tên miền con không?

Có và Không, nó phụ thuộc. Chứng chỉ SSL tiêu chuẩn của bạn sẽ dành cho một tên miền, nói www.domain.example. Có nhiều loại certs khác nhau mà bạn có thể sử dụng ngoài chứng chỉ tên miền đơn tiêu chuẩn: ký tự đại diện và certs đa miền.

  • Một chứng chỉ thẻ hoang dã sẽ được cấp cho một cái gì đó giống như *.domain.examplevà khách hàng sẽ coi điều này là hợp lệ cho bất kỳ tên miền nào kết thúc bằng domain.example, chẳng hạn như www.domain.examplehoặc ws.domain.example.

  • Một cert miền đa có giá trị trong một danh sách được xác định trước của tên miền. Nó thực hiện điều này bằng cách sử dụng trường Tên thay thế chủ đề của chứng chỉ. Ví dụ: bạn có thể nói với CA rằng bạn muốn có chứng chỉ đa miền cho domain.examplews.mysite.example. Điều này sẽ cho phép nó được sử dụng cho cả hai tên miền.

Nếu cả hai tùy chọn này không phù hợp với bạn, thì bạn sẽ cần phải có hai loại SSL khác nhau.

Tôi có cần một IP chuyên dụng cho mỗi tên miền con không?

Một lần nữa, đây là có và không ... tất cả phụ thuộc vào máy chủ ứng dụng / web của bạn. Tôi là một người Windows, vì vậy tôi sẽ trả lời với các ví dụ IIS.

  • Nếu bạn đang chạy IIS7 trở lên, thì bạn buộc phải liên kết các SSL SSL với một IP và bạn không thể có nhiều certs được gán cho một IP. Điều này khiến bạn cần phải có một IP khác nhau cho mỗi tên miền phụ nếu bạn đang sử dụng chứng chỉ SSL chuyên dụng cho mỗi tên miền phụ. Nếu bạn đang sử dụng chứng chỉ đa miền hoặc chứng chỉ ký tự đại diện, thì bạn có thể thoát khỏi một IP duy nhất vì bạn chỉ có một chứng chỉ SSL để bắt đầu.

  • Nếu bạn đang chạy IIS8 trở lên, thì áp dụng tương tự. Tuy nhiên, IIS8 + bao gồm hỗ trợ cho một thứ gọi là Chỉ định Tên Máy chủ (SNI). SNI cho phép bạn liên kết chứng chỉ SSL với tên máy chủ, không phải IP. Vì vậy, tên máy chủ (Tên máy chủ) được sử dụng để thực hiện yêu cầu được sử dụng để cho biết chứng chỉ SSL nào mà IIS nên sử dụng cho yêu cầu.

  • Nếu bạn sử dụng một IP duy nhất, thì bạn có thể định cấu hình trang web để đáp ứng yêu cầu cho tên máy chủ cụ thể.

Tôi biết rằng Apache và Tomcat cũng có hỗ trợ cho SNI, nhưng tôi không đủ quen thuộc để biết phiên bản nào hỗ trợ nó.

Dòng dưới cùng

Tùy thuộc vào ứng dụng / máy chủ web của bạn và loại certs SSL nào bạn có thể nhận được sẽ ra lệnh cho các tùy chọn của bạn.


Tôi đang sử dụng gunicorn và nginx trên Ubuntu.
dùng974407

Trong trường hợp đó, SNI nên có sẵn miễn là OpenSSL (đối với nginx) được tuân thủ với hỗ trợ SNI. Theo liên kết trong câu trả lời của GomoX.
pkeenan

Một số chứng chỉ tên miền phụ liệt kê tên miền chính thay thế, vì vậy bạn có thể thấy bạn có thể thực hiện www.domain.com và domain.com trên một chứng chỉ trên một địa chỉ IP. Hãy cẩn thận để xem xét đối tượng mục tiêu của bạn khi xem xét SNI: IE trên XP không hỗ trợ nó sẽ ảnh hưởng đến bạn với một số người dùng doanh nghiệp, một số trình duyệt di động cũ như stock Android ít nhất lên tới 2.3.5 mà bạn cần xem xét nếu bạn nhắm mục tiêu thiết bị di động (ở đây có rất nhiều thiết bị Android đang chạy phiên bản cũ).
David Spillett

@pkeenan - Sẽ tốt hơn nếu câu trả lời đã được cập nhật để phản ánh các tính năng kỹ thuật mà hostname hỗ trợ và lĩnh vực mà không hostname - helpdesk.ssls.com/hc/en-us/articles/...
có động cơ

> khách hàng sẽ coi điều này là hợp lệ cho bất kỳ tên miền nào kết thúc bằng 'domain.com', chẳng hạn như 'www.domain.com' hoặc 'ws.domain.com'. Điều này khiến tôi tin rằng nó cũng sẽ hợp lệ abc.def.domain.com, đó có phải là trường hợp không?
Jeff

7

Bạn có thể nhận chứng chỉ cho mỗi tên miền phụ, chứng chỉ nhiều tên miền phụ hoặc chứng chỉ ký tự đại diện (cho *.yoursite.example).

Chúng thường có giá cao hơn một chút so với chứng chỉ thông thường và vì bạn chia sẻ một chứng chỉ duy nhất nên chúng thường không phải là lựa chọn tốt nhất theo quan điểm bảo mật trừ khi bạn lưu trữ một anything.mydomain.exampleloại ứng dụng mà chúng là lựa chọn khả thi duy nhất.

Bạn cũng không cần nhiều địa chỉ IP nếu bạn có máy chủ web có khả năng SNI . Điều này cho biết, SNI chỉ được hỗ trợ trong các trình duyệt hiện đại (IE6 trở xuống sẽ không hoạt động với nó). Các phiên bản gần đây của Nginx và Apache hỗ trợ SNI trong suốt (chỉ cần thêm máy chủ ảo hỗ trợ SSL).


Bạn có ý nghĩa gì bởi "không phải là lựa chọn tốt nhất từ ​​quan điểm bảo mật"?
động lực

4
Một chứng chỉ được chia sẻ cho tất cả các máy chủ của bạn biến mọi vi phạm chứng chỉ thành mối đe dọa bảo mật cấp tên miền, thay vì chỉ ảnh hưởng đến bất kỳ tên miền phụ nào mà chứng chỉ được đính kèm. Ví dụ: chứng chỉ được sử dụng cho www.yoursite.com là cài đặt WordPress sẽ giống như chứng chỉ thanh toán.yoursite.com là một ứng dụng xử lý thẻ tín dụng được bảo mật. Nếu rò rỉ đầu tiên, thứ hai bị xâm phạm.
GomoX

0

Bạn sẽ cần một chứng chỉ riêng cho mỗi tên miền phụ hoặc bạn có thể mua chứng chỉ ký tự đại diện ( *.domain.example) - đắt hơn, nhưng sẽ hợp lý nếu bạn lưu trữ nhiều tên miền phụ.

Về IP, nó phụ thuộc vào cách bạn thiết lập máy chủ của mình. Bạn có thể sử dụng quy tắc tên máy chủ để phục vụ nhiều trang web từ cùng một IP hoặc sử dụng IP duy nhất cho mỗi trang. Có những ưu và nhược điểm cho cả hai phương pháp.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.