Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

Automatic certificate enrollment for local system failed (0x800706ba) The RPC server is unavailable.

기존 DC(testad1)가 있는 Active Directory에 새롭게 DC(testad2)를 추가했는데, 인증서 관련 오류가 이벤트 로그에 남습니다.

Log Name:      Application
Source:        Microsoft-Windows-CertificateServicesClient-AutoEnrollment
Date:          2020-03-08 오후 3:20:28
Event ID:      6
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      testad2.testad.com
Description:
Automatic certificate enrollment for local system failed (0x800706ba) The RPC server is unavailable.

Log Name:      Application
Source:        Microsoft-Windows-CertificateServicesClient-CertEnroll
Date:          2020-03-08 오후 3:20:28
Event ID:      13
Task Category: None
Level:         Error
Keywords:      Classic
User:          SYSTEM
Computer:      testad2.testad.com
Description:
Certificate enrollment for Local system failed to enroll for a DomainController certificate with request ID N/A from TESTAD1.testad.com\testad-TESTAD1-CA (The RPC server is unavailable. 0x800706ba (WIN32: 1722 RPC_S_SERVER_UNAVAILABLE)).

그러니까, 신규 DC에서 기존 DC에 설치된 CA 서비스를 이용하지 못하고 있는 것입니다. 관련해서 검색해 보면, 이 과정을 명령행으로 테스트할 수 있는 방법이 나옵니다.

C:\temp> certutil -Ping -Config TESTAD1.testad.com\testad-TESTAD1-CA
Connecting to TESTAD1.testad.com\testad-TESTAD1-CA ...
Server "testad-TESTAD1-CA" ICertRequest2 interface is alive (31ms)
CertUtil: -ping command completed successfully.

아니.. 그런데 보는 바와 같이 잘 됩니다. ^^; 하지만, 이벤트 로그의 항목을 보면 "User: SYSTEM"이라고 되어 있는데, 혹시나 싶어 Local SYSTEM 계정으로 위의 명령어를 실행해 봤더니,

C:\WINDOWS\system32> c:\tools\psexec.exe -i -accepteula -s cmd.exe

PsExec v2.2 - Execute processes remotely
Copyright (C) 2001-2016 Mark Russinovich
Sysinternals - www.sysinternals.com

C:\WINDOWS\system32> certutil -Ping -Config TESTAD1.testad.com\testad-TESTAD1-CA
Connecting to TESTAD1.testad.com\testad-TESTAD1-CA ...
Server could not be reached: The RPC server is unavailable. 0x800706ba (WIN32: 1722 RPC_S_SERVER_UNAVAILABLE) -- (15ms)

CertUtil: -ping command FAILED: 0x800706ba (WIN32: 1722 RPC_S_SERVER_UNAVAILABLE)
CertUtil: The RPC server is unavailable.

정말 오류가 발생했습니다. 다행히 이에 관해 검색해 보면 답이 나옵니다. ^^

The RPC server is unavailable 0x800706BA
; https://theitbros.com/the-rpc-server-is-unavailable-0x800706ba/

cert_rpc_800706ba_1.png

그러니까, Active Directory에 있는 "Certificate Service DCOM Access" 그룹에 위의 오류가 발생한 컴퓨터를 등록해 주면 되는 것입니다. (위의 이미지에서는 아예 "Domain Computers" 전체를 추가했습니다.)

이후 보안 관련 변경 사항이 있음을 CA 서버에 알리고,

c:\temp> certutil -setreg SetupStatus -SETUP_DCOM_SECURITY_UPDATED_FLAG

"Active Directory Certificate Services(certsvc)" 서비스를 재시작하면,

net stop certsvc & net start certsvc

문제가 발생했던 서버에서 더 이상 "0x800706ba" 오류가 남지 않는 것을 확인할 수 있습니다.




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







[최초 등록일: ]
[최종 수정일: 3/11/2020]

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

비밀번호

댓글 작성자
 



2020-06-09 02시06분
[이종현] 안녕하세요

관련 글 잘 봤습니다.

다름아니라 한가지 질문드리고 싶은게 있는데 도메인 그룹에 추가한 이 후 꼭 CA 서버를 재시작 하는 작업이 필요한지 궁금해서 글남깁니다.

공식문서를 찾아보려해도 ㅜㅜ 검색능력이 미비하여 찾을 수 가 없네요.. 해당 경험 있으신지 질문 드립니다.
[guest]
2020-06-09 02시33분
(혹시나 싶어 덧붙이면 "CA 서버"를 재시작하는 것이 아니라 "CA 서비스"를 재시작하면 됩니다.) 원 글에서 서비스를 재시작하라고 되어 있어서 저 역시 그대로 따라하다 보니 서비스 재시작 없이 반영되는지는 테스트하지 못했습니다.
정성태
2020-06-16 10시30분
[이종현] 댓글 감사합니다! 좋은하루되셔요
[guest]

