Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 3개 있습니다.)
인증서 갱신 오류 - The request contains no certificate template information.

테스트 서버의 이벤트 로그에 며칠 전부터 이상한 경고성 로그가 발견되었습니다.

Log Name:      Application
Source:        Microsoft-Windows-CertificateServicesClient-AutoEnrollment
Date:          3/30/2011 10:54:17 AM
Event ID:      64
Task Category: None
Level:         Warning
Keywords:      Classic
User:          N/A
Computer:      adserverr2.TestAD.kr
Description:
Certificate for local system with Thumbprint ...[생략]... is about to expire or already expired.

지정된 "Thumbprint"의 인증서는 AD 인증 서버로부터 발급받은 것으로 실제로 만료 시간이 올해 5월로 다가오고 있었습니다.

이를 해결하기 위해 "인증서 관리자" MMC 콘솔을 실행하고, 갱신을 다음과 같이 "Advanced Options" / "Renew This Certificate with the Same Key..." 메뉴를 이용해서 실행했습니다.

how_to_renew_cert_1.png

오호, 그런데 다음과 같은 에러가 발생합니다.

how_to_renew_cert_2.png

"
Enrollment error
The request contains no certificate template information.
"


검색을 해봐도 이에 관해서는 딱히 적당한 해결책이 나오지 않았습니다. 할 수 없이, 알고 있는 방법 중에서 차선책으로 CA 측에서 제공하는 웹 인터페이스를 이용해 보았습니다.

이를 위해, 기존 만료되어가는 인증서를 "Base-64 encoded X.509" 포맷으로 내보낸 후, "http://localhost/certsrv/default.asp" 페이지를 방문, "Request a certificate" / "advanced certificate request" / "Submit a certificate request by using a base-64-encoded CMC or PKCS #10 file, or submit a renewal request by using a base-64-encoded PKCS #7 file." 링크까지 연결해서 다음과 같이 certrqxt.asp 페이지에서 제출해 보았습니다.

how_to_renew_cert_3.png

사실, 그렇게 하는 것이 올바른지도 모르겠지만 이것저것 아는 데로 시도해보는 수밖에 없었지요. 아쉽게도 결론은 다음과 같은 에러만 볼 수 있을 뿐이었습니다.

"
Your certificate request was denied.

Your Request Id is 0. The disposition message is "Error Parsing Request ASN1 bad tag value met. 0x8009310b (ASN: 267)".

Contact your administrator for further information.
"


더 이상 생각나는 것이 없어서, 일단 여기서 포기... 까지 하려고 했는데요. ^^




천천히, 다시 생각해 봤습니다. 음... 그러고 보니 이 인증서를 IIS 관리자에서 발급 신청했었던 것 같습니다. 옳거니... 그렇다면 갱신도 IIS 관리자에서 해봐야 겠다는 생각이 들었습니다. IIS 관리자를 실행하고, "Server Certificates" 기능에서 해당 인증서를 선택하고 "Renew..." 메뉴를 실행했습니다.

how_to_renew_cert_4.png

대화창이 뜨고 나서, 다음과 같이 "Renew an existing certificate"를 선택하고,

how_to_renew_cert_5.png

그러면 CA 서버 지정 화면이 나옵니다. 입력 형식이 "CertificateAuthorityName\ServerName"이라고 하는데, 일단 CA 이름은 "CA 관리자" MMC 콘솔을 실행한 경우 보이는 노드의 "w32.sysnet.pe.kr" 이름을 가져왔고, "ServerName" 영역은 CA 서버가 설치된 컴퓨터의 이름을 입력했습니다.

how_to_renew_cert_6.png

그렇게 해서 완료 버튼을 누르니 다음과 같이 요청이 전달되었으나 발행이 안되었다는 메시지를 볼 수 있습니다. (대화창의 아이콘과는 다르게 다행히 이것은 오류가 아닙니다.)

how_to_renew_cert_7.png

"
Renew an Existing Certificate

The certificate request was submitted to the online authority, but was not issued.
"


일단, "OK" 버튼을 누르고 "Cancel" 버튼을 눌러 "Renew an Existing Certificate" 대화창을 빠져나갑니다.

그런 후, CA 관리자에 가보면 다음과 같이 "Pending Requests"에 방금 전의 인증서 요청 항목이 있는 것을 확인할 수 있습니다.

how_to_renew_cert_8.png

보류 중인 해당 인증서를 선택하고 마우스 오른쪽 버튼을 눌러, "Issue"를 해주면, "Issued Certificates" 노드로 인증서가 이동합니다. 그렇게 해서 발급 완료된 인증서를 "Base-64 encoded X.509" 파일로 내보내기해서 저장해 둡니다.

