자체 서명 된 SSL 인증서를 갱신 할 수 있습니까? 어떻게?


18

SSL 인증서를 처음 접했고 HTTPS를 위해 사용하는 자체 서명 된 인증서를 갱신하여 사이트의 모든 클라이언트가 "예외 허용"프로세스를 거치지 않고 만료 날짜를 연장 할 수 있는지 알고 싶습니다. 사이트를 처음 방문 할 때 또는 처음부터 새로 작성된 자체 서명 인증서를 발행 할 때 수행해야합니다.

내가 찾은 다음 튜토리얼 방법을 사용하여 자체 서명 인증서를 갱신하는 방법을 보여주는를 openssl하지만, 내가 사용 할 수 없습니다 그와 같은 브라우저가 자동으로 그 "신뢰할 수없는 사이트"를 보여주는 화면을 경고없이 그것을 받아들이는 :

  # cd /etc/apache2/ssl
  # openssl genrsa -out togaware.com.key 1024
  # chmod 600 togaware.com.key
  # openssl req -new -key togaware.com.key -out togaware.com.csr
    AU
    ACT
    Canberra
    Togaware
    Data Mining
    Kayon Toga
    Kayon.Toga@togaware.com
    (no challenge password)
  # openssl x509 -req -days 365 -in togaware.com.csr \
            -signkey togaware.com.key -out togaware.com.crt
  # mv apache.pem apache.pem.old
  # cp togaware.com.key apache.pem 
  # cat togaware.com.crt >> apache.pem 
  # chmod 600 apache.pem
  # wajig restart apache2

내 설정은 이 답변에 설명 된 것과 거의 같 으며 PEM 파일 대신 CRT 및 KEY 파일 ( 이 자습서의 )을 사용하고 있으므로 내 경우에 적용하려고 할 때 무언가를 엉망으로 만들 수 있습니다.

그런 다음 자체 서명 인증서를 갱신하는 것이 완전히 불가능하다는 제안을 한 많은 포럼 항목을 찾았으며 처음부터 새 인증서를 만들어야합니다.

도움을 주시면 감사하겠습니다. 또는이 질문이 /server// 또는 /superuser//에 더 적합 합니까?


7
이 질문을 하향 조정하기보다는 개선 할 사항을 구체적으로 알려주십시오.
FriendFX

답변:


23

자체 서명 된 인증서는 직접 신뢰를 통해서만 신뢰할 수 있습니다 . 즉 Firefox와 같은 웹 브라우저가 "예외 허용"프로세스로 표시됩니다. 마지막 비트까지 매우 구체적인 인증서 하나가 "신뢰할 수있는"것으로 선언됩니다. 이 모델을 종료하지 않고 인증서, 특히 인증서에 포함 된 데이터의 일부인 만료 날짜를 변경할 수 없습니다.

갱신이 일종의 가족적인 것으로 상상할 수 있습니다. 인증서가 "갱신"되면 실제로는 더 어린 형제로 대체됩니다. 클라이언트는 이전 인증서와 동일한 상위 항목을 공유하므로 새 인증서를 자동으로 수락합니다. 자체 서명 된 인증서는 본질적인 고아입니다. 조상이 없습니다. 따라서 형제 자매 및 자동 변속기가 없습니다.

(이 조상을 제외하고, 갱신 새로운 인증서를 생성하는 것입니다. 인증서는 불변 입니다. "갱신"은 기존 인증서와 새로운 인증서 간의 관계를 생각하는 방법입니다.)

자동 갱신을 수행하려면 자체 서명 된 CA 인증서 가 필요합니다 . 해당 CA에서 서버에 대한 인증서를 내보내고 클라이언트에게 해당 CA를 신뢰하도록 요청합니다. 물론 이것은 많은 것을 요구하고 있습니다. 신뢰하는 CA는 전체 인터넷을 눈으로 속일 수있는 CA입니다. 기본적으로이 솔루션은 고유 한 CA를 작성하고 유지 보수하는 것입니다. 이는 책임과 일부 작업입니다.


다음에 자체 서명 된 인증서를 생성 할 때는 오래 지속해야합니다. 인증서는 대부분 해지 작업을하기 위해 만료됩니다 (인증서 만료로 인해 CRL이 무기한으로 커지는 것을 방지합니다). 자체 서명 된 인증서의 경우 해지가 없으므로 인증서를 20 년 동안 유효하게 만들 수 있습니다. 또는 2000 년 동안 그 문제에 대해 ( 2038 년 문제 는 클라이언트 소프트웨어에 따라 어느 시점에 나타날 수 있습니다).


광범위한 답변에 감사드립니다! 나는 그것이 연결된 튜토리얼 과 관련하여 그것이 무엇을 의미하는지 궁금 합니다. 자체 서명 된 CA 인증서에만 해당됩니까? 방금 이전 키에서 개인 키를 읽고 새 "호환"키를 만드는 방법이 있었으면 좋겠다고 생각했습니다. "유아". 그건 그렇고 좋은 비유입니다!
FriendFX

@FriendFX-당신이 원하는 것은 불가능합니다. Tom은 renweal이 새 인증서를 생성하는 것이 맞습니다.
Ramhound

@Ramhound-이해합니다. 유일한 공개 질문은 그 튜토리얼의 목적은 무엇입니까?
FriendFX

@FriendFX-블로그를 가지고 있다고해서 인터넷상의 임의의 사람이 작성한 것입니다. 저자는 단순히 튜토리얼이 새로운 인증서를 만들 것이라고 설명하지 않습니다
Ramhound

3
@FriendFX 예, 해당 자습서는 자체 서명 된 CA 인증서에서만 작동합니다. 동일한 키 쌍과 제목을 사용하는 경우 발급 된 인증서의 유효한 발급자로 각각 만족하는 여러 개의 CA 인증서를 만들 수 있습니다. 이러한 인증서는 "상호 체인"이라고하는 다른 상위 CA에서 발급 할 수도 있습니다.
Calrion

3

짧은 대답 : 아니요.

자체 서명 인증서를 신뢰하는 것은 해당 여권을 발급하는 국가 대신 개별 여권을 신뢰하는 것과 같습니다. 새 여권을 받으면 이전 여권을 신뢰 한 사람이 자동으로 신뢰하지 않습니다. 특히 여권 번호, 날짜 등의 속성이 다른 것이기 때문입니다. 기존 여권을 명시 적으로 신뢰하는 사람이 새 여권을 신뢰할 수 있음을 알 수있는 근거는 없습니다.


0

자체 서명 인증서를 사용하는 경우 (Windows에서 xca를 사용하는 것이 좋습니다) 만료 날짜를 7999-12-31 (UTC의 최대 시간)로 설정하고 초기 날짜를 1970-01-01 ( PC에서 잘못 구성된 시간 / 날짜와의 호환성)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.