모든 Windows 버전에는 Microsoft 웹 사이트에서 루트 인증서를 자동으로 업데이트하는 기능이 내장되어 있습니다. Microsoft 신뢰할 수 있는 루트 인증서 프로그램의 일부인 MSFT , 온라인 리포지토리에서 클라이언트 및 Windows 장치에 대한 신뢰할 수 있는 인증서 목록을 유지 관리하고 게시합니다. 인증 체인의 확인된 인증서가 이 프로그램에 참여하는 루트 CA를 참조하는 경우 시스템은 Windows Update 서버에서 이 루트 인증서를 자동으로 다운로드하여 신뢰할 수 있는 인증서에 추가합니다.
Windows는 일주일에 한 번 신뢰할 수 있는 루트 인증서 목록(CTL)을 업데이트합니다. Windows가 Windows 업데이트에 직접 액세스할 수 없는 경우 시스템은 루트 인증서를 업데이트할 수 없습니다. 따라서 사용자는 웹사이트(신뢰할 수 없는 CA에서 서명한 SSL 인증서 - "Chrome SSL 오류:이 사이트는 보안 연결을 제공할 수 없습니다"에 대한 문서 참조)를 탐색하거나 서명된 스크립트를 설치/실행할 때 문제가 발생할 수 있습니다. 및 앱.
이 기사에서는 연결이 끊긴(격리된) 네트워크 또는 인터넷에 직접 액세스할 수 없는 컴퓨터/서버에서 TrustedRootCA의 루트 인증서 목록을 수동으로 업데이트하는 방법을 알아보겠습니다.
내용:
- Windows 10 및 11에서 신뢰할 수 있는 루트 인증서 관리
- Windows에서 자동 루트 인증서 업데이트를 비활성화/활성화하는 방법은 무엇입니까?
- Certutil:Windows 업데이트에서 신뢰할 수 있는 루트 인증서 다운로드
- Windows의 인증서 신뢰 목록(STL)
- 격리된 환경에서 GPO를 통해 신뢰할 수 있는 루트 인증서 업데이트
- Windows 7에서 신뢰할 수 있는 루트 인증서를 업데이트하는 방법
- Rootsupd.exe 도구를 사용하여 Windows XP에서 루트 인증서 업데이트
Windows 10 및 11에서 신뢰할 수 있는 루트 인증서 관리
Windows 컴퓨터에서 신뢰할 수 있는 루트 인증서 목록을 보는 방법은 무엇입니까?
- Windows 11/10/8.1/7 또는 Windows Server 2022/2019/2016을 실행하는 컴퓨터의 루트 인증서 저장소를 열려면 mmc.exe 콘솔;
- 파일 선택 -> 스냅인 추가/제거 , 인증서 선택 (certmgr) 스냅인 목록 -> 추가;
- 로컬 컴퓨터 계정의 인증서를 관리할 것인지 선택하십시오.;
- 다음 -> 확인 -> 확인,
- 인증서 확장 노드 -> 신뢰할 수 있음 루트 인증 당국 저장합니다. 이 섹션에는 컴퓨터의 신뢰할 수 있는 루트 인증서 목록이 포함되어 있습니다.
mmc 콘솔에서 모든 인증서에 대한 정보를 보거나 신뢰할 수 있는 인증서에서 인증서를 제거할 수 있습니다.
PowerShell을 사용하여 만료 날짜와 함께 신뢰할 수 있는 루트 인증서 목록을 얻을 수도 있습니다.
Get-Childitem cert:\LocalMachine\root |format-list
만료되었거나 향후 60일 이내에 만료되는 인증서를 나열할 수 있습니다.
Get-ChildItem cert:\LocalMachine\root|Where {$_.NotAfter -lt (Get-Date).AddDays(60)}|select NotAfter, Subject
보안상의 이유로 Sigcheck를 사용하여 의심스러운 인증서와 해지된 인증서가 있는지 컴퓨터의 인증서 신뢰 저장소를 주기적으로 확인하는 것이 좋습니다. 도구. 이 도구를 사용하면 컴퓨터에 설치된 인증서 목록을 Microsoft 웹 사이트의 루트 인증서 목록과 비교할 수 있습니다(최신 인증서 authrootstl.cab가 있는 오프라인 파일을 다운로드할 수 있음).
내보내기/가져오기 옵션을 사용하여 Windows 컴퓨터 간에 루트 인증서 파일을 수동으로 전송할 수 있습니다.
- 모든 인증서를 클릭하고 모든 작업 -> 내보내기를 선택하여 .CER 파일로 내보낼 수 있습니다.
- 모든 작업 -> 가져오기 옵션을 사용하여 다른 컴퓨터에서 이 인증서를 가져올 수 있습니다.
Windows에서 자동 루트 인증서 업데이트를 비활성화/활성화하는 방법은 무엇입니까?
앞서 언급했듯이 Windows는 루트 인증서를 자동으로 업데이트합니다. GPO 또는 레지스트리를 통해 Windows에서 인증서 갱신을 활성화하거나 비활성화할 수 있습니다.
로컬 그룹 정책 편집기(gpedit.msc)를 열고 컴퓨터 구성 -> 관리 템플릿 -> 시스템 -> 인터넷 통신 관리 -> 인터넷 통신으로 이동합니다.
자동 루트 인증서 업데이트 끄기 이 섹션의 옵션을 사용하면 Windows Update 사이트를 통한 루트 인증서의 자동 업데이트를 비활성화할 수 있습니다. 기본적으로 이 정책은 구성되어 있지 않으며 Windows는 항상 루트 인증서를 자동으로 갱신하려고 합니다.
이 GPO 옵션이 구성되어 있지 않고 루트 인증서가 자동으로 갱신되지 않는 경우 레지스트리에서 이 설정이 수동으로 활성화되어 있는지 확인하십시오. PowerShell을 사용하여 레지스트리 매개변수의 값을 확인하십시오:
Get-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\SystemCertificates\AuthRoot' -Name DisableRootAutoUpdate
명령이 DisableRootAutoUpdate 값을 반환하는 경우 레지스트리 매개변수는 1입니다. , 그러면 컴퓨터에서 루트 인증서 업데이트가 비활성화됩니다. 활성화하려면 매개변수 값을 0으로 변경하십시오.
Certutil:Windows 업데이트에서 신뢰할 수 있는 루트 인증서 다운로드
Certutil.exe CLI 도구를 사용하여 인증서를 관리할 수 있습니다(Windows 10에 도입, Windows 7의 경우 별도 업데이트로 제공됨). Windows Update에서 루트 인증서의 최신 목록을 다운로드하고 SST 파일에 저장하는 데 사용할 수 있습니다.
Windows 10 또는 11을 실행하고 인터넷에 직접 액세스할 수 있는 컴퓨터에서 SST 파일을 생성하려면 관리자 권한 명령 프롬프트를 열고 다음 명령을 실행합니다.
certutil.exe -generateSSTFromWU C:\PS\roots.sst
Updated SST file. CertUtil: -generateSSTFromWU command completed successfully.
결과적으로 루트 인증서의 최신 목록이 포함된 SST 파일이 대상 디렉토리에 나타납니다. 두 번 클릭하여 엽니다. 이 파일은 신뢰할 수 있는 루트 인증서를 포함하는 컨테이너입니다.
보시다시피 익숙한 인증서 관리 스냅인이 열리고 여기에서 보유한 인증서를 내보낼 수 있습니다. 제 경우에는 인증서 목록에 358개의 항목이 있었습니다. 당연히 인증서를 내보내고 하나씩 설치하는 것은 합리적이지 않습니다.
도움말 .certutil -syncWithWU
명령을 사용하여 개별 인증서 파일을 생성할 수 있습니다. 이 방법으로 얻은 인증서는 GPO를 사용하여 Windows 장치에 배포할 수 있습니다. PowerShell 스크립트를 사용하여 SST 파일의 모든 인증서를 설치하고 컴퓨터의 신뢰할 수 있는 루트 인증서 목록에 추가할 수 있습니다.
$sstStore = ( Get-ChildItem -Path C:\ps\rootsupd\roots.sst )
$sstStore | Import-Certificate -CertStoreLocation Cert:\LocalMachine\Root
certmgr.msc 실행 스냅인을 만들고 모든 인증서가 신뢰할 수 있는 루트 인증 기관에 추가되었는지 확인합니다. . Windows 11의 제 예에서는 루트 인증서 수가 34개에서 438개로 증가했습니다.
설치 후 Windows의 깨끗한 복사본은 루트 저장소에 소수의 인증서만 포함합니다. 컴퓨터가 인터넷에 연결되어 있고 장치가 HTTPS 사이트에 액세스하는 경우 나머지 루트 인증서가 자동으로(요청 시) 설치되거나 신뢰 체인에 Microsoft CTL의 지문이 있는 SSL 인증서가 설치됩니다. 따라서 일반적으로 Microsoft가 신뢰하는 모든 인증서를 로컬 인증 저장소에 즉시 추가할 필요가 없습니다.
Windows의 인증서 신뢰 목록(STL)
인증서 신뢰 목록 (CTL )는 신뢰할 수 있는 당사자(이 경우 Microsoft에서)가 서명한 데이터(예:인증서 해시)의 목록입니다. Windows 클라이언트는 신뢰할 수 있는 모든 루트 CA의 해시를 저장하는 이 CTL을 Windows 업데이트에서 주기적으로 다운로드합니다. 이 CTL에는 인증서 자체가 포함되지 않고 해시와 속성(예:친숙한 이름)만 포함된다는 점을 이해해야 합니다. Windows 장치는 요청 시 인증서 신뢰 목록에서 신뢰할 수 있는 인증서를 다운로드할 수 있습니다.
CTL 파일을 수동으로 다운로드하여 설치할 수 있습니다. 이를 수행하려면 https://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/authrootstl.cab 파일을 다운로드하십시오(한 달에 두 번 업데이트됨). 아카이버(또는 Windows 탐색기)를 사용하여 authrootstl.cab의 콘텐츠 압축을 풉니다. 보관소. 여기에는 단일 authroot.stl이 포함됩니다. 파일.
Authroot.stl 파일은 인증서 신뢰 목록 형식의 신뢰할 수 있는 인증서 지문 목록이 있는 컨테이너입니다.
certutil 명령을 사용하여 이 CTL 파일을 신뢰할 수 있는 루트 인증 기관에 설치할 수 있습니다.
certutil -enterprise -f -v -AddStore "Root" "C:\PS\authroot.stl"
root "Trusted Root Certification Authorities" CTL 0 added to store. CertUtil: -addstore command completed successfully.
인증서 관리 콘솔(Trust Root)을 사용하여 인증서를 가져올 수도 있습니다. 인증 기관 -> 인증서 -> 모든 작업 -> 가져오기 ). 인증서 지문으로 STL 파일의 경로를 지정하십시오.
명령을 실행하면 신뢰할 수 있는 루트 인증 기관에 새 섹션 인증서 신뢰 목록이 나타납니다. 인증서 관리자 콘솔의 컨테이너(certmgr.msc
) ).
같은 방법으로 루트 인증서 프로그램에서 제거된 해지된(허용되지 않는) 인증서 목록을 다운로드하여 설치할 수 있습니다. 이를 수행하려면 disallowedcertstl.cab을 다운로드하세요. 파일(https://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/disallowedcertstl.cab)을 추출하고 다음 명령을 사용하여 신뢰할 수 없는 인증서 저장소에 추가합니다.
certutil -enterprise -f -v -AddStore disallowed "C:\PS\disallowedcert.stl"
격리된 환경에서 GPO를 통해 신뢰할 수 있는 루트 인증서 업데이트
인터넷에서 격리된 Active Directory 도메인에서 루트 인증서를 정기적으로 업데이트하는 작업이 있는 경우 그룹 정책을 사용하여 도메인에 가입된 컴퓨터의 로컬 인증서 저장소를 업데이트하기 위한 약간 더 복잡한 체계가 있습니다. 여러 가지 방법으로 연결이 끊긴 Windows 네트워크의 사용자 컴퓨터에서 루트 인증서 업데이트를 구성할 수 있습니다.
첫 번째 방법 루트 인증서가 있는 파일을 정기적으로 수동으로 다운로드하여 격리된 네트워크에 복사한다고 가정합니다. 다음과 같이 현재 Microsoft 루트 인증서가 있는 파일을 다운로드할 수 있습니다.
certutil.exe –generateSSTFromWU roots.sst
그런 다음 이 파일의 루트 인증서를 SCCM 또는 GPO의 PowerShell 시작 스크립트를 통해 배포할 수 있습니다.
$sstStore = (Get-ChildItem -Path \\fr-dc01\SYSVOL\woshub.com\rootcert\roots.sst )
$sstStore | Import-Certificate -CertStoreLocation Cert:\LocalMachine\Root
두 번째 방법 다음 명령을 사용하여 실제 Microsoft 루트 인증서를 다운로드하는 것입니다.
Certutil -syncWithWU -f \\fr-dc01\SYSVOL\woshub.com\rootcert\
지정된 공유 네트워크 폴더(authrootstl.cab, disallowedcertstl.cab, disallowedcert.sst, thumbprint.crt 포함)에 여러 루트 인증서 파일(CRT 파일 형식)이 나타납니다.
그런 다음 그룹 정책 기본 설정을 사용하여 레지스트리 매개변수 RootDirURL 값을 변경합니다. HKLM\Software\Microsoft\SystemCertificates\AuthRoot\AutoUpdate 아래 . 이 매개변수는 Windows 컴퓨터가 새 루트 인증서를 받을 공유 네트워크 폴더를 가리켜야 합니다. 도메인 GPMC.msc 콘솔을 실행하고 새 GPO를 만들고 정책 편집 모드로 전환한 다음 컴퓨터 구성 -> 기본 설정 -> Windows 설정 -> 레지스트리 섹션을 확장합니다. . 다음 설정으로 새 레지스트리 속성을 만듭니다.
- 액션 :업데이트
- 하이브 :HKLM
- 주요 경로 :Software\Microsoft\SystemCertificates\AuthRoot\AutoUpdate
- 값 이름 :RootDirURL
- 유형 :REG_SZ
- 가치 데이터 :file://\\fr-dc01\SYSVOL\woshub.com\rootcert\
컴퓨터의 OU에 이 정책을 연결하고 클라이언트에서 GPO 설정을 업데이트한 후 certstore에서 새 루트 인증서를 확인해야 합니다.
GPO 매개변수 자동 루트 인증서 업데이트 끄기 컴퓨터 구성 -> 관리 템플릿 -> 시스템 -> 인터넷 통신 관리 -> 인터넷 통신 설정을 비활성화하거나 구성하지 않아야 합니다.Windows 7에서 신뢰할 수 있는 루트 인증서를 업데이트하는 방법
현재 Windows 7이 지원 종료 단계에 있음에도 불구하고 많은 사용자와 회사에서 여전히 Windows 7을 사용하고 있습니다.
깨끗한 Windows 7 이미지를 설치한 후 새 인증서로 서명된 많은 최신 프로그램 및 도구가 이 이미지에서 작동하지 않는다는 것을 알 수 있습니다. 특히 루트 인증서를 업데이트하지 않으면 Windows 7 SP1 x64에 .Net Framework 4.8 또는 Microsoft Visual Studio(vs_Community.exe)를 설치할 수 없다는 불만이 있었습니다.
The installer manifest failed signature validation.
또는
NET Framework has not been installed because a certificate chain could not be built to a trusted root authority.
Windows 7에서 루트 인증서를 업데이트하려면 먼저 MSU 업데이트 KB2813430을 다운로드하여 설치해야 합니다. (https://support.microsoft.com/en-us/topic/an-update-is-available-that-enables-administrators-to-update-trusted-and-disallowed-ctls-in-disconnected-environments-in -windows-0c51c702-fdcc-f6be-7089-4585fad729d6)
그런 다음 certutil을 사용하여 루트 인증서가 있는 SST 파일을 생성할 수 있습니다(현재 또는 다른 컴퓨터에서).
certutil.exe -generateSSTFromWU c:\ps\roots.sst
이제 인증서를 신뢰할 수 있는 인증서로 가져올 수 있습니다.
MMC 실행 -> 스냅인 추가 -> 인증서 -> 컴퓨터 계정> 로컬 컴퓨터. 신뢰할 수 있는 루트 인증 기관, 모든 작업 -> 가져오기를 마우스 오른쪽 버튼으로 클릭하고 SST 파일을 찾습니다(파일 유형에서 Microsoft Serialized Certificate Store — *.sst 선택). ) -> 열기 -> 모든 인증서를 다음 저장소에 저장 -> 신뢰할 수 있는 루트 인증 기관.
Rootsupd.exe 도구를 사용하여 Windows XP에서 루트 인증서 업데이트
Windows XP에서 rootsupd.exe 유틸리티는 컴퓨터의 루트 인증서를 업데이트하는 데 사용되었습니다. 루트 및 해지된 인증서 목록은 정기적으로 업데이트되었습니다. 이 도구는 별도의 업데이트 KB931125로 배포되었습니다. (루트 인증서 업데이트). 지금 사용할 수 있는지 봅시다.
- rootsupd.exe 다운로드 다음 링크를 사용하는 유틸리티
https://download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe. 현재(2021년 1월) 링크가 작동하지 않아 Microsoft는 해당 링크를 대중에서 제거하기로 결정했습니다. 오늘 Kaspersky 웹사이트(https://media.kaspersky.com/utilities/CorporateUtilities/rootsupd.zip;
)에서 rootupd.exe를 다운로드할 수 있습니다. - Windows 루트 인증서를 설치하려면 rootsupd.exe를 실행하기만 하면 됩니다. 파일. 그러나 우리는 그 내용을 더 신중하게 검토하려고 노력할 것입니다. 다음 명령을 사용하여 실행 파일에서 인증서를 추출합니다.
rootsupd.exe /c /t: C:\PS\rootsupd
- 인증서는 authroots.sst, delroot.sst 등과 같은 SST 파일에 저장됩니다. 인증서를 제거하거나 설치하려면 다음 명령을 사용할 수 있습니다.
updroots.exe authroots.sst
updroots.exe -d delroots.sst
그러나 , 보시다시피 이 인증서 파일은 2013년 4월 4일(Windows XP 공식 지원 종료 약 1년 전)에 생성되었습니다. 따라서 그 이후로 도구가 업데이트되지 않았으며 최신 인증서를 설치하는 데 사용할 수 없습니다.
그러나 Windows 10/11에서 cerutil 도구를 사용하여 root.sst를 다운로드하고 Windows XP에서 해당 파일을 복사하고 updroots.exe를 사용하여 인증서를 설치할 수 있습니다.
updroots.exe c:\temp\roots.sst
이 기사에서는 인터넷(연결이 끊긴 환경)과 격리된 Windows 네트워크 컴퓨터에서 신뢰할 수 있는 루트 인증서를 업데이트하는 여러 방법을 살펴보았습니다.