Các trình duyệt có một danh sách các chứng chỉ "cơ quan chứng nhận" (CA) đáng tin cậy. Nếu chứng chỉ của máy chủ được ký bởi một trong những chứng chỉ CA đó và được tạo đúng, bạn sẽ không nhận được cảnh báo SSL.
Nhiều trình duyệt xuất xưởng với nhiều chứng chỉ CA phổ biến như Verisign, Thawte, v.v. Hầu hết các trình duyệt cho phép bạn nhập CA mới vào danh sách CA đáng tin cậy này.
Giống như tạo chứng chỉ máy chủ tự ký của riêng bạn, bạn có thể tạo chứng chỉ CA tự ký. Sau đó, bạn có thể sử dụng để ký chứng chỉ máy chủ của bạn. Nếu CA của bạn không được cung cấp bởi một công ty nổi tiếng, thì đó sẽ không phải là do bạn tạo ra, nó sẽ phải được nhập rõ ràng ở phía máy chủ.
Tôi đã từng xca
làm điều này trước đây. Nó có các mẫu cho CA và máy chủ HTTP. Thủ tục là thế này:
- Tạo khóa riêng cho CA của bạn
- Tạo CA tự ký bằng khóa này bằng mẫu "CA"
- Tạo khóa riêng cho máy chủ proxy của bạn
- Tạo một "yêu cầu ký chứng chỉ" (CSR) bằng khóa thứ hai, tham chiếu CA bạn vừa thực hiện.
- "Ký" CSR và bạn sẽ có chứng chỉ máy chủ proxy, tham chiếu CA của riêng bạn.
Sau đó, bạn sẽ cần xuất (dưới dạng tệp nếu sử dụng xca
) chứng chỉ CA (nhưng tất nhiên không bao gồm khóa riêng). A .pem
sẽ được tạo nhưng bạn có thể thay đổi phần mở rộng thành .crt
. Khi người dùng nhấp vào đó, nó sẽ được cung cấp để cài đặt trên Firefox và Internet Explorer và có thể các trình duyệt chính khác. Theo như cài đặt tự động của .crt này, bạn có thể:
- sử dụng chính sách nhóm trên IE
- hướng người dùng đến trang giới thiệu yêu cầu họ tải xuống / cài đặt .crt nếu họ muốn tránh cảnh báo.
Sau đó, bạn có thể sử dụng các chức năng xuất trên chứng chỉ máy chủ HTTP (xuất cả khóa riêng và chứng chỉ cho phía máy chủ) để đặt trên máy chủ proxy của bạn.
/etc/ssl/certs/ssl-cert-snakeoil.pem
(đây là những gì gói Debianssl-cert
tạo cho bạn). Chúng tôi sao chép nó vào máy chủ A và gọi nó/etc/ssl/certs/host-B.pem
(vì máy chủ này có thể đã có assl-cert-snakeoil.pem
). Rồi chúng tôi chạyln -s /etc/ssl/certs/host-B.pem $(openssl x509 -noout -hash -in /etc/ssl/certs/host-B.pem)
.