mod_ssl SSLCACertertPath Sử dụng đúng cách hoặc cách tốt nhất để xử lý nhiều CA chứng chỉ ứng dụng khách được chấp nhận


9

Tôi đang cố gắng sử dụng chỉ thị mod_proxy SSLCACertertPath, nhưng tôi hơi bối rối về cách sử dụng nó đúng cách.

Dưới đây là hai liên kết để giải thích các chỉ thị SSLCACertificatePath:
http://httpd.apache.org/docs/2.0/mod/mod_ssl.html#sslcacertificatepath
http://www.modssl.org/docs/2.8/ssl_reference.html#ToC13

Tôi không tích cực về cách tạo các liên kết tượng trưng băm. Liên kết thứ hai tuyên bố sử dụng tệp tạo apache, nhưng tôi không biết chính xác những gì được nói ở đó.

Bất kỳ hướng dẫn thân thiện sẽ được đánh giá rất cao.

Cảm ơn bạn đã dành thời gian.

CẬP NHẬT

Mục tiêu của câu hỏi của tôi là tìm ra cách xử lý nhiều CA để xác nhận Chứng chỉ ứng dụng khách của người dùng cuối. Tôi đã không nhận ra rằng nhiều chứng chỉ pem có thể được sử dụng trong một tệp, trong trường hợp của tôi rõ ràng là cách đúng đắn để tiến về phía trước.

Câu trả lời:


5

Nếu bạn không rõ ràng về cách tạo các liên kết tượng trưng có tên băm, thì gợi ý của tôi không phải là sử dụng CACertificatePath, mà là sử dụng CACertificateFilethay thế. (Trên thực tế đây là đề xuất của tôi nói chung: duy trì đúng cách CACertificateFile có thể sẽ làm việc nhiều hơn một chút nếu bạn có nhiều chứng chỉ CA thay đổi thường xuyên, nhưng có lẽ bạn không nên có nhiều Chứng chỉ CA và dù sao họ cũng không nên thay đổi nhiều .. .) Ngoài ra, có vẻ như tham chiếu Makefile đã biến mất khỏi tarball phân phối của Apache (và sự thiếu công khai nói chung có thể cho biết có bao nhiêu người đang sử dụng phương thức lưu trữ chứng chỉ "đường dẫn" :).

Tất cả những gì đã nói, nếu bạn vẫn muốn làm điều này, bạn có thể tiếp tục theo những gì DerfK đã nói (lấy Makefile cũ hoặc viết script / makefile của riêng bạn chạy openssl x509 -noout -hashvới tất cả các tệp chứng chỉ của bạn và tạo các liên kết tượng trưng có tên thích hợp).


Cảm ơn bạn vì câu trả lời. Thật không may, chúng tôi sẽ có nhiều certs CA và họ sẽ thay đổi. Bạn có biết làm thế nào để có nhiều chứng chỉ trong một tập tin? Có đơn giản như cắt và dán chứng chỉ từ một tệp vào một tệp khác có tất cả các chứng chỉ không?
hooknc

1
Trên thực tế, nó đơn giản như cắt và dán - đã từng có một ca-bundle.crtmod_ssl được bao gồm trong Apache 1.x ngày (và vẫn có sẵn tại certifie.com/ca-bundle/ca-bundle.crt.txt ). Vì sự tỉnh táo của bạn, tôi sẽ nhận xét tệp để bạn có thể cho biết khối chứng chỉ thuộc về CA nào nếu / khi bạn cần thay đổi chúng sau này.
voretaq7

Tin tức tuyệt vời. Chúng tôi rất có thể sẽ tiến lên phía trước với giải pháp này. May mắn thay, người khác sẽ chịu trách nhiệm tạo tệp .crt đó. Cảm ơn bạn một lần nữa cho thời gian của bạn.
hooknc

4

Tôi tìm thấy một lỗi mở liên quan đến điều này. Khác với việc tải xuống bản phát hành modssl.org cũ được đề cập trong lỗi và lấy Makefile từ nó, có vẻ như bạn có thể nhận được giá trị của hàm băm từ openssl x509 -in foo.crt -noout -hashđó mặc dù không rõ phần ".N" đề cập đến điều gì (có lẽ đây là để làm gì va chạm băm (ví dụ: chứng chỉ đầu tiên với hàm băm 12345678 có liên kết tượng trưng 12345678.1 chỉ đến nó, chứng chỉ thứ hai có cùng hàm băm sử dụng .2? Hoặc có thể bắt đầu bằng .0?)

Nếu bạn nhận được Makefile.crttệp từ modssl cũ, tôi tin rằng những gì bạn sẽ làm là thả nó vào thư mục với tất cả các chứng chỉ của bạn, sau đó chạy make -f Makefile.crttrong thư mục đó.


Cảm ơn bạn vì câu trả lời. Chỉ vào báo cáo lỗi đó thực sự có ích. Đây là liên kết trực tiếp để tải xuống tài nguyên được đề cập trong lỗi: modssl.org/source/mod_ssl-2.8.31-1.3.41.tar.gz Tôi đã xem Makefile.crt và tôi tin rằng bạn đã đúng về sơ đồ đánh số, nhưng tôi không rành lắm về các tập lệnh * nix. <hash> .1, <hash> .2, <hash> .3, v.v ... Tôi đã thử sử dụng các lệnh bạn đề xuất và sau đó liên kết tượng trưng có tên là băm và mọi thứ dường như hoạt động. Tôi sẽ phải thử với nhiều tệp CA ngay bây giờ.
hooknc

1
Việc đánh số không bắt đầu bằng .0.
Raman

1
Đây là phần Makefileđã được trích xuất từ ​​tar.gz: gist.github.com/rocketraman/9228a42b78e094b3c2218f6e57844ee0
Raman

Chạy make -f Makefile.crttrong thư mục có chứng chỉ cho Makefile.crt ... Skippedlỗi.
Nghiêm túc
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.