openssl 명령을 사용하여 클라이언트의 CSR 서명에 대한 기본 사항과 확실한 내용을 놓치고 있습니다.openssl을 사용하여 클라이언트의 CSR에 서명하는 방법은 무엇입니까?
저는 (캘리포니아에 존재하는) 인증 기관의 조직과 WA 상태에있는 클라이언트 조직 인 두 조직을 가지고 있습니다.
다음 단계에 따라 openssl 명령을 사용하여 Linux 시스템에 인증 기관을 만들었습니다. http://www.freebsdmadeeasy.com/tutorials/freebsd/create-a-ca-with-openssl.php
지금은 CA의 개인 키를 포함 1 cakey.pem에 담겨 두 개의 파일이 있습니다. 이 개인은 또한 암호문과 연관되어 있습니다. 2. CA의 자체 서명 된 인증서가 포함 된 cacert.pem
다음으로 클라이언트에서 모든 CSR에 서명하고 싶습니다. 워싱턴주의 클라이언트가 client-csr.pem 파일을 보냅니다. 필자는 CSR에 서명하는 방법과 끝에있는 예제에 대해이 man 페이지를 읽었습니다. http://www.openssl.org/docs/apps/ca.html
내가 시도하는 명령과 오류 메시지는 다음과 같습니다. 나는이 시스템을 CA의 시스템에서 실행합니다.이 시스템은 cakey.pem (CA의 개인 키)과 cacert.pem (CA 자체 서명 인증서)
$ 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)
문제는
클라이언트는 "캘리포니아"에 있지 않습니다. 이유는 상태 이름은 CA 인증서 및 클라이언트 CSR 모두 동일해야하고 그래서 그들은 만들 때 CSR, 그들은 자신의 주 이름 (WA)을 붙였습니다. 인증 기관으로서 저는 클라이언트가 실제로 WA에 있고 CSR 파일이 실제로 왔음을 확인했습니다 그들. 이 CSR에 서명하고 인증서를 고객에게 돌려주고 싶습니다.
구성 파일을 확인하십시오. 이것은 OpenSSL 및 X.509가 아니라 구성에 의해 시행되어야합니다. – doptimusprime