IIS 7.5 Tạo chứng chỉ tự ký với ngày xác thực hơn một năm


15

Tôi đang tạo chứng chỉ SSL tự ký trong IIS 7.5 để sử dụng nội bộ. Vấn đề tôi có là tôi muốn tạo ra chúng để chúng tồn tại trong 10 năm vì nó chỉ là một môi trường dev.

Tôi không thể thấy tùy chọn trong IIS 7.5 nơi bạn có thể chỉ định thời gian chứng chỉ hợp lệ. Theo mặc định, nó tạo ra các chứng chỉ hết hạn sau 1 năm.

Có cách nào tôi có thể thay đổi điều này để nó tạo ra chúng để chúng có giá trị trong 10 năm không?

Câu trả lời:


13

Bạn có thể làm điều này bằng cách sử dụng SelfSSL.execông cụ đi kèm với Bộ tài nguyên IIS6. Bạn có thể lấy bộ tài nguyên từ đây:

http://www.microsoft.com/doad/en/details.aspx?displaylang=en&id=17275

Trình cài đặt chỉ giải nén các công cụ vào một thư mục và không can thiệp vào bất kỳ cài đặt máy nào của bạn. Tùy chọn cài đặt tùy chỉnh cũng cho phép bạn chọn công cụ nào bạn muốn cài đặt và vào một thư mục bạn chọn.

Mở một dòng lệnh Administrator và thay đổi thư mục đến nơi bạn SelfSSLđã cài đặt công cụ dòng lệnh.

Để tạo chứng chỉ SSL tự ký mới hết hạn sau 10 năm, hãy thực hiện như sau:

selfssl /n:cn=www.mydomain.com / v: 3650 / s: 8 / k: 2048

Điều này sẽ tạo ra một ssl trong đó:

  • /n:cn=www.mydomain.com- SSL là dành cho www.mydomain.com. Các cn=(common name) là rất quan trọng vì vậy đừng bỏ lỡ nó ra.

  • /v:3650 - số ngày chứng chỉ có giá trị trong trường hợp này là mười năm

  • /s:8 - cài đặt chứng chỉ trong id trang web 8

  • /k:2048 - sử dụng độ dài 2048 bit.

Thật không may, không có cách nào để xuất SSL trực tiếp vào một tệp, bạn phải cài đặt nó vào một trang web. Tuy nhiên, tin tốt là chứng chỉ có thể xuất khẩu được.

Nếu bạn muốn cảnh báo về việc SSL không được tin cậy khi duyệt đến các trang web sử dụng SSL tự ký của bạn sẽ biến mất thì bạn cũng có thể khắc phục điều đó:

  1. Xuất SSL tự ký thành một .pfxtệp (bạn cần đặt mật khẩu, đảm bảo bạn nhớ nó)
  2. Khởi chạy (từ dòng lệnh hoặc Bắt đầu -> Chạy) mmc certmgr.msc
  3. Duyệt đến Trusted Root Certificate Authorities -> Certificatesvà nhấp chuột phải để đến Import...tùy chọn:

    nhập mô tả hình ảnh ở đây

  4. Làm theo trình hướng dẫn và chỉ định .pfxnhập sau đó nhấp vào tiếp theo (bạn sẽ cần mật khẩu bạn đã đặt ở bước 1):

    nhập mô tả hình ảnh ở đây

  5. Ở bước hướng dẫn tiếp theo, chúng ta cần chọn cửa hàng nào sẽ sử dụng. Nhấn vào Browse...nút sẽ mở Select Certificate Storecửa sổ. Chúng tôi cần phải xem các cửa hàng thực tế để đảm bảo có một đánh dấu vào Show physical stores:

    nhập mô tả hình ảnh ở đây

    Mở rộng Trusted Root Certificate Authoritiesvà chọn Local Computertheo chụp màn hình ở trên, sau đó nhấp OKvà sau đóNext >

  6. Nhấp vào Finishnút trên bước hướng dẫn cuối cùng và nếu tất cả đều tốt, bạn sẽ thấy:

    nhập mô tả hình ảnh ở đây

Hãy cẩn thận và Gotchas:

  • SelfSSL có thể cần các thành phần Tương thích Quản lý IIS6 được cài đặt. Tôi không thể biết vì các máy của riêng tôi đã được cài đặt và không có VM để kiểm tra lý thuyết này bằng cách loại bỏ chúng.

  • Cấp SSL cn=www.mydomain.comvà không cn=mydomain.comnếu bạn muốn có thể thêm SSL vào cửa hàng ủy quyền chứng chỉ gốc đáng tin cậy.


Xin chào, cảm ơn rất nhiều vì sự giúp đỡ của bạn. Chắc chắn đã hỗ trợ những gì tôi cần làm. Chúc mừng Jeff

Tôi không thể tìm thấy liên kết tải xuống hoạt động cho Bộ tài nguyên IIS6. Bất cứ ai biết nó có thể được tìm thấy ở đâu?
John Bubriski

@JohnBubriski - grr, MS thật sự rất khó chịu. Nếu bạn có thể đợi đến thứ Sáu, tôi có thể dán một bản sao ở đâu đó.
Kev

Trên thực tế, bây giờ tôi tốt, tôi đã tìm ra một cách. Tôi sẽ đăng câu trả lời ...
John Bubriski

0

Theo tôi hiểu, vấn đề với IIS 7.x là bạn không thể đặt tiêu đề máy chủ cho liên kết SSL.

Sử dụng tiện ích dòng lệnh appcmd, bạn sẽ có thể làm điều này. Các trang web có thể sử dụng cùng một chứng chỉ nhưng sẽ có các tiêu đề máy chủ khác nhau.

Nếu bạn chạy 2 lệnh sau với dữ liệu của mình, nó sẽ cấu hình các tiêu đề máy chủ.

c:\Windows\System32\inetsrv>appcmd set site /site.name:"local.yourdomain.com" /+bindings.[protocol='https',bindingInformation='*:443:local.yourdomain.com']

c:\Windows\System32\inetsrv>appcmd set site /site.name:"local.dev.yourdomain.com" /+bindings.[protocol='https',bindingInformation='*:443:local.dev.yourdomain.com']

Thật không may, có một số thứ khác bạn cần làm để làm cho nó hoạt động, nhưng tôi không chắc chính xác là gì. Tôi biết tôi đã thực hiện một số cài đặt lại IIS và tôi đã chọn lại các chứng chỉ SSL, nhưng tôi không chắc chắn về thứ tự thực hiện điều đó. Nhưng tôi biết rằng tôi đã không làm bất cứ điều gì 'ưa thích' như sử dụng một công cụ khác.


John, đó phải là nó miễn là chứng chỉ được tải trên máy chủ. Bạn có thể phải chọn chứng chỉ SSL để sử dụng cho từng trang web.
Brent YAMst

Vâng, tôi tin rằng tôi đã có một chứng chỉ tự ký đã được cấu hình cho 2 trang web.
John Bubriski

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.