CA 루트 키를 사용하여 CSR에 서명할 수 없습니다.

CA 루트 키를 사용하여 CSR에 서명할 수 없습니다.

CA와 서버가 모두 되어야 하는 상호 인증서 인증을 구현하고 인증서를 생성하고 사용자를 위해 서명하려고 합니다. 나는 이것을 팔로우하고 있다지도 시간웹의 복잡한 기사와 비교하면 이 기사는 다음 단계를 포함하는 매우 간단한 기사입니다.

  • 자신만의 인증 기관을 만드는 과정은 매우 간단합니다.

    1. 개인 키 생성
    2. 자체 서명된
    3. 각 워크스테이션에 루트 CA를 설치하십시오. // ????
  • 이 작업을 완료하면 HTTPS를 통해 관리하는 각 장치는 다음 단계에 따라 자체 인증서를 생성합니다.

    1. 장치에 대한 CSR 생성
    2. 루트 CA 키를 사용하여 CSR에 서명 /// 이 단계

루트 키를 생성합니다:

openssl genrsa -out rootCA.key 2048

이 인증서에 자체 서명하십시오.

openssl req -x509 -new -nodes -key rootCA.key -days 1024 -out rootCA.pem

인증서 만들기(장치당 한 번 수행):

openssl genrsa -out device.key 2048
openssl req -new -key device.key -out device.csr
openssl x509 -req -in device.csr -CA root.pem -CAkey root.key -CAcreateserial -out device.crt -days 500

마지막 명령에서 다음 오류가 발생했습니다.

Signature ok
subject=/C=XX/L=Default City/O=Default Company Ltd/CN=192.168.1.108
Error opening CA Certificate root.pem
3078969068:error:02001002:system library:fopen:No such file or directory:bss_file.c:355:fopen('root.pem','r')
3078969068:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:357:
unable to load certificate

root.pem이 같은 폴더에 있는데 왜 볼 수 없나요?

또한 처음 두 명령은 나에게 두 개의 파일을 제공했지만 root.key: root.pem브라우저 crt에 제공할 파일이 없습니다.

뭐가 문제 야?

답변1

인증서 이름을 확인하세요. 일관성이 없습니다( root.pem한 명령에서, rootCA.pem다른 명령에서).

root.pem이 문서에 설명된 대로 클라이언트 호스트에 이 파일을 설치할 수 있으며 이는 CA 인증서입니다. PEM 인증서 형식 중 하나이며 다른 형식도 있습니다. .crt일반 확장입니다. 원하는 경우 에서 인증서 이름을 바꿀 수 있습니다 root.pem .root.crt

관련 정보