Exchange 2016에서 인증서 기반 인증 구성

Exchange의 CBA(인증서 기반 인증)를 사용하면 사용자 이름과 암호를 입력하는 대신 웹용 Outlook(이전의 Outlook Web App) 및 Exchange ActiveSync 클라이언트를 클라이언트 인증서로 인증할 수 있습니다.

Exchange를 구성하기 전에 각 사용자에게 클라이언트 인증서를 발급해야 합니다. 관련된 인증서 수가 매우 많기 때문에 자동화된 내부 PKI(공개 키 인프라)를 사용하여 클라이언트 인증서를 발급하고 관리해야 합니다. 자동화된 내부 PKI의 예로는 AD CS(Active Directory Certificate Services)가 있습니다. AD CS에 대한 자세한 내용은 Active Directory 인증서 서비스 개요를 참조하세요. 인증서 요구 사항에 대한 자세한 내용은 다음과 같습니다.

  • 클라이언트 인증을 위해 클라이언트 인증서를 발급해야 합니다(예: AD CS의 기본 사용자 인증서 템플릿).

  • 클라이언트 인증서에는 사용자의 UPN(사용자 계정 이름)이 포함되어야 합니다(인증서의 주체 또는 주체 대체 이름 필드).

  • 클라이언트 인증서는 Active Directory의 사용자 계정과 연결되어야 합니다.

  • 웹용 Outlook 및 ActiveSync에 대한 액세스와 관련된 모든 서버 및 디바이스(프록시 서버 및 클라이언트 디바이스 포함)는 클라이언트 인증서(인증 기관의 루트 인증서 및 인증서 발급에 사용된 중간 CA)에 대한 전체 신뢰 체인을 신뢰해야 합니다.

웹용 Outlook CBA의 경우 로컬 컴퓨터, 디바이스 또는 스마트 카드에 클라이언트 인증서를 설치해야 합니다. ActiveSync의 CBA의 경우 로컬 디바이스에 클라이언트 인증서를 설치해야 합니다. Intune 같은 MDM(모바일 디바이스 관리) 솔루션을 사용하여 디바이스에 인증서 설치를 자동화할 수 있습니다. Intune 대한 자세한 내용은 Microsoft Intune 개요를 참조하세요.

시작하기 전에 알아야 할 사항은 무엇인가요?

  • 이 작업을 완료하는 예상 시간: 20분

  • 이러한 절차를 수행하려면 먼저 사용 권한을 할당받아야 합니다. 필요한 권한을 보려면 클라이언트 및 모바일 디바이스 권한 항목의 웹용 Outlook 권한 섹션에서 "IIS 관리자" 항목을 참조하세요.

  • 온-프레미스 Exchange 조직에서 Exchange 관리 셸을 여는 방법을 확인하려면 Exchange 관리 셸 열기를 참조하세요.

  • 이 항목의 절차에 적용할 수 있는 바로 가기 키에 대한 자세한 내용은 Exchange 관리 센터의 바로 가기 키을 참조하세요.

문제가 있습니까? Exchange Server, Exchange Online 또는 Exchange Online Protection. 무슨 작업을 하고 싶으십니까?

1단계: Exchange 관리 셸을 사용하여 모든 Exchange 서버에 클라이언트 인증서 매핑 인증 기능 설치

동일한 네임스페이스와 URL을 공유하는 모든 Exchange 서버는 동일한 인증 방법을 사용해야 합니다. 모든 Exchange 서버에 클라이언트 인증서 매핑 인증 기능을 설치해야 합니다.

Exchange 관리 셸에서 다음 명령을 실행합니다.

Install-WindowsFeature Web-Client-Auth

자세한 구문 및 매개 변수 정보는 Install-WindowsFeature를 참조하세요.