다시 IIS 관리자로 돌아와서, 이번에는 만료가 가까워진 그 인증서를 선택하고 "Complete Certificate Request..." 메뉴를 실행합니다.

how_to_renew_cert_9.png

파일을 지정하는 대화창이 나오면, 위에서 저장해 둔 cer 파일을 지정하면, 인증서 갱신이 정상적으로 완료됩니다.



[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 6/27/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 106  107  108  109  110  111  112  113  114  115  [116]  117  118  119  120  ...
NoWriterDateCnt.TitleFile(s)
11025정성태8/12/201622337개발 환경 구성: 294. .NET Core 프로젝트에서 "Copy to Output Directory" 처리 [1]
11024정성태8/12/201621642오류 유형: 350. "nProtect GameMon" 실행 중에는 Visual Studio 디버깅이 안됩니다! [1]
11023정성태8/10/201623107개발 환경 구성: 293. Azure 구독 후 PaaS 서비스 만들어 보기
11022정성태8/10/201623792개발 환경 구성: 292. Azure Cloud Service 배포시 사용자 정의 작업을 추가하는 방법
11021정성태8/10/201620868오류 유형: 349. System.Runtime.Remoting.RemotingException - Type '..., ..., Version=..., Culture=neutral, PublicKeyToken=null' is not registered for activation [2]
11020정성태8/10/201623587VC++: 98. 원본과 대상 버퍼가 같은 경우 memcpy, wmemcpy 주의점
11019정성태8/10/201640262기타: 60. 도서: 시작하세요! C# 6.0 프로그래밍: 기본 문법부터 실전 예제까지 (2쇄 정오표)
11018정성태8/9/201624735.NET Framework: 600. 단일 메서드 내에서의 할당으로 알아보는 자바와 닷넷의 GC 차이점 [1]
11017정성태8/9/201626786웹: 33. HTTP 쿠키에 한글 값을 설정하는 방법
11016정성태8/7/201623982개발 환경 구성: 291. Windows Server Containers 소개
11015정성태8/7/201622255오류 유형: 348. Windows Server 2016 TP5에서 Windows Containers의 docker run 실행 시 encountered an error during Start failed in Win32
11014정성태8/6/201623048오류 유형: 347. Hyper-V Virtual Machine Management service Account does not have permission to open attachment
11013정성태8/6/201633789개발 환경 구성: 290. Windows 10에서 경험해 보는 Windows Containers와 docker [4]
11012정성태8/6/201623835오류 유형: 346. Windows 10에서 Windows Containers의 docker run 실행 시 encountered an error during CreateContainer failed in Win32 발생
11011정성태8/6/201625447기타: 59. outlook.live.com 메일 서비스의 아웃룩 POP3 설정하는 방법
11010정성태8/6/201622871기타: 58. Outlook에 설정한 SMTP/POP3(예:천리안 메일) 계정 암호를 잊어버린 경우
11009정성태8/3/201628060개발 환경 구성: 289. 2016-08-02부터 시작된 윈도우 10 1주년 업데이트에서 Bash Shell 사용 [8]
11008정성태8/1/201621834오류 유형: 345. 2의 30승 이상의 원소를 갖는 경우 버그가 발생하는 이진 검색(Binary Search) 코드
11007정성태8/1/201623556오류 유형: 344. RDP ActiveX 컨트롤로 특정 PC에 연결할 수 없을 때, 오류 상황을 해결하기 위한 팁파일 다운로드1
11006정성태7/22/201626565개발 환경 구성: 288. SSL 인증서를 Azure Cloud Service에 적용하는 방법
11005정성태7/22/201625208개발 환경 구성: 287. Let's Encrypt 인증서 업데이트 주기: 90일
11004정성태7/22/201620056오류 유형: 343. Invalid service definition or service configuration. Please see the Error List for more details.
11003정성태7/20/201627328VS.NET IDE: 110. Visual Studio 2015에서 .NET Core 응용 프로그램 개발 [1]
11002정성태7/20/201620825개발 환경 구성: 286. Microsoft Azure 서비스의 구독은 반드시 IE로!
11001정성태7/19/201631844.NET Framework: 599. .NET Core/SDK 설치 및 기본 사용법 [6]
11000정성태7/16/201620588오류 유형: 342. Microsoft Visual Studio 2010 Tools for Office Runtime (x86 and x64) 설치 시 오류
... 106  107  108  109  110  111  112  113  114  115  [116]  117  118  119  120  ...