Tôi muốn thiết lập Phản hồi OCSP của riêng tôi (chỉ dành cho mục đích thử nghiệm). Điều này đòi hỏi tôi phải có chứng chỉ gốc và một vài chứng chỉ được tạo từ nó.
Tôi đã quản lý để tạo chứng chỉ tự ký bằng openssl. Tôi muốn sử dụng nó như chứng chỉ gốc. Bước tiếp theo sẽ là tạo các chứng chỉ dẫn xuất. Tôi dường như không thể tìm thấy tài liệu về cách làm điều này tuy nhiên. Có ai biết nơi tôi có thể tìm thấy thông tin này?
Chỉnh sửa
Nhìn lại, câu hỏi của tôi vẫn chưa được trả lời hoàn toàn. Để làm rõ vấn đề tôi sẽ đại diện cho chuỗi chứng chỉ của mình như thế này:
ROOT -> A -> B -> C -> ...
Tôi hiện có thể tạo chứng chỉ ROOT và A, nhưng tôi chưa tìm ra cách tạo chuỗi dài hơn.
Lệnh của tôi để tạo chứng chỉ gốc là:
openssl req -new -newkey rsa:1024 -nodes -out ca.csr -keyout ca.key
openssl x509 -trustout -signkey ca.key -days 365 -req -in ca.csr -out ca.pem
Chứng chỉ A được tạo như thế này:
openssl genrsa -out client.key 1024
openssl req -new -key client.key -out client.csr
openssl ca -in client.csr -out client.cer
Lệnh này hoàn toàn phụ thuộc vào chứng chỉ gốc mà nó tìm thấy thông tin bắt buộc trong tệp cấu hình openssl.
Chứng chỉ B tuy nhiên chỉ phải dựa vào A, không được đăng ký trong tệp cấu hình, vì vậy lệnh trước đó sẽ không hoạt động ở đây.
Tôi nên sử dụng dòng lệnh nào để tạo chứng chỉ B và hơn thế nữa?
Chỉnh sửa
Tôi tìm thấy câu trả lời trong bài viết này . Chứng chỉ B (chuỗi A -> B) có thể được tạo bằng hai lệnh sau:
# Create a certificate request
openssl req -new -keyout B.key -out B.request -days 365
# Create and sign the certificate
openssl ca -policy policy_anything -keyfile A.key -cert A.pem -out B.pem -infiles B.request
Tôi cũng đã thay đổi tệp openssl.cnf:
[ usr_cert ]
basicConstraints=CA:TRUE # prev value was FALSE
Cách tiếp cận này dường như đang hoạt động tốt.