2단계: IIS 관리자를 사용하여 Exchange 서버에 Active Directory 클라이언트 인증서 인증 사용

  1. Exchange 서버에서 IIS 관리자를 엽니다. Windows Server 2012 이상에서 이 작업을 수행하는 쉬운 방법은 Windows 키 + Q를 누르고, inetmgr을 입력하고, 결과에서 IIS(인터넷 정보 서비스) 관리자를 선택하는 것입니다.

  2. 서버를 선택하고 페이지 아래쪽에서 기능 보기 가 선택되어 있는지 확인합니다.

  3. IIS 섹션에서 인증을 두 번 클릭합니다.

    IIS에서 서버를 선택한 다음 인증을 선택합니다.

  4. 열리는 인증 페이지에서 목록에서 Active Directory 클라이언트 인증서 인증 을 선택하고 작업 창에서 사용을 클릭합니다.

    IIS에서 서버의 인증 페이지입니다.

    Active Directory 클라이언트 인증서 매핑을 사용하려면 SSL을 사용하도록 설정해야 한다는 경고가 표시됩니다.

3단계: IIS 관리자를 사용하여 클라이언트 인증서를 요구하도록 웹용 Outlook, Exchange 관리 센터 및 ActiveSync 가상 디렉터리를 구성합니다.

참고: 클라이언트 인증서를 수락하는 것은(CBA 및 일반 사용자 이름 및 암호 인증을 모두 지원하기 위해) 모든 유형의 ActiveSync 디바이스에서 일관되게 작동하지 않기 때문에 클라이언트 인증서를 요구해야 합니다.

  1. IIS 관리자에서 서버를 확장하고 사이트를 확장한 다음 기본 웹 사이트를 확장합니다.

  2. owa 가상 디렉터리를 선택하고 페이지 아래쪽에서 기능 보기가 선택되어 있는지 확인합니다.

  3. IIS 섹션에서 SSL 설정을 두 번 클릭합니다.

  4. SSL 설정 페이지에서 SSL 필요가 선택되어 있는지 확인하고 클라이언트 인증서필요를 선택합니다.

  5. 작업 창에서 적용을 클릭합니다.

    IIS의 가상 디렉터리의 SSL 설정에서 클라이언트 인증서 아래에서 필요를 선택합니다.

  6. Microsoft-Server-ActiveSync 가상 디렉터리를 선택합니다.

  7. IIS 섹션에서 SSL 설정을 두 번 클릭합니다.

  8. SSL 설정 페이지에서 SSL 필요가 선택되어 있는지 확인하고 클라이언트 인증서필요를 선택합니다.

  9. 작업 창에서 적용을 클릭합니다.

참고: 명령줄에서 이러한 절차를 수행할 수 있지만 단계는 필수 레지스트리 키를 구성하지 않을 수 있습니다. IIS 관리자에서 이전 프로시저를 사용하거나(레지스트리 키를 올바르게 설정) 명령줄에서 프로시저를 수행한 후 레지스트리 키가 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\SslBindingInfo\0.0.0.0:4431 으로 설정되어 있는지 확인해야 합니다.

명령줄에서 이러한 절차를 수행하려면 Exchange 서버에서 관리자 권한 명령 프롬프트( 관리자 권한으로 실행을 선택하여 연 명령 프롬프트 창)를 열고 다음 명령을 실행합니다.

%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/owa/" -section:system.webserver/security/access /sslFlags:"Ssl, SslRequireCert" /commit:apphost
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/ecp/" -section:system.webserver/security/access /sslFlags:"Ssl, SslRequireCert" /commit:apphost
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/Microsoft-Server-ActiveSync/" -section:system.webserver/security/access /sslFlags:"Ssl, SslRequireCert" /commit:apphost

4단계: Exchange 관리 셸을 사용하여 웹용 Outlook, Exchange 관리 센터 및 ActiveSync 가상 디렉터리에서 인증 다른 인증 방법을 사용하지 않도록 설정합니다.

