목록으로

Programming Notes

App-V 서버를 HTTPS로 구성하는 방법

1. 서론 지난 8개월 동안 App-V 환경에서 게시 서버와 관리 서버 두 서버 간에 HTTPS를 사용한 보안 연결을 구현하는 방법에 대한 문의를 여러 지원 사례를 통해 고객들로부터 받았습니다. 고객들은 Windows Server 2019를 사용하고 있었고 최신 버전의...

1. 서론

지난 8개월 동안 App-V 환경에서 게시 서버와 관리 서버 두 서버 간에 HTTPS를 사용한 보안 연결을 구현하는 방법에 대한 문의를 여러 지원 사례를 통해 고객들로부터 받았습니다. 고객들은 Windows Server 2019를 사용하고 있었고 최신 버전의 App-V Server 5.1.136.1*을 사용하고 있었습니다. 이것이 바로 2024년 11월 M.A.D. Days 동안 커뮤니티와 경험을 공유한 이유이며, 이제 이 블로그를 통해 이러한 연결을 설정하는 절차를 공유하고자 합니다.

2024년 함부르크 M.A.D. Days에서는 Server 2019에서 TLS 1.2를 사용하여 HTTPS를 설정할 때 발생하는 실패 사례를 시연하고 논의했습니다. 이 블로그에서는 App-V 서버 간에 HTTPS를 직접 설정하는 방법을 간략한 단계로 보여드리고자 합니다. 우리는 Windows Server 2022를 사용하고 있으며, 이는 HTTPS 처리에 몇 가지 장점이 있습니다. 예를 들어, 사용되는 TLS 버전에 대해 고민할 필요가 없습니다. 자동으로 가장 높은 TLS 버전을 사용하거나 사용 가능한 TLS 1.2 이상 프로토콜을 사용하도록 설정할 수 있습니다.

2. 기본 통신 클라이언트 및 서버 (동기화-게시)

2.1. 클라이언트 프로세스

클라이언트에서 게시 서비스에 대한 HTTP 연결에서 HTTPS 연결로 쉽게 전환할 수 있습니다. 준비 단계로 서버에 바인딩을 설정하고 클라이언트를 위한 SSL 인증서를 생성해야 합니다.

Microsoft PKI 환경에서는 CA를 통해 인증서를 요청할 수 있습니다.

![인증서 요청 화면]

등록 후 서버에서 HTTPS URL에 접근하여 테스트할 수 있습니다.

![HTTPS URL 접근 테스트]

2.2. 클라이언트에서 동기화 게시를 위해 HTTPS 사용

우리 랩 환경에서는 4개의 게시 연결을 설정했습니다. 첫 번째 게시 서버에 대해 HTTP 및 HTTPS 연결, 그리고 두 번째 서버에 대해서도 동일하게 설정했습니다. 전체적으로 클라이언트에서 게시할 수 있는 4가지 가능한 연결이 있습니다. 다음 스크린샷은 GPO를 보여줍니다.

![GPO 설정]

HTTPS를 사용하려면 관리 서버의 IIS에 바인딩을 구성해야 합니다.

원하는 포트를 설정하고 방화벽이 해당 포트를 차단하지 않는지 확인하십시오.

![IIS 바인딩 설정]

이벤트 뷰어에서 게시 새로고침이 성공했음을 확인할 수 있습니다.

![이벤트 뷰어 - 게시 새로고침 성공]

3. 서버 간 HTTPS를 위한 게시 서버 준비 및 활성화

3.1. 기존 환경

관리 서비스 및 게시 서비스가 있는 기본 App-V 서버(랩 환경의 호스트 이름은 HAMWS2022S2)의 기본 설정에서 다음 포트가 구성되어 있습니다.

관리 HTTP: 60000 HTTPS: 8000

![관리 서비스 포트 설정]

게시 HTTP: 60001 HTTPS: 8001

![게시 서비스 포트 설정]

3.2 표준 설정

기본 서버에서는 동일한 시스템의 관리 데이터베이스에 연결하기 위해 HTTPS가 구성되지 않습니다. 연결은 동일한 시스템 내에서 이루어지며 "http://localhost:[Port]/"를 사용합니다.

![로컬호스트 연결 설정]

3.3 작동 환경 확인

변경하기 전에 두 번째 게시 서버(HAMWS2022S3)에서 기본 서버(HAMWS2022S2)로의 HTTP 통신이 올바르게 작동하는지 확인해야 합니다.

![HTTP 통신 확인]

이제 기본 서버에서 콘솔을 확인하면 두 서버가 동기화되고 있음을 알 수 있습니다(마지막 게시 시간 확인).

![콘솔에서 동기화 확인]

추가적으로 두 메타데이터 파일의 시퀀스 ID가 동일한지 확인해야 합니다.

이를 위해 두 서버에서 파일을 비교해야 합니다.

경로는 C:\ProgramData\Microsoft\AppV\Server\Publishing 입니다.

![메타데이터 파일 경로 및 내용 확인]

4. 기본 App-V 서버 HAMWS2022S2 준비

4.1 바인딩

위에서 언급했듯이 HTTPS에 대해 바인딩을 설정했습니다. 포트는 관리에 8000, 게시에 8001입니다.

4.2 인증서

SSL 인증서를 생성하고 구성된 포트의 게시 바인딩에서 HTTPS 설정에 대해 해당 인증서를 선택합니다.

![게시 바인딩 HTTPS 인증서 설정]

4.3 레지스트리 키

Server 2022에서는 TLS 1.2 사용을 강제하기 위해 추가적으로 다음 키를 설정합니다.

![TLS 1.2 강제 레지스트리 키 설정]

다음 문서를 기반으로 레지스트리 키의 세부 정보와 설정 방법을 찾을 수 있습니다.

링크: Microsoft Entra Connect에 대한 TLS 1.2 적용

4.4 HTTPS로 변경

HTTPS를 통해 관리 서버에 연결하기 위한 두 번째 서버의 레지스트리 키는 다음과 같습니다.

![두 번째 서버 레지스트리 키 설정]

4.5 재시작 및 테스트

이제 콘솔이나 동일한 시퀀스 ID를 통해 위에서 설명한 대로 두 서버 간 연결이 HTTPS로 이루어지는 것을 확인할 수 있습니다. 추가적으로 Wireshark로 트래픽을 캡처하여 TLS 1.2 트래픽을 확인할 수 있습니다.

![Wireshark TLS 1.2 트래픽 확인]

두 서버 간의 핸드셰이크가 이루어지고 데이터가 교환되었음을 확인할 수 있습니다.

읽어주셔서 감사합니다. Peter Rüttinger