![기존 개인 키 및 CSR에서 자체 서명된 인증서를 갱신합니다.](https://linux55.com/image/174853/%EA%B8%B0%EC%A1%B4%20%EA%B0%9C%EC%9D%B8%20%ED%82%A4%20%EB%B0%8F%20CSR%EC%97%90%EC%84%9C%20%EC%9E%90%EC%B2%B4%20%EC%84%9C%EB%AA%85%EB%90%9C%20%EC%9D%B8%EC%A6%9D%EC%84%9C%EB%A5%BC%20%EA%B0%B1%EC%8B%A0%ED%95%A9%EB%8B%88%EB%8B%A4..png)
Postgres 인스턴스용으로 이 파일을 생성했습니다.
-rw-r--r-- 1 root root 2733 Jun 8 20:37 server-cert.pem
-rw-r--r-- 1 root root 3322 Jun 8 20:37 server.csr
-rw------- 1 root root 1704 Jun 8 20:37 server-key.pem
인증서가 만료되었으며 동일한 개인 키와 CSR을 사용하여 제목을 업데이트해야 합니다.
작동이 안 되네요. 누가 도와줄 수 있나요? 감사해요
고쳐 쓰다 오류가 있는 것 같은데 CA 인증서도 업데이트해야 합니다.
-rw-r--r-- 1 root root 2895 Jun 8 20:37 ca-cert.pem
-rw-r--r-- 1 root root 41 Jun 8 20:37 ca-cert.srl
-rw-r--r-- 1 root root 3350 Jun 8 20:37 ca.csr
-rw------- 1 root root 1704 Jun 8 20:37 ca-key.pem
-rw-r--r-- 1 root root 2733 Jun 8 20:37 client-cert.pem
-rw-r--r-- 1 root root 3322 Jun 8 20:37 client.csr
-rw------- 1 root root 1704 Jun 8 20:37 client-key.pem
-rw-r--r-- 1 root root 2733 Jun 8 20:37 server-cert.pem
-rw-r--r-- 1 root root 3322 Jun 8 20:37 server.csr
-rw------- 1 root root 1704 Jun 8 20:37 server-key.pem
root@SQLECOFIL1:~/cert_bkp# openssl x509 -CA server-cert.pem -CAkey server-key.pem -set_serial 256 -days 365 -in server-cert.pem -out new-server-cert.pem
Getting CA Private Key
/CN=pg-server
error with certificate - error 20 at depth 0
unable to get local issuer certificate
/CN=pg-server
error with certificate - error 21 at depth 0
unable to verify the first certificate
*업데이트 2*
-rw-r--r-- 1 postgres postgres 993 Jun 10 20:52 new-server-cert.pem
-rw-r--r-- 1 postgres postgres 2733 Jun 8 18:36 server-cert.pem
-rw------- 1 postgres postgres 1704 Jun 8 18:36 server-key.pem
root@SQLECOFIL1:/etc/ssl/postgresql# openssl x509 -signkey server-key.pem -set_serial 256 -days 365 -in server-cert.pem -out new-server-cert.pem
Getting Private key
new-server-cert.pem 파일이 확인되었지만 Postgres 서버에 연결할 수 없습니다(확인 실패).
답변1
현재(또는 만료된) 인증서에 키 사용 제한이 있는 경우 이를 CA로 사용하여 새 인증서에 서명할 수 없습니다. 대신 개인 키와 원본 인증서를 사용하여 새로운 자체 서명 인증서를 생성할 수 있습니다.
openssl x509 -signkey server-key.pem -set_serial 256 -days 365 -in server-cert.pem -out new-server-cert.pem
키를 사용 하는 경우 certSign
(또는 키를 사용하지 않는 경우) 다음을 사용하여 인증서와 키로 서명할 수도 있습니다.
openssl x509 -CA server-cert.pem -CAkey server-key.pem -set_serial 256 -days 365 -in server-cert.pem -out new-server-cert.pem
이 두 가지 예에서:
-days 365
새 인증서의 유효 기간(이 예에서는 365일)을 설정합니다 .
새 일련번호를 설정하세요 -set_serial 256
(이 경우 256).
시퀀스 번호를 직접 설정하는 또 다른 방법은 OpenSSL이 임의의 시퀀스 번호를 생성하도록 하는 -CAcreateserial
대신 OpenSSL을 사용 -set_serial <n>
하여 임의의 시퀀스 번호를 생성하는 것입니다.
필요에 따라 이를 조정할 수 있지만 사용해야 합니다. 그렇지 않으면 일련 번호가 없거나 0초 동안 유효한 인증서가 생성됩니다.