인증을 위해 클라이언트 인증서가 필요하면 웹용 Outlook, EAC(Exchange 관리 센터) 및 ActiveSync 가상 디렉터리에서 다른 모든 인증 방법을 사용하지 않도록 설정해야 합니다. 기본적으로 기본 인증 및 Forms 인증만 사용하도록 설정됩니다.

  1. Exchange 관리 셸<에서 ServerName>을 Exchange 서버 이름으로 바꾸고 다음 명령을 실행하여 웹용 Outlook 가상 디렉터리에서 다른 모든 인증 방법을 사용하지 않도록 설정합니다.

    Set-OwaVirtualDirectory "<ServerName>\owa (Default Web Site)" -BasicAuthentication $false -WindowsAuthentication $false -DigestAuthentication $false -FormsAuthentication $false -AdfsAuthentication $false -OAuthAuthentication $false
    

    구문과 매개 변수에 대한 자세한 내용은 Set-OwaVirtualDirectory를 참조하십시오.

  2. Exchange 관리 셸에서 ServerName>을 Exchange 서버 이름으로 바꾸고< 다음 명령을 실행하여 EAC 가상 디렉터리에서 다른 모든 인증 방법을 사용하지 않도록 설정합니다.

    Set-EcpVirtualDirectory "<ServerName>\ecp (Default Web Site)" -BasicAuthentication $false -WindowsAuthentication $false -DigestAuthentication $false -FormsAuthentication $false -AdfsAuthentication $false
    

    구문과 매개 변수에 대한 자세한 내용은 Set-EcpVirtualDirectory를 참조하십시오.

  3. <ServerName>을 Exchange 서버 이름으로 바꾸고 다음 명령을 실행하여 ActiveSync 가상 디렉터리에서 다른 모든 인증 방법을 사용하지 않도록 설정합니다.

    Set-ActiveSyncVirtualDirectory "<ServerName>\Microsoft-Server-ActiveSync (Default Web Site)" -BasicAuthEnabled $false -WindowsAuthEnabled $false
    

    자세한 구문 및 매개 변수 정보는 Set-ActiveSyncVirtualDirectory를 참조하세요.

5단계: IIS 관리자를 사용하여 웹용 Outlook, Exchange 관리 센터 및 ActiveSync 가상 디렉터리에 대한 클라이언트 인증서 매핑을 사용하도록 설정

중요

이 단계를 수행한 후 Set-ActiveSyncVirtualDirectory cmdlet을 실행하면 ActiveSync에 대한 클라이언트 인증서 매핑이 비활성화될 수 있습니다.

  1. IIS 관리자에서 서버를 확장하고 사이트를 확장한 다음 기본 웹 사이트를 확장합니다.

  2. owa 가상 디렉터리를 선택하고 페이지 아래쪽에서 기능 보기가 선택되어 있는지 확인합니다.

  3. 관리 섹션에서 구성 편집기를 두 번 클릭합니다.

  4. 구성 편집기 페이지에서 섹션의 드롭다운을 클릭하고 system.webServer>보안>인증>클라이언트CertificateMappingAuthentication으로 이동합니다.

    owa 가상 디렉터리에 대한 IIS의 Configuration Manager clientCertificateMappingAuthentication을 선택합니다.

  5. 활성화된 값을 True로 설정하고 작업 창에서 적용을 클릭합니다.

    owa 가상 디렉터리에 대해 IIS의 구성 편집기에서 clientCertificateMappingAuthentication 값을 사용하도록 설정합니다.

  6. ecp 가상 디렉터리를 선택합니다.

  7. 관리 섹션에서 구성 편집기를 두 번 클릭합니다.

  8. 구성 편집기 페이지에서 섹션의 드롭다운을 클릭하고 system.webServer>보안>인증>클라이언트CertificateMappingAuthentication으로 이동합니다.

  9. 활성화된 값을 True로 설정하고 작업 창에서 적용을 클릭합니다.

  10. Microsoft-Server-ActiveSync 가상 디렉터리를 선택합니다.

  11. 관리 섹션에서 구성 편집기를 두 번 클릭합니다.

  12. 구성 편집기 페이지에서 섹션의 드롭다운을 클릭하고 system.webServer>보안>인증>클라이언트CertificateMappingAuthentication으로 이동합니다.

  13. 활성화된 값을 True로 설정하고 작업 창에서 적용을 클릭합니다.

참고: 명령줄에서 이러한 절차를 수행하려면 Exchange 서버에서 관리자 권한 명령 프롬프트를 열고 다음 명령을 실행합니다.