... 46  47  48  49  50  51  52  53  54  55  [56]  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
12224정성태6/11/202020119개발 환경 구성: 491. 윈도우에 OpenVPN 설치 - 서버 측 구성 [1]
12223정성태6/9/202014149.NET Framework: 908. C# - Source Generator 소개 [10]파일 다운로드2
12222정성태6/3/202010042VS.NET IDE: 146. error information: "CryptQueryObject" (-2147024893/0x80070003)
12221정성태6/3/20209824Windows: 170. 비어 있지 않은 디렉터리로 symbolic link(junction) 연결하는 방법
12220정성태6/3/202012232.NET Framework: 907. C# DLL로부터 TLB 및 C/C++ 헤더 파일(TLH)을 생성하는 방법
12219정성태6/1/202011368.NET Framework: 906. C# - lock (this), lock (typeof(...))를 사용하면 안 되는 이유파일 다운로드1
12218정성태5/27/202011282.NET Framework: 905. C# - DirectX 게임 클라이언트 실행 중 키보드 입력을 감지하는 방법 [3]
12217정성태5/24/20209767오류 유형: 615. Transaction count after EXECUTE indicates a mismatching number of BEGIN and COMMIT statements. Previous count = 0, current count = 1.
12216정성태5/15/202012897.NET Framework: 904. USB/IP PROJECT를 이용해 C#으로 USB Keyboard 가상 장치 만들기 [14]파일 다운로드1
12215정성태5/12/202017887개발 환경 구성: 490. C# - (Wireshark의) USBPcap을 이용한 USB 패킷 모니터링 [10]파일 다운로드1
12214정성태5/5/202010252개발 환경 구성: 489. 정식 인증서가 있는 경우 Device Driver 서명하는 방법 (2) - UEFI/SecureBoot [1]
12213정성태5/3/202011889개발 환경 구성: 488. (User-mode 코드로 가상 USB 장치를 만들 수 있는) USB/IP PROJECT 소개
12212정성태5/1/20209548개발 환경 구성: 487. UEFI / Secure Boot 상태인지 확인하는 방법
12211정성태4/27/202011883개발 환경 구성: 486. WSL에서 Makefile로 공개된 리눅스 환경의 C/C++ 소스 코드 빌드
12210정성태4/20/202012300.NET Framework: 903. .NET Framework의 Strong-named 어셈블리 바인딩 (1) - app.config을 이용한 바인딩 리디렉션 [1]파일 다운로드1
12209정성태4/13/202010393오류 유형: 614. 리눅스 환경에서 C/C++ 프로그램이 Segmentation fault 에러가 발생한 경우 (2)
12208정성태4/12/20209862Linux: 29. 리눅스 환경에서 C/C++ 프로그램이 Segmentation fault 에러가 발생한 경우
12207정성태4/2/20208847스크립트: 19. Windows PowerShell의 NonInteractive 모드
12206정성태4/2/202011097오류 유형: 613. 파일 잠금이 바로 안 풀린다면? - The process cannot access the file '...' because it is being used by another process.
12205정성태4/2/20208527스크립트: 18. Powershell에서는 cmd.exe의 명령어를 지원하진 않습니다.
12204정성태4/1/20208310스크립트: 17. Powershell 명령어에 ';' (semi-colon) 문자가 포함된 경우
12203정성태3/18/202010343오류 유형: 612. warning: 'C:\ProgramData/Git/config' has a dubious owner: '...'.
12202정성태3/18/202012964개발 환경 구성: 486. .NET Framework 프로젝트를 위한 GitLab CI/CD Runner 구성
12201정성태3/18/202010758오류 유형: 611. git-credential-manager.exe: Using credentials for username "Personal Access Token". [1]
12200정성태3/18/202011194VS.NET IDE: 145. NuGet + Github 라이브러리 디버깅 관련 옵션 3가지 - "Enable Just My Code" / "Enable Source Link support" / "Suppress JIT optimization on module load (Managed only)"
12199정성태3/17/20209047오류 유형: 610. C# - CodeDomProvider 사용 시 Unhandled Exception: System.IO.DirectoryNotFoundException: Could not find a part of the path '...\f2_6uod0.tmp'.
... 46  47  48  49  50  51  52  53  54  55  [56]  57  58  59  60  ...