Tôi thiếu một số điều cơ bản và rõ ràng về việc ký CSR của khách hàng với lệnh openssl.Làm thế nào để ký CSR của khách hàng với openssl?
Tôi có (mô phỏng) hai tổ chức, một là tổ chức của tổ chức phát hành chứng chỉ (tồn tại ở California) và tổ chức khác là tổ chức khách hàng ở trạng thái WA.
Tôi đã tạo cơ quan cấp chứng chỉ trên hệ thống Linux có lệnh openssl theo các bước sau. http://www.freebsdmadeeasy.com/tutorials/freebsd/create-a-ca-with-openssl.php
Tôi hiện có hai tệp 1. cakey.pem chứa khóa cá nhân của CA. Riêng tư này cũng được liên kết với cụm mật khẩu. 2. cacert.pem chứa chứng chỉ tự ký của CA
Tiếp theo, tôi muốn ký tất cả CSR từ khách hàng. Một khách hàng từ tiểu bang Washington gửi cho tôi một tập tin client-csr.pem. Tôi đang đọc trang người đàn ông này về việc ký CSR và các ví dụ ở cuối. http://www.openssl.org/docs/apps/ca.html
Lệnh tôi đang thử và thông báo lỗi như sau: Tôi chạy các lệnh này trên hệ thống của CA, cùng một hệ thống mà tôi đã tạo cakey.pem (khóa riêng của CA) và cacert.pem (CA's tự ký giấy chứng nhận)
$ openssl ca -in demoCA/csrs/client-csr.pem -out client-cert.pem
Using configuration from /usr/lib/ssl/openssl.cnf
Enter pass phrase for ./demoCA/private/cakey.pem:
Check that the request matches the signature
Signature ok
The stateOrProvinceName field needed to be the same in the
CA certificate (California) and the request (WA)
câu hỏi đặt ra là tại sao phải tên nhà nước là như nhau cho cả CA-certificate và client-CSR.
khách hàng là KHÔNG trong "California" và vì thế khi họ tạo ra CSR, họ đặt tên tiểu bang của riêng mình (WA) Là một cơ quan cấp chứng chỉ, tôi đã xác minh rằng khách hàng thực sự ở dạng WA và tệp CSR thực sự đến từ chúng. Tôi muốn ký CSR này và gửi lại chứng chỉ cho khách hàng.
Vui lòng kiểm tra tệp cấu hình của bạn. Điều này phải được thực thi bởi cấu hình, không phải bởi OpenSSL và X.509. – doptimusprime