%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/owa/" -section:system.webserver/security/authentication/clientCertificateMappingAuthentication /enabled:"True" /commit:apphost
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/ecp/" -section:system.webserver/security/authentication/clientCertificateMappingAuthentication /enabled:"True" /commit:apphost
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/Microsoft-Server-ActiveSync/" -section:system.webserver/security/authentication/clientCertificateMappingAuthentication /enabled:"True" /commit:apphost

6단계(선택 사항): Active Directory의 Enterprise NTAuth 저장소에 타사 인증 기관의 루트 인증서 추가

AD CS를 사용하여 클라이언트 인증서를 발급하지 않는 경우에만 이 단계를 수행해야 합니다. 이 설정은 CA(인증 기관)가 Active Directory 인증을 위해 클라이언트 인증서를 발급하도록 신뢰할 수 있음을 나타냅니다.

  1. CA의 루트 인증서를 Base-64로 인코딩된 또는 DER 이진 인코딩 X.509 .cer 파일로 내보냅니다. 이 예제에서는 C:\Data\CARoot.cer을 사용합니다.

  2. 도메인 구성원 서버(예: 도메인 컨트롤러 또는 Exchange 서버)에서 관리자 권한 명령 프롬프트를 열고 다음 명령을 실행합니다.

    %windir%\system32\certutil.exe -enterprise -addstore NTAuth "C:\Data\CARoot.cer"
    

    이 단계에서는 Enterprise Admins 그룹의 멤버 자격이 필요합니다.

7단계(선택 사항): IIS 관리자를 사용하여 웹용 Outlook 및 ActiveSync 가상 디렉터리에 대한 UploadReadAheadSize 값을 늘립니다.

클라이언트가 오류를 수신하는 경우 요청 헤더를 허용하려면 IIS 메타베이스에서 uploadReadAheadSize 값을 늘려야 할 수 있습니다.

  1. IIS 관리자에서 서버를 확장하고 사이트를 확장한 다음 기본 웹 사이트를 확장합니다.

  2. owa 가상 디렉터리를 선택하고 페이지 아래쪽에서 기능 보기가 선택되어 있는지 확인합니다.

  3. 관리 섹션에서 구성 편집기를 두 번 클릭합니다.

  4. 구성 편집기 페이지에서 섹션의 드롭다운을 클릭하고 systemwebServer>serverRuntime으로 이동합니다.

    owa 가상 디렉터리에 대해 IIS의 구성 편집기에서 serverRuntime을 선택합니다.

  5. uploadReadAheadSize 값을 49152로 설정하고 작업 창에서 적용을 클릭합니다.

    owa 가상 디렉터리에 대한 IIS의 구성 편집기에서 uploadReadAheadSize 값을 변경합니다.

  6. ecp 가상 디렉터리를 선택합니다.

  7. 관리 섹션에서 구성 편집기를 두 번 클릭합니다.

  8. 구성 편집기 페이지에서 섹션의 드롭다운을 클릭하고 systemwebServer>serverRuntime으로 이동합니다.

  9. uploadReadAheadSize 값을 49152로 설정하고 작업 창에서 적용을 클릭합니다.

  10. Microsoft-Server-ActiveSync 가상 디렉터리를 선택합니다.

  11. 관리 섹션에서 구성 편집기를 두 번 클릭합니다.

  12. 구성 편집기 페이지에서 섹션의 드롭다운을 클릭하고 systemwebServer>serverRuntime으로 이동합니다.

  13. uploadReadAheadSize 값을 49152로 설정하고 작업 창에서 적용을 클릭합니다.

참고: 명령줄에서 이러한 절차를 수행하려면 Exchange 서버에서 관리자 권한 명령 프롬프트를 열고 다음 명령을 실행합니다.

%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/owa/" -section:system.webserver/serverRuntime /uploadReadAheadSize:49152
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/ecp/" -section:system.webserver/serverRuntime /uploadReadAheadSize:49152
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/Microsoft-Server-ActiveSync/" -section:system.webserver/serverRuntime /uploadReadAheadSize:49152